Ubuntu上把Geany配置成好用的PHP開發工具



Ubuntu用戶經過添加PPA源安裝最新版Geany:
sudo add-apt-repository ppa:geany-dev/ppa
sudo apt-get update
sudo apt-get install geany geany-plugins libvte9
Geany內置的虛擬終端依賴libvte9這個GTK2的虛擬終端窗口庫,而Gnome3和KDE上默認沒有這個庫,因此須要安裝.


在菜單"編輯-首選項-虛擬終端"裏能夠設置終端的字體,前景色,背景色等.
編輯器字體和終端字體我都使用DejaVu Sans Mono.

在菜單"編輯-首選項-快捷鍵"裏把"自動完成"快捷鍵改成Alt+/,
由於其默認的快捷鍵爲Ctrl+Space,會和輸入法衝突.
值得一提的是,輸入法在Geany編輯器裏光標不跟隨,會一直出如今左下角,這是一個瑕疵.

在菜單"編輯-首選項-文件"裏,好比你能夠設置使用GB18030編碼打開非Unicode文件,
這樣打開簡體中文編碼的文件就不會亂碼了.
還有你還能夠在"文檔-設置文件編碼"裏進行編碼轉換.

在菜單"編輯-首選項-編輯器"裏提供有"自動完成","縮進","長行標誌"等的一些設置,
好比設置敲一個字母,自動完成當前打開文檔中的全部單詞.
好比你打開了兩個文件functions.php和my.php,你在編輯my.php裏的內容的時候,
Geany除了可以提示PHP庫函數,還可以提示functions.php裏的函數.
並且你在my.php使用了functions.php裏的一個函數後,"Ctrl+左鍵單擊"這個函數
是可以跳轉到functions.php裏函數所在位置.
選中關鍵詞後,右鍵菜單"搜索"裏也提供了查找/標記/跳轉的功能.

在菜單"搜索-在多個文件中查找"或者使用"Ctrl+Shift+F"調出"在多個文件中查找"對話框,
若是快捷鍵和輸入法衝突,能夠修改成"Ctrl+Alt+F".
Geany的這個功能會調用系統的grep來在多個文件中查找包含搜索關鍵字的文件,
速度很快,很穩定,指定文件後綴,編碼類型,搜索目錄和子目錄,正則等都是支持的.
搜索結果會顯示在下方的信息窗口,點擊便可打開搜索關鍵字所在文件的具體的行.
若是不當心搜索了一個很大的目錄,用 killall grep 關閉進程便可.
總而言之,利用這個功能,在項目裏找東西仍是挺方便的.
Geany並不會像Netbeans等IDE那樣精準,但快速夠用就是Geany的定位.

Genay對PHP庫函數的智能提示來自於/usr/share/geany/php.tags的支持,
固然你也能用Geany生成本身項目的tags文件.
好比進入wordpress目錄生成tags文件到Geany用戶配置目錄:
geany -g ~/.config/geany/tags/wordpress.php.tags $(find . -type f -name '*.php' -o -name '*.php5')
注意生成的WordPress的tags文件後綴爲.php.tags,另外-o表示Or(或者)的意思.
在菜單"工具-載入標記文件"載入生成的wordpress.php.tags,這樣不用重啓Geany就能生效了.
Geany自帶的語言tags文件,上面提到的php.tags只是其中的一個:
ls -lh /usr/share/geany/*.tags
官方源碼包data目錄裏集成了最新的php.tags文件.
更多tags代碼提示(PHP/JS/HTML/CSS等):
http://wiki.geany.org/tags/start

snippets片斷完成(PHP/JS/HTML/CSS等):
http://wiki.geany.org/snippets/start
好比HTML文件裏輸入form按Tab鍵補全片斷,PHP文件裏輸入for或switch按tab鍵補全.
Geany片斷完成定義在snippets.conf:
/usr/share/geany/snippets.conf
~/.config/geany/snippets.conf
snippets.conf是一個可配置的文本文件,你徹底能夠自定義一些本身經常使用的片斷.
在菜單"工具-配置文件"裏能夠打開snippets.conf進行編輯.

配色方案下載地址:
http://wiki.geany.org/themes/start
把geany配色方案裏的colorschemes和filedefs放到~/.config/geany下重啓Geany便可實現安裝,
在"查看-更改配色方案"裏能夠選擇本身喜歡的配色,文首配圖的配色方案是Bespin.

Geany的主配置文件裏面~/.config/geany/geany.conf記錄了最近打開的文件:
[files]
recent_files=xxx
能夠本身建個clear.sh來清除最近打開的文件:
#!/bin/bash
sed -i '/recent_files=\//c recent_files=' ~/.config/geany/geany.conf

在菜單"工具-插件管理器"裏進行插件管理,好比啓用"附加組件","文件瀏覽器","TreeBrowser"和"Pair Tag Highlighter".

有的插件也提供了首選項,能夠在裏面進行一些配置.好比在菜單"編輯-插件首選項"的" 附加組件 "裏
勾選"Mark all occurrences of a word when double-clicking it"
這樣你就能像在Notepad++裏那樣,雙擊一個詞,標記全部相同的詞.
你還能夠選中詞,而後按Ctrl+Shift+M進行標記,再按一次該快捷鍵則取消標記.

Pair Tag Highlighter 能實現HTML裏的單擊標籤成對高亮.
不過有時候,舊的高亮不能及時清除,這時能夠Ctrl+S保存後執行Ctrl+R重載一下文件.
Pair Tag Highlighter的這個問題 已經獲得修復 :
64位Linux能夠這樣安裝:
wget http://kononenko.ws/_media/en/blog/2015-03-09/pairtaghighlighter.so
sudo cp pairtaghighlighter.so /usr/lib/x86_64-linux-gnu/geany/

若是你要一個相似IDE的項目管理器,那就啓用 TreeBrowser 這個插件吧,
由於個人桌面是Xfce,因此我把TreeBrowser使用的外部文件管理器設爲Xfce默認的thunar,即thunar "%d"
因爲TreeBrowser默認使用xterm在當前目錄打開終端,
用lxterminal替換xterm讓Geany調用lxterminal打開終端:
sudo mv /usr/bin/xterm /usr/bin/xterm.backup
sudo ln -s /usr/bin/lxterminal /usr/bin/xterm

另外還有" 導出 "插件,能夠把代碼文件導出成高亮的HTML文件.
總之,插件仍是不少的,這裏有一張C開發者使用Geany開發的 截圖 .

Geany自帶的 標記列表 很是棒,裏面列出了當前文件的類/函數/變量/固定值等信息,
顯示在左側,默認按名稱排序,也能夠選擇按出現的順序排序.

Geany針對PHP文件的編譯命令對應php -l "%f"用於檢查語法,執行命令對應php "%f"用於運行腳本.
在菜單"生成"裏能夠進行"編譯"(語法檢查)或者"執行"操做,這些操做能夠進一步配置,好比指定絕對路徑PHP.
"編譯"操做(語法檢查)的信息會在下方信息窗口列出,"執行"操做會在彈出終端中運行程序(好比PHP腳本).
工具欄也提供了按鈕,方便操做.你能夠在首選項裏定製本身的工具欄.

Geany可以自動偵測到文件被修改,並提示用戶重載,固然也能夠點擊工具欄的重載按鈕手動重載.
Geany的快捷鍵仍是挺方便的,好比Ctrl+E能夠註釋和反註釋.
Geany對大文件的控制和編輯也不錯,編輯個幾萬行的文件很是輕鬆,比Win上Notepad++的體驗好太多了.
在FileZilla裏把Geany設爲默認的編輯器,FTP/SFTP遠程修改文件也很方便.

補充: 發現Geany內置了一個Project Organizer(GProject)插件,能夠智能提示和跳轉到項目內全部的函數和變量,不須要手動生成tags,怪不得Geany敢對外宣稱本身是輕量級的IDE,仍是有點底氣的嘛.另外還有一個插件GeanyCtags也不錯,跳轉功能集成在右鍵菜單.

關於IDE:
Netbeans 支持HTML/CSS/JavaScript(jQuery/AngularJS)/PHP智能提示和文檔提示,豐富的快捷鍵和宏支持,
界面漢化,支持Xdebug,ZendDebugger調試,支持git,svn,hg版本控制,支持PHPUnit單元測試以及支持ssh加密下的遠程項目開發.
Netbeans會動態實時收集項目下全部文件的量,就算你不require文件,Netbeans也會提示哪一個文件裏有哪一個量.
Netbeans做爲IDE,Geany做爲編輯器,高低搭配,幹活不累.
相關文章
相關標籤/搜索