成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

vim學(xué)習(xí)筆記

xingpingz / 1291人閱讀

摘要:與命令執(zhí)行相反的操作。撤銷當(dāng)前行的所有操作。行內(nèi)查找上一處指定字符出現(xiàn)的位置,如果找到,并將光標(biāo)移至指定字符處。文件內(nèi)執(zhí)行替換第一個(gè)匹配項(xiàng)替換所有。執(zhí)行一系列修改。復(fù)合命令列表從光標(biāo)片刪至行尾,并進(jìn)入插入模式。光標(biāo)移至行尾,并進(jìn)入追加模式。

安裝pathogen.vim(插件管理)
mkdir -p ~/.vim/autoload ~/.vim/bundle && 
curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim
Runtime Path Manipulation

如果是新裝并且vimrc不存在,請(qǐng)用命令 vim ~/.vimrc新建該文件,并將下面的代碼粘貼到文件中。

execute pathogen#infect()
syntax on
filetype plugin indent on
以pathogen.vim方式安裝插件NERDTree
cd ~/.vim/bundle
git clone https://github.com/scrooloose/nerdtree.git

Then reload vim, run :Helptags, and check out :help NERD_tree.txt.

supertab
https://github.com/ervandew/supertab.git
gdbmgr下載地址:
http://vim.sourceforge.net/scripts/download_script.php?src_id=18153
gdbmgr install details
* needs huge/large vim and linux 
cd $HOME/.vim 
mv [wherever]/gdbmgr.tar.gz . 
gunzip gdbmgr.tar.gz 
tar -xf gdbmgr.tar 
vi 
:helptags ~/.vim/doc 
:q 

(參考自)http://linux.cn/article-3314-1.html


vundle插件管理
  

從Github下載vundle到本地:
$ git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle

配置vimrc文件:

     set nocompatible               " be iMproved
     filetype off                   " required!       /**  從這行開始,vimrc配置 **/

     set rtp+=~/.vim/bundle/vundle/
     call vundle#rc()

     " let Vundle manage Vundle
     " required! 
     Bundle "gmarik/vundle"

     " My Bundles here:  /* 插件配置格式 */
     "   
     " original repos on github (Github網(wǎng)站上非vim-scripts倉庫的插件,按下面格式填寫)
     Bundle "tpope/vim-fugitive"
     Bundle "Lokaltog/vim-easymotion"
     Bundle "rstacruz/sparkup", {"rtp": "vim/"}
     Bundle "tpope/vim-rails.git"
     " vim-scripts repos  (vim-scripts倉庫里的,按下面格式填寫)
     Bundle "L9"
     Bundle "FuzzyFinder"
     " non github repos   (非上面兩種情況的,按下面格式填寫)
     Bundle "git://git.wincent.com/command-t.git"
     " ... 

     filetype plugin indent on     " required!   /** vimrc文件配置結(jié)束 **/
     "                                           /** vundle命令 **/
     " Brief help
     " :BundleList          - list configured bundles
     " :BundleInstall(!)    - install(update) bundles
     " :BundleSearch(!) foo - search(or refresh cache first) for foo 
     " :BundleClean(!)      - confirm(or auto-approve) removal of unused bundles
     "   
     " see :h vundle for more details or wiki for FAQ 
     " NOTE: comments after Bundle command are not allowed..

PluginInstall                 安裝已經(jīng)配置的插件
PluginSearch                  查找vim-scripts倉庫中的插件
PluginClean                   清除配置文件中不存在的插件

打造python IDE需要的相關(guān)插件

Bundle "scrooloose/nerdtree"
Bundle "davidhalter/jedi-vim"
Bundle "SuperTab"

vim命令備忘
$ vim -u NONE -N                   (啟動(dòng)時(shí)不加載自己的vimrc,并且不進(jìn)入兼容模式)

c 與 d                              都是刪除,c操作完成后會(huì)進(jìn)入插入模式,而d會(huì)留在普通模式。
daw                                 刪除當(dāng)前單詞(delete a word)。
nyy                                復(fù)制n行,前面可以加小寫字母,定義不同的緩沖區(qū)。
nyw                                復(fù)制n個(gè)單詞,前面可以加小定字母,定義不同的緩沖區(qū)。                                 
y^ 和 y$                            從當(dāng)前光標(biāo)復(fù)制到行首或行尾。
[a]p 或 [a]P                        粘貼指定剪切板中指定緩沖區(qū)到當(dāng)前行下方或上方。
R                                  覆蓋模式。
J                                  合并當(dāng)前行與下一行。
n+  和  n-                         n為數(shù)字,光標(biāo)下移或上移n行。
nG  和  G                          n為行號(hào),光標(biāo)移到指定行,無行號(hào)時(shí)(可以理解為無窮大),光標(biāo)移至最后行。

.                                  重復(fù)上次修改。
u                                  與.命令執(zhí)行相反的操作。
U                                  撤銷當(dāng)前行的所有操作。
f{char}/t{char}                    行內(nèi)查找下一處指定字符出現(xiàn)的位置,如果找到,并將光標(biāo)移至指定字符處。
F{char}/T{char}                    行內(nèi)查找上一處指定字符出現(xiàn)的位置,如果找到,并將光標(biāo)移至指定字符處。
;                                  重復(fù)查找上次f命令所查找的字符。
,                                  與;命令執(zhí)行相反的操作。
/                                 文檔中向下查找匹配項(xiàng)。
?                                  文檔中向上查找匹配項(xiàng)。
n                                  重復(fù)查找上次/命令所查找的匹配項(xiàng)。
N                                  與n命令執(zhí)行相反的操作。
:[n,m ]s/target/replacement[/g]    [n->m行內(nèi)](行內(nèi))執(zhí)行替換第一個(gè)匹配項(xiàng)[替換所有]。
:%s/target/replacement[/g]        (文件內(nèi))執(zhí)行替換第一個(gè)匹配項(xiàng)[替換所有]。
*                                  選中光標(biāo)所在單詞。
&                                 重復(fù)執(zhí)行:s命令;回退命令為u。
qx{changes}q                       執(zhí)行一系列修改。
@x                                重復(fù)執(zhí)行qx{}q命令;回退命令為u。
e filename                         編輯名為filename的文件。
復(fù)合命令列表
  C <=> c$                    從光標(biāo)片刪至行尾,并進(jìn)入插入模式。
  s <=> cl                    刪除當(dāng)前字符,并進(jìn)入插入模式。
  S <=> ^c                    刪除整行,并進(jìn)入插入模式。
  I <=> ^i                    光標(biāo)移至行首,并進(jìn)入插入模式。
  A <=> $a                    光標(biāo)移至行尾,并進(jìn)入追加模式。
  o <=> A                 在當(dāng)前行下新起一行,并進(jìn)入插入模式。
  O <=> ko <=> k$a        在當(dāng)前行上新起一行,并進(jìn)入插入模式。
多緩沖區(qū)操作快捷鍵
1、多文件編輯模式
(1)argument list模式,就是在打開Vim編輯器時(shí),攜帶多個(gè)文件路徑參數(shù)。
(2)buffer list模式,就是在進(jìn)入Vim編輯器后,打開多個(gè)緩沖區(qū)進(jìn)行編輯。
2、單一緩沖區(qū)打開多個(gè)文件
:files顯示目前打開了哪些文件
:n切換到下一個(gè)緩沖區(qū)內(nèi)容
:N切換到上一個(gè)緩沖區(qū)內(nèi)容
:2n切換到下下個(gè)緩沖區(qū)內(nèi)容
:bn下一個(gè)緩沖區(qū)內(nèi)容(buffer next)
:bp上一個(gè)緩沖區(qū)內(nèi)容(buffer previous)
3、多個(gè)緩沖區(qū)打開多個(gè)文件
:sp [filename]打開一個(gè)新的緩沖區(qū),如果有filename則內(nèi)容為該文件,否則為當(dāng)前文件
Ctrl+w n新建一個(gè)緩沖區(qū)
Ctrl+w q退出光標(biāo)所在的緩沖區(qū)
Ctrl+w j光標(biāo)移動(dòng)到下一緩沖區(qū)
Ctrl+w k光標(biāo)移動(dòng)到上一緩沖區(qū)
Ctrl+w l光標(biāo)移動(dòng)到右一緩沖區(qū)
Ctrl+w h光標(biāo)移動(dòng)到左一緩沖區(qū)
Ctrl+w v左右切割窗口新建緩沖區(qū)
Ctrl+w s上下切割窗口新建緩沖區(qū)
Ctrl+w o使光標(biāo)所在緩沖區(qū)最大化,其他緩沖區(qū)隱藏
利用vundle方式打造一個(gè)最基本的IDE

下列是.vimrc文件的配置,第一次進(jìn)入vim,執(zhí)行:PluginInstall,會(huì)自動(dòng)安裝所列插件,用vim打開的一python文件,再按F3,你就可以看到一個(gè)基本的IDE了。同時(shí)定義了F5,F(xiàn)6來編譯運(yùn)行c,c++,但其代碼提示還沒有考慮。

set nocompatible                       "進(jìn)入非兼容模式
set rtp+=~/.vim/bundle/vundle/         "vundle的安裝配置
call vundle#rc()

" let Vundle manage Vundle
" required!
Bundle "gmarik/vundle"

" 最基本的插件
Bundle "davidhalter/jedi-vim"         "python插件
Bundle "SuperTab"                     "利用tab鍵進(jìn)行補(bǔ)全
Bundle "ctags.vim"                    "Ctags -R 生成標(biāo)簽
Bundle "taglist.vim"                  "函數(shù)、變量列表
Bundle "winmanager"                   "窗口管理

filetype plugin indent on             "代碼高亮需要的配置

" TagLIst settings.
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1

" winManager settings.
let g:winManagerWindowLayout="FileExplorer|TagList"
" nmap wm :WMToggle

" My Shortcut.
map  :Tlist
map  :WMToggle

"F5編譯和運(yùn)行C程序,F(xiàn)6編譯和運(yùn)行C++程序 
" 請(qǐng)注意,下述代碼在windows下使用會(huì)報(bào)錯(cuò) 
" 需要去掉./這兩個(gè)字符 

" C的編譯和運(yùn)行 
map  :call CompileRunGcc() 
func! CompileRunGcc() 
exec "w" 
exec "!gcc % -o %<" 
exec "! ./%<" 
endfunc 

" C++的編譯和運(yùn)行 
map  :call CompileRunGpp() 
func! CompileRunGpp() 
exec "w" 
exec "!g++ % -o %<" 
exec "! ./%<" 
endfunc 

set autowrite   " Automatically save before commands like :next and :make
set hidden      " Hide buffers when they are abandoned
set mouse=a     " Enable mouse usage (all modes)
set hls
set shortmess=atI "啟動(dòng)時(shí)不顯示幫助烏干達(dá)兒童提示

" Prefer spaces to tabs
set tabstop=4
set shiftwidth=4
set expandtab
set nu!

YouCompleteMe替換代碼提示

后來發(fā)現(xiàn)YCM是比較強(qiáng)大的代碼提示插件,試著配置了一下,感覺不錯(cuò),以下是一些需要注意的地方:

"插件部分換成下面的,YCM已經(jīng)集成了SuperTab,語法檢查python可以用 davidhalter/jedi 。 
Bundle "Valloric/YouCompleteMe"  
Bundle "ctags.vim"
Bundle "taglist.vim"
Bundle "winmanager"

使用命令 PluginInstall,完成插件的安裝,這樣其它插件就都算安裝好了,除了YCM。

編譯語法補(bǔ)全模塊,在終端下執(zhí)行以下命令:
$HOME/.vim/bundle/YouCompleteMe
并執(zhí)行 install.sh --clang-completer

拷貝~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py 到~/下,并做相應(yīng)的修改。
4.相應(yīng)的在~/.vimrc中進(jìn)行一些設(shè)置及快捷鍵的定義,這可以參考上節(jié)的內(nèi)容。

------------------------------------------------------------(分割線,內(nèi)容已完,下面是一些備忘)
clang++ --std=c++0x -stdlib=libc++ new_feature.cpp

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/24806.html

相關(guān)文章

  • Linux學(xué)習(xí)筆記:4.Vim編輯器(1)

    摘要:概述用戶經(jīng)常需要對(duì)系統(tǒng)配置文件進(jìn)行文本編輯,所以至少掌握一種文本編輯器,首選編輯器是。的命令幾乎全部都可以在上使用,安裝了的系統(tǒng),在命令行輸入,實(shí)際啟動(dòng)的是編輯器。 Vi/Vim概述 Linux用戶經(jīng)常需要對(duì)系統(tǒng)配置文件進(jìn)行文本編輯,所以至少掌握一種文本編輯器,首選編輯器是Vi/Vim。幾乎任何一個(gè)發(fā)行版都有Vi或者Vim編輯器。 Vi編輯器可以對(duì)文本進(jìn)行編輯、刪除、查找和替...

    hss01248 評(píng)論0 收藏0
  • Linux學(xué)習(xí)筆記:5.Vim編輯器(2):三種模式和命令

    摘要:的種模式一般模式編輯模式和命令模式。當(dāng)進(jìn)入編輯模式,在屏幕的尾行會(huì)出現(xiàn)插入的字樣。命令模式在一般模式下,輸入或者,即可以進(jìn)入命令模式。在該模式下,我們可以進(jìn)行搜索保存替換退出顯示行號(hào)等操作。命令如下表所示。 Vim的3種模式:一般模式、編輯模式和命令模式。 一般模式 當(dāng)我們是用vim filename編輯一個(gè)文件的時(shí)候,默認(rèn)進(jìn)入該文件的一般模式。 打開文件的命令有很多,如下圖所示...

    Benedict Evans 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<