国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

利器系列-更高效的Vim

tuomao / 553人閱讀

摘要:截圖安裝你需要一個(gè)有支持的版本請(qǐng)使用來(lái)檢查依賴平臺(tái)依賴平臺(tái)的源自帶的版本較舊,推薦自行安裝依賴平臺(tái)下載文件到用戶主目錄打開(kāi)打開(kāi)它將會(huì)自動(dòng)安裝插件請(qǐng)耐心等待它完成或者你可以使用下面的命令來(lái)自行安裝享受你的并個(gè)性化它

截圖

安裝

(你需要一個(gè)有Python支持的Vim版本. 請(qǐng)使用 vim --version | grep +python 來(lái)檢查)

依賴(Debian/Ubuntu 平臺(tái))

`sudo apt-get install python vim exuberant-ctags git`

`sudo pip install dbgp vim-debug pep8 flake8 pyflakes isort`

依賴(RedHat/CentOS 平臺(tái))

CentOS 6.7的yum源自帶的Python版本較舊,推薦自行安裝Python2.7.

`sudo yum install python vim ctags git`

`sudo pip install dbgp vim-debug pep8 flake8 pyflakes isort`

依賴(Mac OS 平臺(tái))

`brew install python vim git`

`wget http://tenet.dl.sourceforge.net/project/ctags/ctags/5.8/ctags-5.8.tar.gz && tar -zxvf ctags-5.8.tar.gz && cd ctags-5.8 && ./configure && make && sudo make install`

`sudo pip install dbgp vim-debug pep8 flake8 pyflakes isort`

下載vimrc 文件到用戶主目錄

`wget https://raw.githubusercontent.com/tao12345666333/vim/master/vimrc -O $HOME/.vimrc`

打開(kāi) Vim

打開(kāi)Vim, 它將會(huì)自動(dòng)安裝插件. 請(qǐng)耐心等待它完成. 或者你可以使用下面的命令來(lái)自行安裝.

`vim -E -u $HOME/.vimrc +qall`

享受你的Vim并個(gè)性化它吧!

支持特性 插件管理(Vundle)

在這份配置中,使用了Vundle作為插件管理器. Vundle會(huì)自動(dòng)接管 .vim 文件夾,所有配置好的插件將默認(rèn)下載至~/.vim/bundle/, 在使用之前請(qǐng)確保.vim文件夾干凈. Vundle的插件安裝需要觸發(fā) git clone 操作,搜索需要 curl 支持.

配置(截取了部分)
" let Vundle manage Vundle
Bundle "gmarik/vundle"

" ============================================================================
" Active plugins
" You can disable or add new ones here:

" Plugins from github repos:

" Python and PHP Debugger
Bundle "fisadev/vim-debug.vim"
" Better file browser
Bundle "scrooloose/nerdtree"
" Code commenter
Bundle "scrooloose/nerdcommenter"
" Class/module browser
Bundle "majutsushi/tagbar"
" Code and files fuzzy finder
Bundle "kien/ctrlp.vim"
" Extension to ctrlp, for fuzzy command finder
Bundle "fisadev/vim-ctrlp-cmdpalette"
" Zen coding
Bundle "mattn/emmet-vim"
" Git integration
Bundle "motemen/git-vim"
" Tab list panel
Bundle "kien/tabman.vim"
支持操作
命令 解釋
:PluginList 列出所有Plugin
:PluginInstall(!) 安裝/更新Plugin
:PluginSearch(!) foo 搜索foo相關(guān)的Plugin
:PluginClean(!) 清理未使用的Plugin
:PluginUpdate 更新插件
工程文件瀏覽(NERDTree)

在這份配置中, 使用了NERDTree查看文件列表. 你可以在NERDTree中瀏覽和打開(kāi)你文件系統(tǒng)中的目錄或文件. 還可以進(jìn)行文件隱藏和過(guò)濾, 設(shè)置添加書(shū)簽等. 在NERDTree窗口輸入?可獲得操作指南. 這份配置中默認(rèn)過(guò)濾掉了.pyc, .git, .hg, .svn等文件或文件夾的顯示.

配置
" auto open or close NERDTree
autocmd vimenter * if !argc() | NERDTree | endif
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") && b:NERDTreeType == "primary") | q | endif

" NERDTree -----------------------------

" toggle nerdtree display
map  :NERDTreeToggle
" open nerdtree with the current file selected
nmap ,t :NERDTreeFind
" don;t show these file types
let NERDTreeIgnore = [".pyc$", ".pyo$"]
支持操作
快捷鍵 解釋
F3 打開(kāi)/關(guān)閉NERDTree
,t 打開(kāi)NERDTree并選中當(dāng)前文件
語(yǔ)法檢查

在這份配置中, 使用Syntastic插件進(jìn)行語(yǔ)法靜態(tài)檢查. 包括但不限于C/C++/Go/Python/Haskell/Ruby/JavaScript等. 在本配置中對(duì)JavaScript的靜態(tài)檢查使用eslint,可以支持ES6及JSX等, 細(xì)節(jié)可以參考JSLint, JSHint和ESLint的對(duì)比及Vim配置, 想要切換檢查工具只要修改對(duì)應(yīng)位置即可.

配置
" Syntastic ------------------------------

" show list of errors and warnings on the current file
nmap e :Errors
" turn to next or previous errors, after open errors list
nmap n :lnext
nmap p :lprevious
" check also when just opened the file
let g:syntastic_check_on_open = 1
" syntastic checker for javascript.
" eslint is the only tool support JSX.
" If you don"t need write JSX, you can use jshint.
" And eslint is slow, but not a hindrance
" let g:syntastic_javascript_checkers = ["jshint"]
let g:syntastic_javascript_checkers = ["eslint"]
" don"t put icons on the sign column (it hides the vcs status icons of signify)
let g:syntastic_enable_signs = 0
" custom icons (enable them if you use a patched font, and enable the previous 
" setting)
let g:syntastic_error_symbol = "?"
let g:syntastic_warning_symbol = "?"
let g:syntastic_style_error_symbol = "?"
let g:syntastic_style_warning_symbol = "?"
特性

保存時(shí)自動(dòng)進(jìn)行語(yǔ)法靜態(tài)檢查,方便的錯(cuò)誤提示及靈活的可擴(kuò)展性.

支持操作
快捷鍵 解釋
e 打開(kāi)錯(cuò)誤列表
n 移動(dòng)到下一個(gè)錯(cuò)誤位置
p 移動(dòng)到上一個(gè)錯(cuò)誤位置
Git支持

在這份配置中, 使用vim-fugitivevim-signify做Git方面的支持. 可以進(jìn)行常用的git操作及優(yōu)雅的狀態(tài)提示等(目前支持githg).

配置
" Signify ------------------------------

" this first setting decides in which order try to guess your current vcs
" UPDATE it to reflect your preferences, it will speed up opening files
let g:signify_vcs_list = [ "git", "hg" ]
" mappings to jump to changed blocks
nmap sn (signify-next-hunk)
nmap sp (signify-prev-hunk)
" nicer colors
highlight DiffAdd           cterm=bold ctermbg=none ctermfg=119
highlight DiffDelete        cterm=bold ctermbg=none ctermfg=167
highlight DiffChange        cterm=bold ctermbg=none ctermfg=227
highlight SignifySignAdd    cterm=bold ctermbg=237  ctermfg=119
highlight SignifySignDelete cterm=bold ctermbg=237  ctermfg=167
highlight SignifySignChange cterm=bold ctermbg=237  ctermfg=227
支持操作
快捷鍵 解釋
:Git [args] 類似執(zhí)行git命令一樣
:Gstatus 類似git status.在列表中使用-添加/移除文件
:Gcommit [args] 類似 git commit
:Gmerge [args] 類似 git merge
:Gpull [args] 類似 git pull
:Gpush [args] 類似 git push
:Gvdiff [revision] 類似 git push 但是會(huì)切分窗口

更多詳細(xì)的操作可以使用 :help fugitive

Tag支持

在這份配置中,使用了Tagbar做Tag支持,可以顯示當(dāng)前文件中定義的類/變量等.

配置
" Tagbar -----------------------------

" toggle tagbar display
map  :TagbarToggle
" autofocus on tagbar open
let g:tagbar_autofocus = 1
支持操作
快捷鍵 解釋
F4 打開(kāi)Tag列表
超全自動(dòng)補(bǔ)全

在這份配置中, 使用了Neocomplcache作為主要的自動(dòng)補(bǔ)全插件.

配置
" NeoComplCache ------------------------------

" most of them not documented because I"m not sure how they work
" (docs aren"t good, had to do a lot of trial and error to make 
" it play nice)

" Disable AutoComplPop.
let g:acp_enableAtStartup = 0
" Use neocomplcache.
let g:neocomplcache_enable_at_startup = 1
let g:neocomplcache_enable_ignore_case = 1
" Use smartcase.
let g:neocomplcache_enable_smart_case = 1
let g:neocomplcache_enable_auto_select = 1

let g:neocomplcache_enable_fuzzy_completion = 1
let g:neocomplcache_enable_camel_case_completion = 1
let g:neocomplcache_enable_underbar_completion = 1
let g:neocomplcache_fuzzy_completion_start_length = 1
let g:neocomplcache_auto_completion_start_length = 1
let g:neocomplcache_manual_completion_start_length = 1
" Set minimum syntax keyword length.
let g:neocomplcache_min_keyword_length = 1
let g:neocomplcache_min_syntax_length = 1
let g:neocomplcache_lock_buffer_name_pattern = "*ku*"
" complete with workds from any opened file
let g:neocomplcache_same_filetype_lists = {}
let g:neocomplcache_same_filetype_lists._ = "_"
" : completion.
inoremap   pumvisible() ? "" : ""
" Define keyword.
if !exists("g:neocomplcache_keyword_patterns")
    let g:neocomplcache_keyword_patterns = {}
endif
let g:neocomplcache_keyword_patterns["default"] = "hw*"
" Plugin key-mappings.
inoremap      neocomplcache#undo_completion()
inoremap      neocomplcache#complete_common_string()
" , : close popup and delete backword char.
inoremap  neocomplcache#smart_close_popup().""
inoremap  neocomplcache#smart_close_popup().""
inoremap   neocomplcache#close_popup()
inoremap   neocomplcache#cancel_popup()
支持操作
快捷鍵 解釋
使用Tab鍵進(jìn)行待提示項(xiàng)目選擇
取消補(bǔ)全
完成待補(bǔ)全項(xiàng)中共同的字符串
關(guān)閉待選項(xiàng)
關(guān)閉待選項(xiàng)
退出待選項(xiàng)
關(guān)閉待選項(xiàng)
類Tmux的窗口選擇

在這份配置中,使用了vim-choosewin進(jìn)行窗口管理器. 支持類Tmux的操作.

配置
" Window Chooser ------------------------------

" mapping
nmap  -  (choosewin)
" show big letters
let g:choosewin_overlay_enable = 1
支持操作
快捷鍵 解釋
- 開(kāi)啟窗口選擇
- [ 選擇上一個(gè)tab的窗口
- ] 選擇下一個(gè)tab的窗口

更多操作可以使用 :help choosewin

靈活的Tab管理

在這份配置中使用了TabMan進(jìn)行Tab管理,可以進(jìn)行靈活切換與管理

配置
" TabMan ------------------------------

" mappings to toggle display, and to focus on it
let g:tabman_toggle = "tl"
let g:tabman_focus  = "tf"
支持操作
快捷鍵 解釋
tl 開(kāi)啟/關(guān)閉tab管理
tf 將光標(biāo)移動(dòng)到tab管理窗口
優(yōu)雅的狀態(tài)欄

在這份配置中,使用了Airline提供更多狀態(tài)欄支持.

配置
" Airline ------------------------------

let g:airline_powerline_fonts = 1
let g:airline_theme = "bubblegum"
"let g:airline#extensions#tabline#enabled = 1
"let g:airline#extensions#tabline#left_sep = " "
"let g:airline#extensions#tabline#left_alt_sep = "|"
let g:airline#extensions#whitespace#enabled = 1

" to use fancy symbols for airline, uncomment the following lines and use a
" patched font (more info on the README.rst)
if !exists("g:airline_symbols")
   let g:airline_symbols = {}
endif

let g:airline_left_sep = ""
let g:airline_left_alt_sep = ""
let g:airline_right_sep = ""
let g:airline_right_alt_sep = ""
let g:airline_symbols.branch = ""
let g:airline_symbols.readonly = ""
let g:airline_symbols.linenr = ""
支持特性

可以顯示分支,語(yǔ)法靜態(tài)檢查結(jié)果等.

自動(dòng)插入頭部

在這份配置中寫了個(gè)小函數(shù)根據(jù)新建的不同類型的文件,自動(dòng)插入頭部,支持python, ruby, bash等.

Markdown實(shí)時(shí)預(yù)覽

在這份配置中, 使用了vim-instant-markdown和vim-markdown做Markdown格式的支持,可以支持實(shí)時(shí)預(yù)覽等特性.

此功能需要有node環(huán)境支持,可以執(zhí)行 npm -g install instant-markdown-d 進(jìn)行安裝.

配置
" Vim-markdown ------------------------------

" Disabled automatically folding
let g:vim_markdown_folding_disabled=1
" LeTeX math
let g:vim_markdown_math=1
" Highlight YAML frontmatter
let g:vim_markdown_frontmatter=1

" Vim-instant-markdown -----------------

" If it takes your system too much, you can specify
" let g:instant_markdown_slow = 1
" if you don"t want to manually control it
" you can open this setting
" and when you open this, you can manually trigger preview
" via the command :InstantMarkdownPreview
let g:instant_markdown_autostart = 0
支持操作
快捷鍵 解釋
:InstantMarkdownPreview 手動(dòng)觸發(fā)markdown文件的預(yù)覽
多游標(biāo)選擇、編輯等

在這份配置中, 可以在高亮某單詞時(shí), 通過(guò)使用 Ctrl-n 或者 Ctrl-p 進(jìn)行多游標(biāo)選擇, 然后進(jìn)行編輯或修改等操作.

快速文件查找

在這份配置中, 可以通過(guò)使用,R進(jìn)行全文查找或者,r進(jìn)行快速查找, 或者在當(dāng)前字符串上使用,wR以及,wr來(lái)進(jìn)行全文查找或者快速查找.

快速注釋

使用NERDCommenter插件完成快速注釋, 可以通過(guò)ci進(jìn)行快速注釋.

Python 支持

完備的Python支持, 可以自動(dòng)識(shí)別當(dāng)前是系統(tǒng)環(huán)境或虛擬環(huán)境, 使用:Isort可智能對(duì)導(dǎo)入包進(jìn)行排序, 使用:PymodeLintAuto可自動(dòng)格式化.

除了上述列出的功能以外, 還有很多方便的特性,可以大大提升效率,在使用中慢慢體會(huì)吧!有問(wèn)題可以在tao12345666333/vim on github 提issue


可以通過(guò)公眾號(hào) TheMoeLove 和我聯(lián)系

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/24883.html

相關(guān)文章

  • 壓箱底寶藏!程序員必不可少8款辦公利器

    摘要:工欲善其事,必先利其器。對(duì)于程序員來(lái)說(shuō),一款得心應(yīng)手的好工具能夠讓開(kāi)發(fā)工作效率倍增。這就像下的和下的,能夠?qū)崿F(xiàn)不同應(yīng)用程序之間的切換。并不單純的是一款標(biāo)簽頁(yè)搜索工具,它能夠在使用過(guò)程中掛起未使用的選項(xiàng)卡,以此來(lái)釋放內(nèi)存,提高性能。 工欲善其事,必先利其器。 對(duì)于程序員來(lái)說(shuō),一款得心應(yīng)手的好工...

    LiuZh 評(píng)論0 收藏0
  • 7種提高工作效率Vim操作技巧

    摘要:本文首發(fā)于姐的教程網(wǎng)種提高工作效率的操作使用技巧,授權(quán)我原創(chuàng)發(fā)布。宏使用命令重復(fù)執(zhí)行一些比較簡(jiǎn)單的任務(wù)時(shí)非常高效,但是當(dāng)需要執(zhí)行的操作比較復(fù)雜時(shí),宏是更理想的選擇。每執(zhí)行一次宏就會(huì)把當(dāng)前行替換成的形式并自動(dòng)將光標(biāo)移到下一行。 本文首發(fā)于VV姐的vim教程網(wǎng) 7種提高工作效率的Vim操作-Vim使用技巧(6),授權(quán)我原創(chuàng)發(fā)布。 Vim一直被認(rèn)為是一種非常高效的文本編輯器,但是對(duì)于普通用戶...

    Travis 評(píng)論0 收藏0
  • Gulp.js:比 Grunt 簡(jiǎn)單自動(dòng)化項(xiàng)目構(gòu)建利器

    摘要:是一款基于任務(wù)的設(shè)計(jì)模式的自動(dòng)化工具,能給你的開(kāi)發(fā)效率來(lái)一次飛躍。示例配置實(shí)現(xiàn)完整的自動(dòng)編譯并刷新網(wǎng)頁(yè)官方網(wǎng)站使用文檔插件列表 Gulp 是一款基于任務(wù)的設(shè)計(jì)模式的自動(dòng)化工具,能給你的開(kāi)發(fā)效率來(lái)一次飛躍。 在很多場(chǎng)合都會(huì)聽(tīng)到前端工和 node 程師推薦 Grunt 來(lái)實(shí)現(xiàn)項(xiàng)目的自動(dòng)化,自動(dòng)化可以自動(dòng)完成 javascript/coffee/sass/less 等文件的的測(cè)試、檢查、合并...

    Lsnsh 評(píng)論0 收藏0
  • 下個(gè)時(shí)代前端研發(fā),效率還能提升。PxCook 3.0,最高效設(shè)計(jì)研發(fā)利器

    摘要:相比于之前更加高效,易用。同時(shí)也是我們個(gè)種子用戶群呼聲最高的。首先的調(diào)整就是把智能標(biāo)注的圖標(biāo)放在了左側(cè),體現(xiàn)從屬關(guān)系。戲太足的開(kāi)發(fā)小隊(duì)設(shè)計(jì)的初衷,是在不打擾設(shè)計(jì)師的前提下,提供完整的項(xiàng)目管理與呼聲最高的畫(huà)板功能。 這世上哪有什么天才,有的人只是把大家設(shè)計(jì)標(biāo)注、寫前端的時(shí)間拿來(lái)喝咖啡,和思考罷了 showImg(https://segmentfault.com/img/bVUhyy?w=...

    marek 評(píng)論0 收藏0

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

0條評(píng)論

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