国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

如何高效使用Vim
PHP中文網(wǎng)
PHP中文網(wǎng) 2017-05-16 16:42:38
0
18
1827

新手剛接觸Vim,希望大蝦們推薦一些入門的練習教程,現(xiàn)在還只是把Vim當成普通編輯器使用..還有,按Esc回到普通模式好像有點麻煩,要伸到鍵盤的左上角,有沒有什么簡便的方法呢?先謝謝了!

PHP中文網(wǎng)
PHP中文網(wǎng)

認證0級講師

全部回復(18)
為情所困

用vim 快兩年了 看過教程也不少,總的來說還是得自己多練習,當自己覺得有需要的時候,再添加功能。這里分享個看過的最好的教程,出自貼吧的某個朋友,寫的很好

學會盲打

配置文件先從最簡開始,在 伍級 前別考慮配置插件,千萬別硬背命令,千萬別直接取用別人的配置文件
基本還是長時間待在 insert mode 下,會覺得 vim 也不過爾爾,也不好用,

這個時候,編輯效率可能比用原來的一般編輯器還低,別人問使用什么編輯器時,
多半會回答:vim 再配一個 nano, kate, kwrite, gedit, geany 或其他 IDE 之類的

養(yǎng)成習慣待在 normal mode(normal 不是白叫的),只有輸入時才進入 insert mode,輸入完馬上 <ESC>
學習 normal mode 下的移動命令,這個時候輸入文字標準流程:

  1. normal mode 移動命令準確定位光標(記住,搜索命令也是移動命令)
  2. 進入 insert mode 編輯(進入 insert mode 別只用 i,要習慣視乎情況,使用 I a A o O s C)
  3. <ESC> 返回 normal mode

這個時候,編輯效應會恢復到和你之前用的普通編輯器一樣,甚至有少量提高

學習什么是 operator(命令 d y c 等),什么是 motion(所有能移動光標的命令,h j k l w e f t / ? 等等),
學習 operator + motion 的方式,如 ct. (將當前光標到 . (點) 之間的內(nèi)容刪除并進入 insert mode 準備修改)
學習基礎的 Ex 命令,:s 什么的

這個時候,編輯效率開始明顯提高,在用其他一般編輯器時,會開始覺得不習慣和低效率

學習 text-objects,知道 operator + text-objects 的方法,可進行手術(shù)般精準的定位和修改,
既然你主要用在 c/c++,舉一些在這個情況下有用的例子:

ci" (由 change operator 和 text-object i" 組成)

這個命令會找到當前光標所在行的下一個" 括起來的字符串,清除引號里面的內(nèi)容,并進入insert mode 以方便修改
用起來比解釋起來簡單,你可用const char* hello = "Hello world ."; 類似這樣的代碼來測試

yaB (由 yank operator 和 text-object aB 組成)

這個命令會將當前光標所在的代碼塊({} 括起來的內(nèi)容,包括花括號本身)復制到默認register,
方便在其他地方用p 貼出來(當然,寫代碼不鼓勵copy and paste),你可用用任何一個{} 來測試,然后找另外一個地方p

gUiw (由 make uppercase operator 和 text-object iw 組成)

這個命令會將當前光標所在的 word 全部變成大寫
如將 max_size 變成 MAX_SIZE

這個時候,開始知道為什么 vim 精確高效,而且并不是因為全鍵盤無需鼠標

習慣 operator + motion 后,發(fā)現(xiàn) . 命令很好用,多注意使用可重復的命令組合
練習使用書簽定位,q 記錄宏,使用多個 register,使用 args,使用 buffer
使用其他的 Ex 命令

這個時候,想不起沒用 vim 之前的日子是怎么過來的

開始 map 經(jīng)常反覆使用的命令,開始寫 vimscript,開始知道自己需要什么樣的插件
試推薦幾個:
pathogen 或 vundle,tagbar, CtrlP, Gundo, UltiSnips,surround,Syntastic,Conque,ack.vim,vim-commentary,fugitive(如果是 git 用戶)
還有不少,但多對 c/c++ 沒直接幫助,就不提了

這個時候,對其他編輯器提不起興趣,或許 emacs 除外

擁有完全個人化的 vimrc,基本進入化境,成為江湖上的傳說
常有旁人觀察你編輯后,激起雄心壯志想要學 vim,嘗試幾個小時候因為覺得熱鍵太不"人性化”而放棄,
但偶爾會向人提起他見過江湖上有你這么一號人物

僅有的幸福

我使用vim有一年了.日前正要寫一個vim的cheat sheet,就提前在這里寫下吧。

首先 vim != gvim

1.怎么編輯

任何時候按下ESC鍵會進入普通模式.普通模式下可以按下: 來輸入命令.

普通模式按下i或a 進入插入模式,這時你可以編輯文本。

2.簡單編輯

  • 移動光標 :你可以直接用方向鍵來移動光標, 更vim些的做法是hjkl
  • 保存文件,普通模式下 :w .退出編輯 :q ,強行保存 :w! 強行退出: :q!
  • 撤銷操作 :u 或者普通模式下按下u

3.更快的編輯

現(xiàn)在你可以用vim寫東西了.

我們需要更快的編輯

1.快速的定位光標:

  • ^ 跳到行首 (類似功能鍵Home)
  • $ 跳到行尾(類似功能鍵End)
  • :n 跳到第n行
  • :$ 跳到最后一行

2. 快速的編輯:
在普通模式下:

  • dd 刪除一行
  • yy 復制一行
  • p 粘貼
  • r 單個字符替換

3. 更精細的粘貼復制:

  • m,nd - 快速刪除第m到第n行 (delete)
  • m,ny - 復制第m到第n行 (yank)
  • m,nmt - 第m行到第n行剪切到第t行(move)
  • m,ncot -第m行到第n行復制到第t行(copy to)

4. 搜索
普通模式下按下 / 向下搜索, 按下?向上搜索
5.對齊
gg=G 快速對齊整個文件
6.標簽操作

  • :tabnew mytab 新建一個標簽mytab
  • :tabn 跳到下一個標簽
  • :tabp 跳到上一個標簽
  • 用gt或gT在普通模式下跳轉(zhuǎn)到下一個和上一個標簽

7. 切割窗口操作

  • :split 水平方向切割一個窗口
  • :vsplit 豎直方向切割一個窗口
  • 用Ctrl-w+方向鍵 在各個切割窗口之間切換。

4.讓vim更懂你

有沒有注意到我們以上一直沒有提到vimrc和插件。

現(xiàn)在到時候了。

比如,我們coding時喜歡顯示行號:命令模式下:set nu或者 :set number

關(guān)于vimrc, 有很多值得研究商討的地方,你可以參考下我的vimrc, 我都進行了詳細的中文注釋

5.關(guān)于插件和主題

vim 的配色有三個比較出名,solarized , molokai , badwolf

關(guān)于vim 的插件,只有這么幾句需要說:

  • 一定要使用vundel來管理插件。
  • 不要修改別人的插件,要么你就自己fork了修改,然后bundle你的插件。
  • 可以研究下怎么用git submodule來管理你的插件。

好了,吃飯去。。到此。

伊謝爾倫

無他,唯手熟耳。

" Arrow keys are evil
map <up>    <nop>
map <down>  <nop>
map <left>  <nop>
map <right> <nop>

另外,Ctrl-[ 也可以退出編輯模式。

Peter_Zhu

嗨!我提供一個非常棒的方法:
玩 vim 游戲!

如果你是使用 Ubuntu 系統(tǒng),請輸入:

  1. sudo apt-get install vimtutor
  2. vimtutor

或者透過一個很酷的網(wǎng)頁 vim 游戲:

vim 冒險家
http://vim-adventures.com/

為情所困

hey~! 我實在是不知道怎么用 vim, 只有我的手知道. (熟能生巧)

不喜歡用 esc 可以用 <c-c> 或者 <c-[> 效果一樣.

多看 vim tips, 多學學各種 vim 插件.

話說回來了, 人家只是個文字編輯器而已, 別本末倒置了.

分割線

順便推薦一個 vim 的插件集合, 叫做 Janus, 它對自己的定義是 Janus: Vim Distribution. 它提供了一個完整的, 必需的 vim 基本設置和大多數(shù)人都需要的插件, 以及繼續(xù)自定義 vim 的解決方案. 多說無益, RTFM.

習慣沉默

用vim主要是自己定義各種功能,使用各種插件。 主要是配置vimrc, 你可以參考別人的vimrc,在github上搜索vimrc,比如https://github.com/search?q=vimrc&ref... ,看看別人是怎么配置的,改成自己的就ok了。

esc可以用jj 或者 jk 代替。

inoremap jk <ESC> 
為情所困

看完自帶的教程(有中文的,下載鏈接,下載需要翻墻),但是不用死記硬背,只要記住有哪些功能就可以了。

遇到似乎可以用到這些功能的地方就開始查閱教程,然后慢慢的你查的會越來越少,越來越少,慢慢的你就會了。

舉個例子:

Hello World foobar

如果你想刪除foobar ,那么你可以用ffdw這個組合命令(f是在一行內(nèi)查詢,后面那個f就是foober 的首字母,這是命令的第一部分,將光標移到foobar這個單詞上面,d是刪除,w是選中一個詞,組合起來就是刪除一個詞),非??旖?,而且都是簡單命令的組合。

然后如果你想要處理比較復雜的場景,比如

foobar
foobar
foobar
foobar

只把前面的foo 刪掉,留下那個bar,這時候雖然vim提供了處理的功能,但是我們不用管,用宏錄制的功能(能保存你的操作,你可以簡單的重復)把簡單的命令組合起來,就可以做很多很復雜的工作了

比如上面這個例子(手頭暫時沒有Vim,憑記憶可能有錯),

qa (將命令錄制到a這個剪貼板上{vim有好多個剪貼板,比如abcdefg……})
3x (重復三遍刪除操作,將foo刪掉,其實也可以用f命令來搭配,對復雜的情況更適用)
0 (移動到行首)
j (移動到下一行)
q (停止錄制)
3@a (重復三遍剛才錄制的命令,3就是將命令重復3遍,@就是運行,a就是剛剛保存的那個剪貼板)

這就解決了。

Vim 根本不難,原因在于90%的狀況都只要很簡單的一些命令的靈活搭配。

剩下10%的狀況查教程也很容易知道。你讓一個會用Vim的人默寫命令,在對比所有的命令,會發(fā)現(xiàn)人家只知道很小一部分。

我想大聲告訴你

上面的人說的都很詳細了,不過對于esc鍵建議用改鍵之類的換成Caps Lock這樣按起來要方便很多。

據(jù)說RMS寫Emacs的時候的鍵盤是這樣的
很明顯Esc和Control的距離要很舒服的,如果有錢也入一塊HHKB吧。

阿神

伊謝爾倫

http://vim-adventures.com/
根據(jù)vim操作寫的小游戲,游戲同時練習vim操作。

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板