Modifikasi Luakit Browser

02 June 2013

PS : Artikel ini sebenarnya untuk menguji fungsi Pygments di Jekyll.

Sebelum Overhoul sistem, aye pakai ‎Chromium ( fork Google Chrome ) untuk aktifitas jelajah web. Chromium memiliki semua fungsi dan fitur dari Google Chrome, sekaligus kemampuan untuk memakan resource memori dan processor sehigga menjadikannya bersanding dengan Mozilla Firefox dalam urusan bloat-ware.

Sistem aye Overhoul untuk membuatnya lebih ringan, hapus Gnome Shell dan menggantinya dengan Awesome kemudian dirubah lagi ke Openbox. Untuk urusan web browser, aye juga perlu ganti, dan pilihan jatuh ke Luakit.

Luakit adalah web browser yang mempergunakan webkit sebagai mesinnya ( sama seperti Chromium / Google Chrome ). Tapi Luakit dibuat dengan filosofi Vim, sehingga tampilan dan key-binding pun dibuat sama / mirip. Luakit adalah web browser sederhana, bisa dibilang hadir hanya untuk sekedar jelajah web saja, hanya itu.

Oleh karena itu, untuk beberapa keperluan aye perlu sedikit memodifikasi agar Luakit bisa berjalan seperti apa yang aye minta. Modifikasi tersebut antara lain :

  1. Otomatis jalankan Pidgin saat klik ikon tautan Yahoo! Messenger
  2. 	
    webview.init_funcs.ym_hook = function (view, w)
    	 view:add_signal("navigation-request", function (v, uri)
           if string.match(string.lower(uri), "^ymsgr:") then
            luakit.spawn(string.format("%s %q", "purple-url-handler", uri))
               return false
       	   end
      	end)
    end

  3. Download dengan eksternal Download Manager
  4. 	
     mime_decision = function (view, w)
    
        view:add_signal("mime-type-decision", function (v, uri, mime)
            info("Requested link: %s (%s)", uri, mime)
    
            if (mime == "audio/mpeg") or (mime == "application/octet-stream") or (mime == "video/mov") then
                local cmd = string.format("%s %q","uget-gtk", uri)
                luakit.spawn(cmd)    
                return false
            end
        end)
     end,

Masih ada beberapa fungsi lain, yang sudah aye tambahkan seperti download .torrent dengan Transmission, buka tautan email dengan Geary Email Client dll. Tapi secara kode dan fungsi mirip dengan snippet no 1.

Luakit ringan dan gegas, secara tampilan memang sederhana ( bahkan tidak ada tombol apapun! ) mungkin sulit untuk yg sudah terbiasa dengan GUI, tapi buat yang biasa pakai VIM pasti akan lebih mudah dan cepat. fnd