Friday, July 25, 2014

Linux Text Editor - Part 2

Ini adalah kesan pertama saya usai migrasi dari Windows ke Linux. Apa
yang biasa saya lakukan dalam hal mencatat memo di Windows, saya biasa
menggunakan aplikasi notepad++. Mengingat saya sudah merasa nyaman
dengannya, maka saya coba cari apakah notepad++ juga ada versi
Linux-nya? Ternyata tidak ada, jadi saya mencoba cari alternatif
lain.

Sewaktu awal menggunakan Linux, distro yang saya gunakan adalah
Ubuntu 6.06 dimana default desktopnya adalah gnome versi 2.x. Dan
bawaan GUI text editornya adalah gedit (gnome editor), rupanya
fitur-nya mirip dengan notepad++.

Kemudian sewaktu gnome 2.x berubah ke versi 3.x dimana ada perubahan
total dari tampilan GUI-nya, maka pada saat bersamaan, Ubuntu juga
melakukan perubahan GUI-nya dari gnome 2.x ke Unity. Dan diputuskan
Ubuntu tidak mengadopsi secara penuh implementasi gnome 3.x (atau
biasa dikenal dengan istilah gnome shell), akan tetapi mengembangkan
sediri GUI dengan dukungan gnome 3.x yang dikenal dengan unity.

Nah sewaktu Ubuntu merilis dengan GUI Unity, saya merasa tidak nyaman,
karena saya lebih prefer menggunakan gaya gnome 2.x. Nah oleh karena
itu, maka saya memutuskan untuk pindah ke distro lain. Sempat mencoba
OpenSuse, Debian dengan menggunakan lingkungan desktop xfce yang mirip
dengan gnome 2.x.

Nah disini mulai ada perubahan, mengingat xfce ternyata jauh lebih
ringan ketimbang gnome. Berkaitan dengan text editornya, default
programnya adalah leafpad yang amat sangat simple, seperti
notepad. Akan tetapi tidak bisa memenuhi keperluan saya yang memang
lebih suka gedit. Maka mau tidak mau, saya harus menginstal
gedit. Yang ternyata memiliki dependency yang cukup banyak.

Akhirnya tibalah saatnya saya migrasi ke Slackware. Mengapa bisa
memutuskan distro Slackware? Ini berkat saran my best friend, yang
mengatakan bahwa Slackware itu mbah-nya distro. Dan kalau mau belajar
Linux, maka gunakanlah Slackware.

Awal menggunakan Slackware, ya ada yang kurang, karena ia tidak
mendukung gnome. Jadi terpaksa saya move ke xfce, karena saya kurang
suka dengan KDE. Setelah di xfce, maka yang saya tambahkan instalasi
tentu gedit. Agar memenuhi keperluan saya itu.

Akan tetapi seiring dengan semakin tinggi jam terbang saya dalam
berkomputasi dengan Slackware, maka ternyata text editor yang asyik
itu ya yang berjalan di shell (text console), seperti nano, vi, atau
emacs. Dan sekarang yang menurut saya yang paling asyik ya emacs.

Kalau nano, itu mudah sekali. vi atau vim itu simple, dan tidak
neko-neko. Adapun emacs itu penuh misteri dan banyak keinginan saya
yang ternyata sudah disediakan oleh emacs.

Selain sebagai text editor, Emacs juga bisa menjadi editor
pemrograman, dan lebih jauh lagi, bisa mengkompilasi program C, C++
atau Java tanpa keluar dari Emacs. Bahkan bisa juga menjalankan hasil
kompilasi tersebut dari dalam Emacs. Hal itu dimungkinkan karena ada
fitur compile, shell command dari menu tools.

Lebih jauh lagi, Emacs juga bisa digunakan untuk menulis text dalam
mode auto-fill-mode. Jadi bisa diatur margin penulisan text kita. Dan
itu saya temukan di Emacs dengan cara menuliskan perintah M-x
auto-fill-mode.

Kuncinya adalah mau belajar dan mau mempelajari tutorial Emacs, maka
Anda akan merasa nyaman dengannya.

Dan yang paling penting, tulisan ini saya susun dengan menggunakan
Emacs tentu saja.

Thank you Richard M. Stallman :)

Friday, July 04, 2014

Linux Text Editor

Perlu dipahami terlebih dahulu bahwa dalam lingkungan Linux dikenal
istilah: "everything is file". Maksudnya semua resource
yang ada dalam sebuah sistem komputer dengan OS Linux, akan
diberlakukan sebagai sebuah file. Termasuk node (titik koneksi) ke
sebuah device.

Oleh karena itu, maka text editor adalah aplikasi yang penting dalam
dunia Linux. Berikut adalah road map/jalan yang mungkin enak untuk
dipelajari terlebih dahulu untuk bisa memahami text editor berdasarkan
pengalaman saya.


(1) Gedit
Gedit adalah text editor yang masih berbasiskan GUI. Ini mirip sekali
dengan Notepad dalam lingkungan Windows. Gedit atau Gnome Edit,
merupakan project dari Gnome untuk text editor. Karena GUI, jadi kita
tinggal klak-klik klak-klik saja dengan menggunakan mouse. Mudah sekali.

(2) Nano
Nano adalah text editor yang berbasiskan text console. Akan tetapi bisa
juga dijalankan melalui terminal. Cara menggunakannya $ nano
Begitu masuk ke nano editor, langsung bisa mengetik text. Untuk
menyimpan, tulis Ctrl-O WriteOut. Nano adalah text editor yang
paling sederhana dalam modus text console.

(3) Vi/Vim
Vi/Vim (Vi improved) merupakan text editor klasik di Unix. Dan
ini merupakan text editor yang biasanya sudah ada saat kita melakukan
instalasi Linux. Mengingat default intalasi Linux itu biasanya sudah
ada aplikasi vi/vim, maka perlu kiranya untuk dipahami paling tidak
fungsi dasarnya. Text editor ini lazim dipakai oleh seorang installer
Linux. Dan oleh karenanya, maka vim menjadi text editor favorit
diantara Linux geek. Sedikit info yang bisa saya jelaskan disini
bahwa, begitu Anda masuk ke vi atau vim:
$ vim
maka, cara pertama adalah ketik huruf 'i' untuk masuk ke mode
--INSERT-- setelah itu. Baru setelah itu, bisa kita mulai
pengetikan. Untuk menyimpan file, :w enter (tekan Esc, lalu titik dua
dan huruf 'w', lalu enter). Untuk keluar dari vim ketik :q (ketik Esc,
titik dua, lalu q). Untuk yang lainnya, silakan pelajari sendiri dari
$ vimtutor. Vim ini bisa memiliki modus text console atau GUI.

(4) Emacs
Emacs bukan text editor biasa. Akan tetapi bisa juga digunakan
untuk keperluan lain, yang bisa disesuaikan dengan keperluan kita. Ada
penulisan diary, calendar, directory editor, dll. Untuk membuka ketik:
$ emacs
Untuk mempelajari tekan Ctrl-h t (notasi C-h t). Dalam tutorial ini,
saya sarankan Anda membacanya sampai selesai. Untuk membuka file:
C-x C-f. Untuk menyimpan file: C-x C-s. Kalau ingin keluar dari Emacs,
ketik: C-x C-c.
Perlu sedikit pemahaman dari kita, bila kita ingin nyaman dalam
menggunakan Emacs editor ini, yaitu dengan cara memahami terminologi
pemrograman, seperti echo, buffer, mini buffer, dll. Maklum saja, yang
membuat aplikasi ini memang dibuat oleh seorang programmer yang
genius.
Seperti halnya Vim, Emacs bisa dijalankan dalam modus text console
atau GUI. Akan tetapi bila kita jalankan dari terminal maka Emacs
akan masuk ke modus GUI. Modus text console hanya bisa dijalankan bila
kita ada di dalam shell prompt.

Konklusi
(1)
Urutan dalam mempelajari text editor Linux diatas adalah prefensi
berdasarkan pengalaman saya. Bila Anda langsung ke Vim atau Emacs,
maka Anda biasanya akan merasa aneh. Dan biasanya tidak betah, apalagi
sebelumnya Anda terbiasa menggunakan aplikasi text editor Notepad di
Windows. 

(2)
Semua text editor memiliki kelebihan dan kekurangannya masing-masing,
dan itu semua dikembalikan kepada Anda untuk memilihnya. Sungguh, itu
semua adalah anugerah dari free open source software (FOSS), yang
menawarkan taste/rasa yang berbeda. Jadi ada demokrasi dalam dunia
software. Which one is the best? All is up to you. Which one is
suitable with your purpose.

Adieu!

Thursday, July 03, 2014

Emacs, Bukan Text Editor Biasa

    "Tak kenal maka tak sayang."

Itu mungkin pepatah yang paling tepat untuk menyatakan kesan pertama
menggunakan text editor Emacs. Akan tetapi begitu Anda selesai membaca
tutorialnya, dengan cara mengetik: Ctrl-h t dalam emacs (lazim
disingkat dengan notasi C-h t), maka Anda baru akan memahami pola
pikir si pembuat text editor ini.



Untuk menggunakan emacs, cukup ketik:

$ emacs

Sedikit penjelasan menu yg muncul: 

Pada bagian bottom menu:

--:**--F1 nama-file All Lxx (Fundamental)

tanda ** : artinya file "nama-file" sedang diedit, dan
belum tersimpan. Kalau tersimpan, maka tanda ** akan hilang.

All : maksudnya semua text bisa dimuat dalam satu layar penuh. Kalau
tidak maka bisa berubah menjadi 'Top' atau 'Bot' (Bottom) atau nn%.

Baris kosong dibawah bottom menu adalah area echo. Ini merupakan

tempat komunikasi kita dengan emacs. 

Maklum yang membuat program ini adalah seorang programmer yang genius. Jadi terminologi yang digunakan adalah terminologi programmer, seperti echo, buffer, mini buffer, dll.
Jadi kalau ingin bisa menjadikan Emacs sebagai teman sendiri, maka
yang perlu dilakukan adalah mencoba mengerti pola pikir seperti
seorang programmer. Awalnya kita akan dikenalkan dengan istilah menu
extention dengan cara mengetik C-x (menekan tombol Ctrl dan huruf
'x'). Disana akan ada fungsi antara lain:

(1)
Untuk membuka file baru: C-x C-f (f = file)
Bila itu merupakan file baru, tulis termasuk path-nya. Karena kalau
langsung berupa nama file, maka file tsb akan tersimpan di current
working directory. misal file baru tsb ada di folder
~/Documents/filebaru.
Maka ketiklah secara penuh seperti itu. (Note: tanda ~ adalah tanda
itu home folder. Maksudnya, bila Anda login sebagai andri, maka lokasi
~ itu maksudnya adalah di folder /home/andri/. Dengan demikian, maka
lokasi filebaru tsb ada di /home/andri/Documents/filebaru).

Bila kita lupa dengan nama file apa yg akan kita buka, maka kita bisa
membuka folder dari emacs, tanpa keluar ke shell hanya untuk keperluan
itu. Cukup tulis folder-nya dan tekan enter maka folder tsb akan
terbuka. Misal Anda hanya ingat lokasinya itu di ~/Documents/; maka
cukup tulis seperti itu, lalu tekan enter, maka akan daftar file
dalam folder tsb akan ditampilkan, maka kita tinggal mencarinya. Kalau
sudah ketemu, tinggal tekan enter. Ini salah satu keunikan emacs.

(2)
Bila file sudah dibuka, maka filebaru itu akan disimpan dalam
buffer. Untuk selanjutnya file tsb sudah siap untuk diedit. Nah kalau
mau menyimpan-nya, tekan C-x C-s (save). Maka pada bagian echo, akan
muncul tulisan:
Wrote /home/andri/Documents/filebaru

(3)
Untuk keluar dari emacs, cukup tekan C-x C-c. Ini mirip perlakuan kita
kepada sebuah proses dalam shell yang menggunakan tombol
Ctrl-c. Begitu kita menekan C-x C-c, maka di area echo akan muncul
shell prompt, bila kita menggunakan mode text. Bila kita menggunakan
emacs gui, maka windows-nya akan menghilang.


Cukup untuk hari ini, next time will be continued.


How to Listen Audio Streaming in Firefox?

Bila kita bicara tentang browser, maka ada dua yang terbaik saat ini, yaitu Chrome / Chromimum dan Firefox. Karena sekitar tahun 2010 Firefo...