Table of Contents

Text Editor Vi

by : hky

vi merupakan teks editor interaktif yang dapat digunakan untuk membuat dan memodifikasi suatu file text. Teks editor ini dibuat oleh Bill Joy dari Universitas California, Barkeley, USA. Vi dikenal ribet, padahal gak gitu juga ;-) Gak akan nyesel belajar menggunakan vi, karena nyaris di semua varian unix, text editor ini tersedia. Penggunaan huruf besar dan huruf kecil di Vi akan menghasilkan hal yang berbeda.

Pengenalan

Untuk menjalankan vi, format perintah nya di shell adalah

 
vi [option] [namafile]

'Contoh'

$vi killduck <enter>
<i>potong bebek angsa<enter>
masak di kuali<enter>
nona minta dansa<enter>
dansa empat kali<enter>
sorong ke kiri, sorong ke kanan<enter>
la la la la... <enter>
<tombol esc> <ketik :wq> <enter>

Mode dalam vi

Ada 3 mode dalam vi : yaitu :

Command Mode

Maksudnya, mode dimana user dapat menggerakkan kursor, menghapus, mensubtitusi, mencari suatu string. Secara default, waktu pertama kita masuk ke dalam text editor vi, kita di tempatkan pada mode ini. Berikut yang sering dipakai :

Menggerakkan kursor

h    satu karakter ke kiri
l    satu karakter ke kanan
k    satu baris ke atas
j    satu baris ke bawah
w    satu kata ke kanan
b    satu kata ke kiri
^    atau | ke awal baris kursor
e    atau > ke akhir baris kursor
n(n=1,2,3,dst) ke baris ke-n

Menggerakkan / menggeser teks

<< menggeser teks ke kiri sebanyak satu TABS
>> menggeser teks ke kanan sebanyak satu TABS

Membatalkan perintah dan pengulangan

u    undo, membatalkan perintah terakhir
U    kembalikan baris kursor ke posisi sebelum di edit
p    tempatkan teks yang terakhir dihapus pada posisi sebelum kursor
P    tempatkan teks yang terakhir dihapus pada posisi sesudah kursor
.    ulangi perintah terakhir

Menggerakkan/menggulung layar

z <enter> tempatkan baris kursor ke bagian atas layar
z.        tempatkan baris kursor pada tengah layar
z-        tempatkan baris kursor di akhir layar
nG        tempatkan kursor pada baris ke-n (n=1,2,3...)

Menghapus teks

x            hapus karakter sebelum kursor
dw           hapus satu kata pada posisi kursor
dnw          hapus n kata pada posisi kursor
d<enter>     hapus dua baris, mulai dari baris kursor
d> atau dd   hapus baris kursor

Mengganti/subtitusi teks

r           subtitusi karakter pada posisi kursor
2rs         ganti karakter pada posisi kursor dengan 2 huruf s
S atau cc   subtitusi teks pada baris kursor
R atau s    subtitusi teks mulai posisi kursor hinggak diakhiri dengan menekan tombol <esc>

Koversi huruf kecil ke kapital atau sebaliknya

~    konversi satu huruf pada posisi kursor
~~   dua kali konversi mulai dari posisi kursor
n~   konversi sebanyak n kali mulai dari posisi kursor

Mencari dan mengganti string

/string       cari string dengan arah maju
?string       cari string dengan arah mundur
n             cari string berikutnya dengan arah yang sama
N             cari string berikutnya dengan arah yang berlawanan
/^string      cari string di awal aris dengan arah maju
/string$      cari string di akhir baris dengan arah maju
contoh lain:
/kay[au]      cari string kaya dan kayu ke arah maju
/\<mata       cari string yang diawali dengan mata
/kan\>        cari string yang diakhiri dengan kan

Copy

yy           cut baris kursor ke buffer bernama b
yw           cut kata pada posisi kursor ke buffer bernama b
Y            cut mulai baris kursor hingga akhir baris ke buffer bernama b

Paste

p            paste teks pada posisi sebelum kursor
P            paste teks pada posisi setelah kursor

Input Mode

Pada mode ini, user dapat melakukan pengeditan teks. Untuk Masuk ke dalam mode ini, berikut penjelasannya

i            menyisipkan/menambahkan data pada posisi kursor
I            menyisipkan data pada awal baris kursor
a            menyisipkan data pada posisi setelah kursor
A            menyisipkan data pada akhir baris kursor
o            menyisipkan data pada baris setelah baris kursor

Last Line Mode

:w                 namafile   save as nama file
:wq                save and exit
:q atau :q!        quit without save
:![shell-command]  mengeksekusi perintah shell dari tanpa harus keluar dari vi

Referensi