1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Tìm hiểu thêm.

Trình soạn thảo vi

Thảo luận trong 'Linux - Unix' bắt đầu bởi hungpt, 13/5/09. Trả lời: 1 Xem: 2,759.

Chia sẻ trang này

Thị Trường Xe Máy

  1. hungpt

    hungpt New Member
    New Member

    Tham gia ngày:
    13/5/09
    Bài viết:
    31
    Đã được thích:
    0
    Linux có nhiều chương trình cho phép soạn thảo văn bản như: [FONT=&quot]vi[/FONT], [FONT=&quot]emacs[/FONT], [FONT=&quot]joe[/FONT], [FONT=&quot]pico[/FONT], [FONT=&quot]ed[/FONT], [FONT=&quot]nano[/FONT], … Chương trình soạn thảo văn bản [FONT=&quot]vi[/FONT], theo chuẩn POSIX, có mặt hầu hết trên các hệ điều hành Linux.

    I. Khởi động [FONT=&quot]vi[/FONT] – Các chế độ trong [FONT=&quot]vi[/FONT]
    Khởi động [FONT=&quot]vi[/FONT], thường với tên tập tin cần soạn thảo:
    [FONT=&quot]vi filename[/FONT]
    [FONT=&quot]filename[/FONT] là tập tin mới hoặc tập tin có sẵn.
    Có thể mở nhiều tập tin cùng lúc: [FONT=&quot]vi filename1 filename2[/FONT] tập tin đầu tiên sẽ trong cửa sổ soạn thảo, chuyển sang tập tin sau bằng lệnh [FONT=&quot]:next[/FONT]và chuyển sang tập tin trước bằng lệnh [FONT=&quot]:prev[/FONT].
    Khi bắt đầu vào [FONT=&quot]vi[/FONT], chương trình được đặt ở chế độ lệnh (command mode), nghĩa là [FONT=&quot]vi[/FONT] sẽ xử lý mọi động tác gõ phím như các lệnh soạn thảo, mà không xem là văn bản nhập vào tập tin. Để thêm văn bản vào tập tin, bạn phải chuyển [FONT=&quot]vi[/FONT] sang chế độ chèn (insert mode) bằng một trong các lệnh sau:
    [FONT=&quot]
    [/FONT]
    Nối thêm vào sau con trỏ [FONT=&quot]a[/FONT]
    [FONT=&quot]
    [/FONT]
    Nối thêm vào phần cuối dòng [FONT=&quot]A[/FONT]
    [FONT=&quot]
    [/FONT]
    Bắt đầu thay đổi [FONT=&quot]c[/FONT]
    [FONT=&quot]
    [/FONT]
    Xóa từ vị trí con trỏ đến cuối dòng hiện hành [FONT=&quot]C[/FONT]
    [FONT=&quot]
    [/FONT]
    Chèn trước con trỏ [FONT=&quot]i[/FONT]
    [FONT=&quot]
    [/FONT]
    Chèn ở đầu dòng [FONT=&quot]I[/FONT]
    [FONT=&quot]
    [/FONT]
    Chèn một dòng dưới dòng hiện hành [FONT=&quot]o[/FONT]
    [FONT=&quot]
    [/FONT]
    Chèn một dòng trên dòng hiện hành [FONT=&quot]O[/FONT]
    Không lệnh nào trong chế độ chèn này xuất hiện trên màn hình, nhưng bất cứ phím gì gõ kế tiếp đều là văn bản nhập.
    Nói chung chỉ dùng chế độ chèn khi thêm văn bản vào tập tin, và chế độ lệnh cho mọi việc khác (di chuyển quanh tập tin, xóa văn bản, …). Cần xác định ta đang ở chế độ nào: chế độ chèn[FONT=&quot]-- INSERT --[/FONT] ở đáy màn hình, nhấn phím Esc để vào chế độ lệnh khi cần.
    Các lệnh trong chế độ lệnh không hiển thị khi nhập, ngoại trừ một số lệnh ở chế độ dòng lệnh, hiển thị lệnh nhập ở đáy màn hình.

    II. Ghi tên tập tin rồi thoát khỏi [FONT=&quot]vi[/FONT]
    Mọi soạn thảo trong [FONT=&quot]vi[/FONT] tuy hiển thị trên terminal nhưng chỉ nằm trên bộ đệm. Cần phải ghi văn bản từ bộ đệm vào tập tin để lưu trữ lại. Trở về chế độ lệnh bằng phím Esc rồi dùng các lệnh sau:
    [FONT=&quot]
    [/FONT]
    Ghi văn bản từ bộ đệm xuống tập tin chỉ định khi khởi động [FONT=&quot]vi[/FONT] [FONT=&quot]:w[/FONT]
    [FONT=&quot]
    [/FONT]
    Ghi đè không cần cảnh báo [FONT=&quot]:w![/FONT]
    [FONT=&quot]
    [/FONT]
    Ghi văn bản xuống tập tin [FONT=&quot]filename[/FONT] [FONT=&quot]:w filename[/FONT]
    [FONT=&quot]
    [/FONT]
    Thoát khỏi [FONT=&quot]vi[/FONT] [FONT=&quot]:q[/FONT]
    [FONT=&quot]
    [/FONT]
    Kết hợp ghi văn bản xuống tập tin và thoát khỏi [FONT=&quot]vi[/FONT] [FONT=&quot]:wq[/FONT]
    [FONT=&quot]
    [/FONT]
    Thoát khỏi [FONT=&quot]vi[/FONT] mà không có bất kỳ sửa đổi nào [FONT=&quot]:q![/FONT]

    III. Di chuyển con trỏ
    Khi soạn thảo tập tin, thường phải dời con trỏ chạy quanh tập tin. Dùng các phím mũi tên để di chuyển, Cũng có thể dùng các phím sau để thực hiện trong chế độ lệnh.

    Di chuyển theo hướng mũi tên (chế độ chèn) [FONT=&quot][/FONT]
    [FONT=&quot]
    [/FONT]
    Di chuyển lần lượt sang trái (h), xuống dưới (j) , lên trên (k), bên phải (l) [FONT=&quot]h,j,k,l[/FONT]
    [FONT=&quot]
    [/FONT]
    Về trước về sau theo từng từ [FONT=&quot]w,W,b,B:[/FONT]
    [FONT=&quot]
    [/FONT]
    Đầu câu hiện thời hay câu tiếp theo [FONT=&quot]),([/FONT]
    [FONT=&quot]
    [/FONT]
    Đầu đoạn hiện thời hay đoạn tiếp theo [FONT=&quot]},{[/FONT]
    [FONT=&quot]
    [/FONT]
    Về đầu hoặc cuối dòng, có thể dùng phím Home hoặc End [FONT=&quot]0, $[/FONT]

    + Di chuyển theo trang màn hình

    [FONT=&quot]
    [/FONT]
    Cuộn lên trước một trang màn hình [FONT=&quot][/FONT][FONT=&quot]Ctrl F [/FONT]
    [FONT=&quot]
    [/FONT]
    Cuộn về sau một trang màn hình [FONT=&quot]Ctrl B [/FONT]
    [FONT=&quot]
    [/FONT]
    Cuộn lên trước 1/2 trang màn hình [FONT=&quot]Ctrl D [/FONT]
    [FONT=&quot]
    [/FONT]
    Cuộn về sau 1/2 trang màn hình [FONT=&quot][/FONT][FONT=&quot]Ctrl U[/FONT]
    [FONT=&quot]
    [/FONT]
    Hiện thêm một dòng cuối màn hình [FONT=&quot]Ctrl E[/FONT]
    [FONT=&quot]
    [/FONT]
    Hiện thêm một dòng đỉnh màn hình [FONT=&quot]Ctrl Y[/FONT]
    [FONT=&quot]
    [/FONT]
    [FONT=&quot][/FONT]
    [FONT=&quot]n[/FONT] dòng sau dòng đầu tiên nH
    [FONT=&quot]
    [/FONT]
    [FONT=&quot][/FONT]
    [FONT=&quot]n[/FONT] dòng trước dòng cuối cùng nL

    + Nhảy khắp tập tin, thực hiện trong chế độ lệnh, không hiển thị ra màn hình
    [FONT=&quot]
    [/FONT]
    [FONT=&quot][/FONT]
    Đến (go) ngay dòng thứ [FONT=&quot]n[/FONT] nG
    [FONT=&quot]
    [/FONT]
    Nhảy đến cuối văn bản G
     
    #1 hungpt, 13/5/09
    Last edited by a moderator: 13/5/09
    Tags: Không có
  2. hungpt

    hungpt New Member
    New Member

    Tham gia ngày:
    13/5/09
    Bài viết:
    31
    Đã được thích:
    0
    [FONT=&quot]n[/FONT][FONT=&quot]gg[/FONT]
    Nhảy đến dòng thứ [FONT=&quot]n[/FONT], mặc định là dòng đầu tiên
    [FONT=&quot]n[/FONT][FONT=&quot]+ [/FONT]
    Nhảy tới [FONT=&quot]n[/FONT] dòng
    [FONT=&quot]n[/FONT][FONT=&quot]-[/FONT]
    Nhảy lui [FONT=&quot]n[/FONT] dòng
    [FONT=&quot]n[/FONT][FONT=&quot]H[/FONT]
    [FONT=&quot]n [/FONT]dòng sau dòng đầu tiên
    [FONT=&quot]n[/FONT][FONT=&quot]L[/FONT]
    [FONT=&quot]n[/FONT] dòng trước dòng cuối cùng
    Có thể đánh số hiệu dòng để dễ quan sát hơn, thực hiện trong chế độ lệnh:
    [FONT=&quot]:set nu[/FONT]
    Hiển thị số hiệu dòng
    [FONT=&quot]:set nonu[/FONT]
    Xóa số hiệu dòng

    IV. Tìm kiếm trong văn bản
    [FONT=&quot]vi[/FONT] có thể định vị các từ hay nhóm ký tự cụ thể ở bất kỳ nơi nào trong tập tin, tính năng này tiện lợi khi sửa lỗi chính tả. Các lệnh này chỉ làm việc trong chế độ lệnh:
    [FONT=&quot]/word [/FONT]
    Tìm [FONT=&quot]word[/FONT] từ con trỏ đến cuối tập tin
    [FONT=&quot]?word[/FONT]
    Tìm [FONT=&quot]word[/FONT] từ con trỏ ngược đến đầu tập tin
    Chuỗi được tìm kiếm trong lệnh [FONT=&quot]/[/FONT] hay [FONT=&quot]?[/FONT] có thể là một biểu thức.

    V. Sao chép và di chuyển văn bản
    [FONT=&quot]vi[/FONT] có nhiều bộ đệm (36):
    - Bộ đệm vô danh (unmaed buffer): dùng lưu trữ thao tác cần cho lệnh Undo.
    - Bộ đệm định danh (named buffer): [FONT=&quot]"a[/FONT] đến [FONT=&quot]"z[/FONT]
    - Bộ đệm định số (numbered buffer): [FONT=&quot]"1[/FONT] đến [FONT=&quot]"9[/FONT]
    Để sao chép văn bản phải thực hiện thông qua bộ đệm bằng các lệnh sau:
    [FONT=&quot]"an[/FONT][FONT=&quot]yy [/FONT]
    Bứng (yank) [FONT=&quot]n [/FONT]dòng kể từ con trỏ vào bộ đệm [FONT=&quot]"a[/FONT]
    [FONT=&quot]"a[/FONT][FONT=&quot]p[/FONT]
    Đặt (put) bản sao nội dung bộ đệm [FONT=&quot]"a[/FONT] vào bộ đệm làm việc

    VI. Thay thế và xóa văn bản
    [FONT=&quot] cw[/FONT]
    Thay đổi từ
    [FONT=&quot]cc [/FONT]
    Thay đổi dòng
    [FONT=&quot]C[/FONT]
    Thay đổi văn bản từ vị trí hiện thời tới cuối dòng
    [FONT=&quot]:%s/w1/w2/g[/FONT]
    Thay thế (substitution) [FONT=&quot]w1[/FONT] toàn bộ (global) thành [FONT=&quot]w2[/FONT]
    Ai cũng mắc lỗi khi soạn thảo, vì vậy [FONT=&quot]vi[/FONT] cung cấp các phương tiện hiệu chỉnh sai sót. Các lệnh này chỉ làm việc trong chế độ lệnh:
    [FONT=&quot]x[/FONT]
    Xóa một ký tự
    [FONT=&quot]dd[/FONT]
    Xóa dòng hiện thời
    [FONT=&quot]n[/FONT][FONT=&quot]dd[/FONT]
    Xóa [FONT=&quot]n[/FONT] dòng từ con trỏ trở xuống
    [FONT=&quot]D[/FONT]
    Xóa phần còn lại của dòng
    [FONT=&quot]dw[/FONT]
    Xóa một từ
    [FONT=&quot]d}[/FONT]
    Xóa đến đoạn tiếp theo
    [FONT=&quot]d^[/FONT]
    Xóa từ con trỏ đến đầu dòng
    [FONT=&quot]dL[/FONT]
    Xóa tới dòng cuối cùng trên màn hình
    [FONT=&quot]dG[/FONT]
    Xóa tới dòng cuối file
    [FONT=&quot]Rtext[/FONT]
    Thay thế (overwrite) bắt đầu tại vị trí con trỏ với [FONT=&quot]text[/FONT]
    [FONT=&quot]u[/FONT]
    Undo, khôi phục lại sửa đổi vừa thực hiện trên dòng hiện hành
    [FONT=&quot]Ctrl R[/FONT]
    Redo, ngược với một Undo
    [FONT=&quot]U[/FONT]
    Khôi phục lại dòng hiện hành (nếu đã thực hiện nhiều sửa đổi và chưa rời khỏi dòng)
    [FONT=&quot]:q![/FONT]
    Thoát mà không lưu các thay đổi
     

Chia sẻ trang này

Users Viewing Thread (Users: 0, Guests: 0)