我是如何用python給Thunar寫GUI插件的 (pygtk+glade)

問題是這樣的:
一切都起源於一個壓縮文件的亂碼…
Windows的編碼真的是隨心所欲,讓Linux這種守規矩的小傻子措手不及:

試了太多GUI的解壓縮軟件,peazip、Engrampa、xarchiver等等,以及國產的360壓縮,沒有一個能解決這個亂碼問題的。python

其實吧,很多命令行工具是能夠經過參數傳遞編碼來解決這個問題的,可是人總有懶的時候,即便勤奮如我也不例外,有時候就想拿個鼠標啊觸摸板啊點啊點的(主要是看個壓縮包也要輸入命令行除了看起來裝逼實際上也真的很低效啊…)git


而後我發現一個特別好用的工具:lsar。lsar不要傳遞任何參數就能夠自動判斷編碼:
github

其實它和unar是一對(unar在以前Thunar自定義菜單的隨筆裏已經說過了),它們是The Unarchiver的命令行版本。
The Unarchiver是給Mac設計的一個帶GUI的解壓縮工具,可是隻給windows和Linux提供了命令行版。
(不得不說不少Mac平臺的工具用戶體驗都很好啊… 此處省略太多對Linux生態圈踢皮球和沒有產品經理的牢騷)windows

好了,正題來了:
如何給Thunar寫一個插件,經過鼠標右鍵就能調用lsar預覽壓縮包的內容?工具

答:
這種工做最適合python這種語言了,結合pygtk,調用lsar獲取結果傳入gtk顯示就能夠了。
使用glade還能夠快速畫個gtk界面,省去一堆python裏建立和綁定的代碼。
代碼上傳到 github 了。編碼

Thunar裏天然少不了加個自定義選項:

效果:

插件

q或者ctrl+w能夠退出預覽。命令行

界面不是很好看,沒時間就這樣吧
About窗口也只是有個框(好像並不須要about窗口)設計

相關文章
相關標籤/搜索