使用unzip的時候 指定 -d選項, 是說明解壓到的 目標地址. 這個參數仍是比較方便的, 比直接unzip到當前目錄, 而後在去拷貝到目標目錄, 而後再刪除當前目錄中的解壓文件夾, 方便多了.php
使用:x命令, 方便直接; 由於它就相似於(注意不是等於same):wq, 並且, "只有當發生改變時才寫入": "only when changes have been made".
like和same as. like是相似, 而same是等同於, 因此這裏的:x是用的 like 而不是same.
html
用unzip解壓時, 是 從 archive inflating 到目標文件夾, 解壓是膨脹, zip纔是deflating.linux
vim在跳轉到行首時, 不能使用 s-i 來實現, 由於這樣的話, 就不能輸入大寫的I 了. 一樣的道理, 其餘映射都不能使用 s-字母了.c++
vim的幫助仍是頗有用的. 使用幫助時, 鍵入: :help :x(等命令)
, 要查詢的內容能夠是整個命令, 包括 (冒號), 那麼首先要創建幫助: 使用命令: :helptags 插件所在的doc目錄
如: :helptags ~/.vim/doc
固然是在vim中來執行的. 這時候, 會在doc目錄中生成一個tag 文件. 這個文件就是vim幫助命令 所要搜索的文件....git
vim中set hidden的含義?github
tmux? 是linux的終端複合器正則表達式
在 CentOS 和 RHEL 中,它不存在於官方的軟件源中,因此須要添加 EPEL 庫。添加命令: [root@server ~]# rpm -ivh http://dl.Fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm 添加完畢後,能夠用下面的命令來安裝它: [root@server ~]# yum install tmux 安裝完畢後,只須要執行以下命令就可使用它了: [root@server ~]# tmux 執行這個命令後,您將會被轉移到 Tmux 的會話中。轉移到會話中後,您須要先按下 Ctrl+B ((ctrl -b 叫作 命令前綴~ )才能執行其餘的命令。您能夠先按下 Ctrl+B 後按 "?" 來查看全部支持的命令。
vim插件的安裝方式:
step 1. 下載解壓
step2. 兩種安裝方式,vim
一是, 直接將 plugin.zip解壓到 ~/.vim目錄中就好. 這時候, 解壓出來會自帶目錄 doc/NERD_commenter.txt, plugin/NERD_commenter.vim, 而後就可使用了
二是, 不解壓到 ~/.vim目錄中 , 而是放到 vimfiles中, 好比: /usr/share/vim/vimfiles/ 中對應的doc, plugin目錄中.緩存
step3. 可是這個時候, 還不能使用, 還要在vimrc中對 插件 進行相關的 配置
好比:app
let NERDSpaceDelims=1 " 讓註釋符與語句之間留一個空格 let NERDCompactSexyComs=1 " 多行註釋時樣子更好看 let g:NERDDefaultAlign = ‘left‘ "將行註釋符左對齊 -------- 最經常使用的操做命令: ,cc 單行註釋 註釋方式// ,cm 對選中的範圍多行註釋 註釋方式爲 /* ... */ ,cs 以」性感」的方式註釋 ,cu 取消註釋 ,ca 切換// 與/**/註釋方式 這個只是切換, 並不註釋
DoxgenToolkit 的使用, 下載地址: http://www.vim.org/scripts/script.php?script_id=987 可是, 若是用vundle安裝的話, 直接就是: Bundle 'DoxygenToolkit.vim'
參考: c/c++的註釋風格: http://guqian110.github.io/pages/2015/01/12/learning_vim_doxygentoolkit.html
map fg : Dox<cr> let g:DoxygenToolkit_authorName="citongke1" let g:DoxygenToolkit_licenseTag="My ownlicense\<enter>" let g:DoxygenToolkit_undocTag="DOXIGEN_SKIP_BLOCK" let g:DoxygenToolkit_briefTag_pre = "@brief\t" let g:DoxygenToolkit_paramTag_pre = "@param\t" let g:DoxygenToolkit_returnTag = "@return\t" let g:DoxygenToolkit_briefTag_funcName = "yes 或者no" // 這個是指, 是否在註釋中 自動 包含函數名稱 let g:DoxygenToolkit_maxFunctionProtoLines = 30 ==================== 使用 DoxygenToolkit的限制條件: 對函數生成註釋的限制: 1. 假設函數名(後面的左括號)至少在當前光標位置後的第三行;(即: 當前光標行和函數定義行中間最多隔 2個空行, 不然就不能生成函數註釋 ,此時 函數前用:Dox, 則不會生成註釋,tip: nothing to document here)... 注意, 生成函數註釋時, 會自動將註釋和函數名稱之間的 空行 給刪除掉! 2. 在註釋塊在寫入以前不能再次更新; 3. 塊分隔符(頭部和尾部)只包含函數註釋(就是隻有函數註釋才生成塊header和 block footer, 其餘像 license, author則沒有塊頭部和腳部註釋); 4. 假設已經使用了縮進; 5. 函數參數中獲得註釋還不支持;(像void foo(int bar /* ... */)) 6. 定製輸出腳本,在腳本文件中,在.vimrc中設置g: DoxygenToolkit_*變量:
Doxgen的主要命令, 就是有三個: 一個是全文的 license, 使用命令: DoxLic, 二個 是全文的author做者信息. 使用命令: DoxAuthor, 三個 是單個單個的 函數 的註釋 直接就是 :Dox
關於 vim配置文件的更新 生效問題?
關於在各個模式下都能生效的 鍵映射
imap cm :Dox<CR>
在插入模式下, 按cm將只會在 文檔中, 插入 'literal'的 :Dox<cr>
, 只是這樣的文本, 可是不會做爲 冒號命令來執行.imap cm <esc>:Dox<CR>
在冒號前面有 escimap cm <esc>:Dox<CR> map cm :Dox<CR>
vim下的模糊搜索插件ctrlp.vim? 注意這裏的名字就是 ctrlp, 不是一個組合鍵.
Bundle 'ctrlpvim/ctrlp.vim'
purge: 清除, 清洗, purge the cache of the current file : 清除當前文件的緩存...
梗概ctrlp的搜索目錄和路徑: 打開GVIM以後,首先"cd 【path】",而後再在此路徑中使用CtrlP,就能夠一直保持路徑爲當前路徑了。
md的 反引號 匹配, 老是 "貪婪匹配", 當有三個反引號的時候, 中間的那一個反引號被忽略, 貪婪匹配到最後一個 反引號!
不讓vim生成備份文件?
set nobackup
set noswapfile
要使用這兩條 命令才行!
記住, 所謂的 ctrl-x, ctrl-v, ctrl-t 是指 ctrlp搜索後, 在搜索結果中打開的方式....
使用vim-multiple-cursor 能夠實現一處輸入, 多處修改的 功能
Plugin 'terryma/vim-multiple-cursors' let g:multi_cursor_use_default_mapping=0 let g:multi_cursor_next_key='<C-n>' let g:multi_cursor_prev_key='<C-b>' let g:multi_cursor_skip_key='<C-x>' let g:multi_cursor_quit_key='<Esc>'
用法是: 先按v, 配合其餘w, b等選擇內容, 而後按ctrl-n, ctrl-b, ctrl-x, 進行多處選中, 而後使用vim的命令進行編輯, 完成後, 按esc退出.
可是, 要注意, multiple-cursor的操做, 並非vim中的全部命令, 好比 "r" 命令, 會報錯說: key "r" cannot be replayed at 4 cursor locations. replay(重播, 重放, 重複出現的事物)
好像, 必定要通過插入模式 , 也就是 能夠有兩種操做方法, 一種是 先d, 而後i, 另外一種是s. 要能出現: -- ( insert ) --
輸入想要打開的文件名,或者文件名的一部分,或者路徑
可是不能搜索 "文件中的內容字符串???"好像是的! ctrlp的中文參考: http://blog.codepiano.com/pages/ctrlp-cn.light.html
vim插件腳本的位置?
easygrep?
關於git
over- 前綴, 表示 "完了的, game is over, 大於的, 翻越的, 過多的, 過分的.." 一般具備否認和很差的意味.
如: overrule: 否決, 否認, 駁回 . 用rule權力表示完了, 就是否決的意思
put: 放, 放置, 安裝... when a number is put before this command this is used as the maximum number of match to find (when for while等前置從句不必定在主句之間加逗號)
quickfix
Quickfix模式的主要思想是保存一個位置列表,而後提供一系列命令,實如今這個位置列表中跳轉。 位置列表的產生能夠從編譯器的編譯輸出信息中得到,也能夠由grep命令的輸出信息中得到,
vimgrep lvimgrep在目錄中查找字符串? 參考: http://easwy.com/blog/archives/advanced-vim-skills-quickfix-mode/
vimg /\<\(DEDEINC\|dedeinc\)\>/gj **/*.php
map sr :noautocmd execute "lvimgrep /" . expand("<cword>") . "/gj **/*" <Bar> lw<CR>
vim能夠同時記住最新的10個錯誤列表,也就是說你最近10次使用」:make「命令編譯所遇到的錯誤都保存着,可使用」:colder「和」:cnewer「命令,回到舊的錯誤列表,或者到更新的錯誤列表。 colder: 不是cold , 而是 c -older 和 c-newer.
映射快捷鍵 tip: 使用cword取當前文件光標所在出的文字,.vimrc配置以下: map <F3> :execute "lvimgrep /" . expand("<cword>") . "/gj **/*" <Bar> lw<CR> 這裏將 <f3> 換成 sr: search的意思. 由於f3 是全局搜索的意思. 上述配置完成後,在vim中當前光標下,按下F3就會在vim的當前目錄下搜索全部的文件及其子文件夾的文件,並顯示出來,還可使用 %:e 來作,意思是當前目錄(%)下的同類型文件(e),以下: map <F3> :execute "lvimgrep /" . expand("<cword>") . "/gj " . expand("%:e") <Bar> lw<CR> 這裏的 <cword> 就是 current word 當前單詞, 用 expand("<cword>") 函數處理後, 就表示, 擴展 .鏈接當前光標所在的字符串... 由於vimgrep 在搜索時, 要執行vim的時序, 因此速度較慢, 爲了提升速度, 能夠關閉 autocmd: 即: noautocmd. 所以總的配置命令就是: map sr :noautocmd execute "vimgrep /" . expand("<cword>") . "/gj **/*" <Bar> cw<CR> ### 注意這裏, 最好是, 用 vimgrep和cw, 來操做 quickfix窗口, 就可使用quickfix的跳轉命令cn, cp cl, cc, cw等, 而若是使用lvimgrep的話, 就很差跳轉....
使用vundle的好處是:
搜索文件和搜索內容的區別
搜索文件, 是按文件名/文件類型來搜索的, 搜索結果和目的是, 要找到咱們所須要的文件. 經常使用的命令是find, fuzzyfinder, ctrlp, unite等插件
而搜索內容, 則是進入到文件內, (僅限於文本 行 文件), 使用grep( gnu, regular print) 正則表達式 對文件內容進行搜索. 它的目的是搜索文件內容, 搜索字符串.
vim tabular插件的使用
<CR> 或 <cr>