# 本文目的
把自己常常會使用到的操作貼上來這裡放,
這裡會不定時的更新

# 參考文章:
http://sky.csie.org/wordpress/?p=220

# 我自己的vimrc
http://github.com/gisanfu/vimrc

# Visual mode + search

按"v"去選擇你所想要搜尋的文字,然後按"y"就可以複製
直接按"/"加上ctrl + r + 0,可以把剛才複製到暫存器裡面的東西貼出來
然後就可以按enter搜尋。
也可以加入快速鍵裡面

$ vi ~/.vimrc

加入以下這行
代表Ctrl+R,而代表Enter
存檔後,重新開啟vi去編輯其他檔案測試
選擇所要搜尋的字串按y複製到暫存區,然後按F3就可以馬上搜尋
(會用F3的目的是因為firefox也是用F3做為搜尋快速鍵)
nm      <f3>    /<c-r>0<cr>

# 使用Ctags補助看程式碼
這裡是使用Ubuntu為environment
可以參考這個網址
http://c9s.blogspot.com/2007/07/vim-taglist-plugin.html

# 如何在vim裡面,把選取模式(VISUAL mode)或是非選取模式的東西copy到clipboard
# 如果是選取模式
# 可以在.vimrc裡面加上這一行
# set mouse=a
# 讓mouse一選,就直接是選取模式了
# 如果在選取模式是按y
# 就只會放在暫存區裡面而以(而非clipboard)
# 要注意,加號也是快速鍵之一哦
"+y or "*y
< shift > < " ' > < + = > + < y >
而貼上是
"+p or "*p

( 也可以選取了以後,在其它要使用clipboard的地方按滑鼠中鍵 )

# 如果是非選取模式
# 可以使用gnome-terminal裡面的快速鍵
# 不過用這個有一個缺點,就是如果你有開啟行號
# 那多行複製的時候,會把行號也複製進來..orz
ctrl + shift + c
而貼上是
ctrl + shift + v
如果貼上的時候,會出現階梯的狀況出來(亂掉),可以在貼上前先執行以下的指令
:set paste

# 使用遠端vim,並要複製的狀況下

# 請確認,等於後面不要加上東西,或是有東西
# 在windows的狀況下,選好了以後,並且使用putty,是直接到clipboard
# 在unix-like的狀況下,要使用ctrl + shift + c,才會到clipboard
:set mouse=

# 選擇全部

ggVG
# 或者是寫到vimrc裡面,加上Ctrl+a的快速鍵
:nmap <C-a> ggVG"*yG<CR>

# 回到一般模式,以及存檔
# 但不用按ESC(因為左手需要離開鍵盤定位區)


:imap `` <Esc>:w<CR>

# 使用快速鍵複製貼上
# 別忘了安裝vim-gnome(in ubuntu, maybe 10.04)


" CTRL-x is cut (in visual mode only)
vnoremap <C-x> "*d
" CTRL-c is copy (in visual mode only)
vnoremap <C-c> "+y

# 在記往符號位置之前的過渡時期

" 符號
" 1. Interrobang (無蝦米的國字一,也就是e) => ! 驚嘆號
" 2. Mouse (像英文的A) => @
" 3. number sign (無蝦米的J, 井字號) => #
" 4. Money (像英文的S) => $
" 5. Percent (像無蝦米的oeo) => %
" 6. Number Cubic (像英文字母的L) => ^ 也就是次方
" 7. And (像是數字8)=> &
" 8. asterisk(在零的旁邊,而零就是Zero,所以就是z`) => *
:imap `e !
:imap `a @
:imap `j #
:imap `s $
:imap `o %
:imap `l ^
:imap `b &
:imap `z *

# 自動補齊功能
#
# 參考網址如下:
# http://www.openfoundry.org/component/option,com_content/Itemid,334/id,2215/task,view/
# http://hazumu.net/blog/vim/2009/11/
#
# 這裡介紹的是Acp(AutoComplPop)


安裝方式,把檔案解到~/.vim/裡面,這樣子就可以了
當你在輸入本檔案曾出現過的字串,就會顯示清單,讓你去選擇,包含函式、變數、字串,
但如果你想要的是php或者是其他語言(例如bash, python..)的內建函式自動補齊的話,可以在你的.vimrc裡做這樣子的設定:
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType php set omnifunc=phpcomplete#CompletePHP
autocmd FileType c set omnifunc=ccomplete#Complete

創作者介紹

創造心理的感動

gisanfu 發表在 痞客邦 PIXNET 留言(0) 人氣()