Belajar Nano - Editing, Cut & Paste
Episode 5 of 28

Belajar Nano - Editing, Cut & Paste

Menguasai operasi editing inti nano: memotong baris dengan ^K, menempel dengan ^U, menandai dan menyalin blok teks dengan M-A dan M-6, menduplikasi baris, memindahkan blok antar file, serta merapikan trailing whitespace untuk menjaga kualitas file config dan script

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah di episode 4 kalian menguasai navigasi, saatnya beraksi: mengubah isi file. Editing adalah jantung pekerjaan editor — dan di nano, modelnya satu konsep sederhana: cut buffer. Tidak ada clipboard sistem bawaan seperti editor GUI; yang ada adalah buffer potong internal tempat teks yang dipotong/disalin disimpan sampai digantikan.

Mengapa pemahaman cut buffer penting? Karena dua kesalahan paling umum pengguna nano pemula — "teks saya hilang" dan "paste-nya bukan yang saya kira" — berakar dari salah memahami konsep ini. Setelah episode ini, kedua masalah itu hilang.

Konsep Cut Buffer

Nano memakai satu buffer potong internal. Saat kalian memotong atau menyalin, isi buffer digantikan dengan teks baru. Menempel (^U) selalu mengeluarkan isi buffer terakhir. Ini mirip copy-paste biasa, dengan dua perbedaan penting:

  1. Tidak ada riwayat — hanya satu slot.
  2. Buffer bertahan antar file selama sesi nano yang sama.
text
^K  →  potong teks ke cut buffer (isi lama diganti)
M-6 →  salin teks ke cut buffer
^U  →  tempel isi cut buffer di posisi kursor

Memotong Baris dengan ^K

^K memotong seluruh baris mulai dari posisi kursor. Jika kursor di awal baris, seluruh baris beserta newline-nya terpotong. Contoh: hapus baris kedua file.

Siapkan file latihan cut-paste
printf 'line satu\nline dua\nline tiga\n' > ~/nano-lab/cut.txt
nano ~/nano-lab/cut.txt

Letakkan kursor di baris kedua, tekan ^K, lalu ^C untuk melihat posisi — baris kedua sudah hilang dan baris di bawahnya naik. Tekan ^U untuk mengembalikannya.

Tip

Dengan set cutfromcursor di nanorc, ^K hanya memotong dari posisi kursor sampai akhir baris (tidak termasuk newline) — berguna saat ingin menggabungkan baris. Atau pakai M-T untuk memotong hingga akhir file. Kita akan mengatur ini di episode 12.

Menempel dengan ^U

^U menempel isi cut buffer di posisi kursor. Dua pola yang paling sering dipakai:

Memindahkan baris (potong di tempat A, tempel di tempat B):

  1. Posisikan kursor di baris yang mau dipindah.
  2. ^K untuk memotong.
  3. Pindah ke posisi tujuan.
  4. ^U untuk menempel — isi buffer diletakkan di atas baris tempat kursor berada.

Menduplikasi baris (copy-paste):

  1. Posisikan kursor di baris yang mau diduplikasi.
  2. M-6 (Copy Text) untuk menyalin tanpa memotong.
  3. Pindah ke tempat tujuan.
  4. ^U untuk menempel.

Menandai Blok Teks dengan M-A

Untuk memotong/menyalin sebagian baris (bukan baris utuh), gunakan mark text dengan M-A:

  1. Posisikan kursor di awal teks yang mau diseleksi.
  2. Tekan M-A — mulai menandai; status bar menampilkan [ Mark Set ].
  3. Gerakkan kursor (pakai teknik episode 4) sampai akhir seleksi — teks terseleksi ditampilkan terbalik.
  4. Tekan ^K (potong) atau M-6 (salin).
text
GNU nano 9.2                 cut.txt
line satu
li[ne dua]x
line tiga

Setelah operasi, mark otomatis hilang. M-A juga bisa menutup mark tanpa operasi apa pun.

Menduplikasi dan Memindahkan Blok

Kombinasi mark + cut/paste memungkinkan manipulasi blok yang presisi:

TujuanLangkah
Pindah baris^K → pindah → ^U
Duplikasi barisM-6 → pindah → ^U
Pindah blok sebagianM-A, seleksi, ^K → pindah → ^U
Duplikasi blokM-A, seleksi, M-6 → pindah → ^U

Latihan: buka cut.txt, tandai kata dua dengan M-A + gerak kursor, salin dengan M-6, lalu tempel di baris ketiga dengan ^U.

Merapikan Trailing Whitespace

File config dan script yang rapi tidak menyimpan spasi sia-sia di ujung baris. Dua cara mengatasinya di nano:

  1. Saat mengetik: tambahkan set trimblanks di nanorc — nano otomatis menghapus spasi/tab di ujung saat ^O menulis file (episode 12).
  2. Setelah file jadi: M-T memotong teks hingga akhir file. Dengan mark aktif (M-A + seleksi), M-T menghapus trailing whitespace hanya di bagian yang ditandai.
Cek trailing whitespace sebelum dibersihkan
grep -n ' $' ~/nano-lab/cut.txt || echo "bersih, tanpa spasi di ujung baris"

Penutup

Pada episode 5 ini, kalian telah menguasai mesin editing nano: cut buffer, potong baris, tempel, mark text, dan merapikan whitespace.

Inti yang harus dibawa pulang:

  • Nano memakai satu cut buffer internal; ^K memotong, M-6 menyalin, ^U menempel.
  • ^K memotong seluruh baris; M-A menandai bagian teks untuk operasi presisi.
  • Pindah = ^K lalu ^U; duplikasi = M-6 lalu ^U.
  • set trimblanks atau M-T membersihkan trailing whitespace.

Di episode 6 selanjutnya, kita akan membahas search & replace — mencari teks dengan ^W, mengulang pencarian dengan M-W, mengganti dengan mode replace, memakai regex dengan M-R, dan melakukan replace bersamaan dengan goto. Ini salah satu episode paling sering dipakai di dunia nyata!

Belajar Nano - Editing, Cut & Paste | Belajar Nano