GVIM操作


括號自動補全 :

inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {}<ESC>i

 

補全功能 :

crtl + p : 向上選擇自動補全的數據

crtl+n   : 向下選擇自動補全的數據

 

關閉文件並推出

命令模式:crtl + wq

命令鍵上下左右移動 :

左下上右 : HJKL

 

撤銷命令 :

命令模式  u       插入模式 ctrl + z

 

編輯模式 --》插入模式:

  i :inset,在光標所在處的前方輸入

  a:append,在光標處的后方輸入

  o:在光標所在出的下方的行首新打開一個新行

  I:在光標所在行的行首輸入

  A:在光標所在行的行尾輸入

  O:在光標所在出的上方打開一個新行

 

插入模式 --》編輯模式

  ESC

 

編輯模式 --》末行模式

 

末行模式 --》編輯模式

ESC

 

保存並退出 :

  :q 退出

  :q!強制推出

  :wq保存並推出

  :w 保存

  :x保存並推出

  ZZ保存並推出

 

字符間跳轉:

  h    左

  j    下

  k    上

  l    右

 

單詞之間的跳轉 :

  w   下一個單詞的詞首

  b   當前或前一個單詞的詞首

  #commmand  #指定的個數

  5k      向上跳5行

 

行首行尾跳轉 :

  ^  跳轉至行首的第一個非空白字符

  0  跳轉至行首

  $  跳轉至行尾 

 

行間調轉 :

  1G  第一行

  G  最后一行

  #G  跳轉至指定的行----4G第4行

翻屏 :

  ctrl+f  向文件尾翻屏一屏

  ctrl+b 向文件首部翻一屏

  ctrl+d 向文件尾部翻半屏

  ctrl+u   向文件首部翻半屏

字符編輯

  x  刪除光標所在出的字符

  #x  刪除光標所在出的#個字符

 

刪除命令

  d 刪除命令,可結合光標跳轉字符,實現范圍刪除

  d$    刪除至行尾

  d0    刪除至行首

  dd    刪除整行

  #dd    刪除光標起始的#行

粘貼命令 

  p    如果緩沖區的內容為正行,則粘貼在當前光標所在行的下方;否則,粘貼在當前光標的后方

  P    與p相反

 

復制命令

  y    復制,工作行為類似與d命令

  yy    復制一整行

  

修改命令

  c    類似於d命令,但是操作之后會自動轉為插入模式

 

可視化模式

  v    按字符選定

  V    按行選定

 

撤銷操作 

  u(undo)  撤銷操作   

  #u      撤銷前#次操作

 

恢復之前的撤銷

  Ctrl+r    

重復執行前一個編輯操作

  .

列操作

  1、進入可視化模式

  2、用鼠標選中指定區域

  3、插入模式 輸入想要的字符

  4、esc進入命令模式后,就完成了列操作

 

"選中單詞聲明為wire
:map ;w ebmsd^:.s/^ *\([a-zA-Z][a-zA-Z0-9_]*\).*$/wire \1;/<cr><F8>e*N`sj
"選中單詞聲明為reg
:map ;r ebmsd^:.s/^ *\([a-zA-Z][a-zA-Z0-9_]*\).*$/reg \1;/<cr><F8>e*N`sj
"選中單詞聲明為input
:map ;i ebmsd^:.s/^ *\([a-zA-Z][a-zA-Z0-9_]*\).*$/        input   \1,/<cr><F7>e*N`sj
:map ;ow ebmsd^:.s/^ *\([a-zA-Z][a-zA-Z0-9_]*\).*$/        output  wire    \1,/<cr><F7>bb*N`sj
:map ;or ebmsd^:.s/^ *\([a-zA-Z][a-zA-Z0-9_]*\).*$/        output  reg     \1,/<cr><F7>bb*N`sj

 在操作時,命令模式要選中字符的第一個字母

 這是從網上找的一些指令,可以簡化步驟

 

"例化光標選中變量
:map <F2> ebmsd^:.s/^ *\([a-zA-Z][a-zA-Z0-9_]*\).*$/        .\1                        (\1                        ),/<cr>*^24ldw24ldw`sj
"生成當前時間
:imap <F2> <C-R>=strftime("%c")<CR>
"調整格式以便對齊(例化后的)
:map <F6> :s/^ *\./        ./<cr>^f(i                              <ESC>f)i                               <ESC>^24ldw24ldwa  <ESC>hdwj
"調整module定義中的變量,逗號和注釋的位置
:map <F7> 0f,bi                          <ESC>^24ldwf,i                                 <ESC>^48ldwa        <ESC>dw^j
"調整reg,wire所在行的變量,逗號和注釋的位置
:map <F8> 0f;bi                                <ESC>032ldwf;i                                    <ESC>064ldwa        <ESC>dw^j

F2 頂層例化中作為模板     F7 更改module里面的排版  F8  更改reg , wire里面的排版   

注意:用F2命令時,必須要用模板里的規格例化。否則無法生成模板

 地址定界 :

    末行模式:#  表示定在第幾行

         $ 表示最后一行

 

 查找 :

    末行模式:/###     從光標位置開始,向尾部查找###

         :/###    從光標位置開始,向文件頂部查找###

 

查找並替換:

    :set nohlsearch  關閉查找高亮

    :set hlsearch     打開查找高亮

       :%s/vivian/sky/  用sky  替換 vivian

 

 關閉多窗口:

    :close

    :q!

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM