值得一提的是vim是慈善軟體(charityware),如有贊助或評比得獎,所得將全部救助烏干達孤兒,軟體使用是免費的,歡迎手頭有點閒錢的使用者捐款贊助,如果沒銀子也沒關係,至少當有評比活動時(有獎金可拿的那種)。
應用技巧一:快速注釋
1、連續行注釋
使用vim/vi編輯shell指令碼,在進行除錯的時候,需要進行多行的注釋,每次都要先切換到插入模式,在行首輸入注釋符「#」,再退回命令模式,非常麻煩。其實如果要注釋連續行,可在命令模式下執行,格式如下:
:起始行,終止行s/要替換字元/替換為新字元/g
如需注釋第1行到第20行,可以執行:
:1,20s/^/#/g
其中「^」表示在行首插入,「#」為要插入的字元,「g」表示執行替換時不確認,若希望每行互動詢問是否執行,可將「g」改為「c」。
如果編輯php指令碼,注釋要稍微麻煩一點,如也要注釋第1行到第20行,要執行:
:1,20s/^g
php的注釋符「//」要特殊處理,因為vim/vi替換命令格式中預設「/」為分隔符,這樣就需要使用轉義符「」,表示「/」就要寫成「/」才可以,所以命令如上所示。強烈建議各位看官使用,省時省力省鍵盤 還省手指頭。
2、非連續行注釋
如果注釋非連續的多行,可以定義快捷鍵簡化,格式為:
:map 快捷鍵 執行命令
如定義快捷鍵ctrl+p為在當前行行首新增「#」注釋,可以執行:
:map ^p i//
「^p」為定義快捷鍵ctrl+p,要注意的是必須同時按「ctrl+v+p」按出此「^p」方才有效,或先按「ctrl+v」再按「ctrl+p」也 可以;「i//」就是此快捷鍵要觸發的動作,「i」為在游標所在行行首插入,「//」為要輸入的字元,「」表示退回命令模式,「」要逐個字元鍵入,不可直 接按鍵盤的「esc」鍵。執行成功後,直接在任意需要注釋的行上按「ctrl+p」就自動會在行首加上「//」號了非常方便。
如果要取消此快捷鍵,只需輸入命令:
:unmap ^p
我寫程式或文件喜歡在末尾注釋中寫上自己的郵箱,每次錄入十分麻煩,索性定義了乙個快捷鍵,如下:
:map ^m [email protected]
以後寫完內容後,直接在注釋中ctrl+m就錄入了俺的郵箱了。
應用技巧二:亂七八糟的技巧
1、傳說中的命令「ab」
命令「ab」,同樣可以解決上述輸入郵箱的問題,因為我在vim/vi中定義了太多快捷鍵,如輸入電子郵箱的、輸入通訊位址的、輸入聯絡**的、輸入求 偶標準的、輸入phpchina管理員三圍的……後來自己都記不住了。之後一天深夜電閃雷鳴,我突然發現了這條命令——「ab」,蒼天啊大地啊,我終於找 到解決問題的方法了!oh yeah!
原來輸入經常用的資訊可以如此簡單,look——
:ab 替代符 原始資訊
示例如下:
:ab sammail [email protected]
執行之後,在輸入模式任何地方錄入「sammail」,再敲任意字母符號或者回車空格,咔嚓一下,利馬就變成「[email protected]」,那真是相當的方便啊!
2、原來可以雙劍合一
在vim/vi中有兩個小技巧:
no.1 可以直接在vim/vi中執行unix/linux命令不需退出vim/vi
有時編寫一些系統指令碼,需要了解系統資訊,很多同學就退出vim/vi然後執行命令,獲得資訊後再進行編輯。其實大可不必,如想獲得/tmp目錄下內容,只需在vim/vi命令模式下直接執行:
:!ls /etc
檢視完命令結果,直接回車,就可以繼續編輯非常方便。
在vim/vi中執行命令,格式就是這麼簡單:
:!命令
no.2 可以直接將其他檔案內容匯入當前編輯檔案中
格式::r 檔名
如,需要匯入檔案/etc/issue的內容,執行:
:r /etc/issue
兩個非常非常easy的小伎倆,就在乙個我非常鬱悶的下午,狂敲鍵盤時一不小心沒留神發現了這樣乙個小秘密——原來它們可以結合起來用!
先舉個例子,很多程式設計師喜歡寫完程式後在注釋中寫入當前時間,我有個好辦法即省事又快速還準確,只需要在命令模式下執行:
:r !date
當前時間就自動被匯入了,任何命令的結果匯入到當前編輯檔案中,格式為:
:r !命令
3、助力程式設計的查詢功能
以前在linux系統下寫一些c語言程式,有時記性不好,忘記了語法格式,使用vim/vi編寫時可直接查詢。如寫程式寫到fork時,突然失憶了(失 去了對這個東東的記憶),就可以直接把游標移動到fork上,按「k」(大寫的k),直接就會跳到linux程式設計師手冊,看到fork的幫助,看完後回車 繼續編寫。
寫入你常用的設定命令即可,如:
:set nu
:map ^m [email protected]
:ab sammail [email protected]
……以後就永久生效了。
linux實用技巧
vim運用 linux查詢檔案 vi filename 開啟檔案,將游標置於第一行首 vi n filename 開啟檔案,將游標置於第n行首 vi filename 開啟檔案,將游標置於最後一行行首 vi filename.filename 開啟多個檔案依次編輯 按 ctrl b 螢幕往 後 移動...
linux 程式設計實用技巧
1 sizeof 引數為指標的問題。int i int j 10 sizeof i sizeof引數為指標時,返回指標資料型別所佔空間,一般為4 unsigned int 所佔byte sizeof j sizeof引數為陣列時,返回陣列所佔空間,此時為4 10 40 2 多執行緒中需考慮重入的問題...
Linux下vim實用技巧
vim是從 vi 發展出來的乙個文字編輯器。補完 編譯及錯誤跳轉等方便程式設計的功能特別豐富,在程式設計師中被廣泛使用。簡單的來說,vi 是老式的字處理器,不過功能已經很齊全了,但是還是有可以進步的地方。vim 則可以說是程式開發者的一項很好用的工具。linux下vi vim 共分為三種模式,分別是...