Jurnal Linuxku: Penggunaan vim studi kasus membuat file csv

Inilah post pertama tahun 2026 di blog ini. Aku belum sempat untuk membuat catatan akhir tahun 2025, sama seperti teman-teman yang lain yang membuat rekap atau kaleidoskop a la mereka di akun sosial media mereka masing-masing. Aku belum membuatnya, karena aku sedang dalam kondisi persiapan total untuk proposalku yang akan aku ajukan untuk beasiswa doktoralku. Pengaturan jadwal dan prioritas menjadi tantangan tersendiri. Selain itu, jam tidurku yang tidak sampai 8 jam membuatku bersin-bersin, ketika menulis ini. Ini bahaya. Aku merasa aku gak boleh sakit dulu, sebelum semua selesai dan beres.

OK, langsung saja. Sore itu, sehari setelah Hari Raya Natal menurut kalender Julian, kawanku memintaku untuk mengubah data potensi yang ditulis dalam format Microsoft Word (*.docx), ke dalam format Microsoft Excel (*.xlsx). Karena menurutku mudah, lantas aku kerjakan secepatnya. Nah..., masalahnya adalah filenya tidak dalam bentuk tabel. Jadi, bentuknya form satu per satu gitu. Wah..., capek banget copy dan paste satu per satu ke Microsoft Excel-nya. Akhirnya aku menemukan ide.

Idenya adalah menyalin isi file data potensi itu ke gedit, lalu mengeditnya menjadi format csv yang fleksibel. Fleksibel dalam arti bisa diubah-ubah menjadi format apapun yang berkaitan dengan data, diimpor ke manapun dan dipindahkan dengan sistem operasi yang beda-beda (cross-platform).

Untukmu yang belum tahu format file csv, penjelasan sederhananya adalah tabel yang dipisahkan oleh koma atau tanda lain. Tanda-tanda lain yang umum dipakai selain koma adalah semikolon (titik koma), spasi atau tab. Biasanya, baris pertama merupakan header atau nama kolom untuk tabel, meskipun tidak semua tabel memiliki header.

Sebetulnya, masalah tidak secara otomatis selesai. Masalah berikutnya adalah proses untuk pembentukan file *.csv itu. Cukup lelah ternyata, kalau kita menghapus satu per satu dari bagian yang tidak diperlukan dan melakukan tindakan yang berulang-ulang; apalagi datanya cukup banyak. Selain itu, selama proses pembentukan file *.csv itu diperlukan penghilangan baris atau penyatuan baris untuk membuat data yang padu. Sebagai alternatif dari gedit sebagai editor teks adalah vim.

Vim merupakan salah satu editor teks berbasis terminal atau linux command line, sama seperti nano. Perbedaan antara vim dan nano adalah klaim dari vim yang lebih efisien. Apakah benar? Mungkin, pengalamanku ini dapat membuktikan bahwa vim merupakan software yang efisien.

Jadi, dalam menyusun daftar itu, aku perlu untuk menghapus beberapa karakter dan baris. Selain itu, kadang kala kita perlu menuju ke akhir dari baris. Lalu bagaimana caranya?

Kita misalkan dalam wordnya seperti ini:

Nama : seseorang
Jenis kelamin : laki-laki
Alamat : Jalan sana-sini 80 kota mana

Aku mencontohkan satu saja. Data yang banyak itu dikopi ke teks editor, disimpan dalam format *.csv. Kita buka terminal dan membukanya dalam vim. Selanjutnya, kita buat kolom-kolom yang kita butuhkan.


"nama","jenis kelamin","alamat"
Nama : seseorang
Jenis kelamin : laki-laki
Alamat : Jalan sana-sini 80 kota mana

Berikutnya, kita tinggal sesuaikan. Caranya adalah letakkan kursor pada bagian depan baris "Nama : seseorang", kemudian hapus kata "Nama :". Caranya dalam kondisi normal, ketik: "d6l". Ketikkan tanpa tanda petik. Maksud dari ketikan itu adalah:

  • "d" itu perintah untuk menghapus,
  • angka 6 itu banyaknya karakter yang akan dihapus,
  • l merupakan arah ke sebelah kanan kursor.

Nah.., setelah diketikan itu, maka


"nama","jenis kelamin","alamat"
seseorang
Jenis kelamin : laki-laki
Alamat : Jalan sana-sini 80 kota mana

Setelah itu, kita perlu menyatukan semua barisnya per data. Kalau kita menghapusnya satu per satu, tindakan itu sangat melelahkan. Kita menggunakan fitur yang ada pada vim untuk menyatukan baris-baris pada data itu. Cara menggunakan fitur itu seperti ini.

  1. Letakkan pada baris pertama yang akan disatukan barisnya.
  2. Pada kondisi normal, ketikkan huruf J (kapital J) atau tekan tombol shift + j.
  3. Efek dari shift + j, akan menyatukan dua baris dengan spasi di depan baris keduanya.
  4. Jika tidak ingin ada spasi di depannya, maka kita dapat mengetikkan g sebelum menekan shift + j.

Setelah urutan itu diterapkan, maka akan muncul perubahan seperti ini.


"nama","jenis kelamin","alamat"
seseorangJenis kelamin : laki-laki
Alamat : Jalan sana-sini 80 kota mana

Cara yang sama juga digunakan untuk menghapus kata "Jenis kelamin" dan "Alamat". Cara ini diulang hingga akhir data yang dipunyai. Saat ini, kemungkinan ada cara lain menggunakan skrip python untuk menyelesaikan permasalahan ini dan saya belum menemukannya. Mungkin itu saja yang bisa saya sampaikan, terima kasih sudah membaca sampai habis semoga berguna ya.

0 comments: