亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

VIM實用基本操作技巧

2019-11-14 15:59:30
字體:
來源:轉載
供稿:網友

文本編輯器有很多,圖形模式下有gedit、kwrite等編輯器,文本模式下的編輯器有vi、vim(vi的增強版本)和nano。vi和vim是linux系統中最常用的編輯器。有人曾這樣的說過在世界上有三種人:一種是使用Vi的,另一種是使用是Emacs的,剩下的是第三種人。

 

 ?。ㄒ唬┏跫墏€性化配置你的vim

  1、vim是什么?

  vim是Vi IMPRoved,是編輯器Vi的一個加強版,一個極其強大并符合IT工程師(程序員、運維)習慣的編輯器。如果你是一名職業的SE,那么一定在尋找一款出色的能夠自由定制、滿足靈活編輯功能的編輯器。那么答案,就是vim或者Emacs。

  2、配置文件在哪?

  Windows系統的配置文件是vim安裝目錄下的vimrc文件。

  Linux系統,RHEL和CentOS的配置文件是/etc/vimrc,Debian和Ubuntu的配置文件是/usr/share/vim/vimrc。

  Mac OS X的配置文件是/usr/share/vim/vimrc。

  3、vimRC中的RC是什么意思?

  為什么把這么個沒有意義的問題也列出來?原因很簡單,就是我在接觸vim之初第二個想問的問題就是這個(第一個就是上面的“1”)。一般在運行某個軟件、環境或工具之初,要初始執行的一些命令,稱為Run Commands,即RC。根據Wikipedia.org的記載,RC縮寫的用法源自MIT的相容分時操作系統(Compatible Time-Sharing System,CTSS)[參考1]。所以以后如果你看到了SystemRC或者ScreenRC,也就知其緣由了。

  4、三種基本模式

  在《大家來學vim》中提到vim有6+5種模式,但除了細分程度不同外,實際上常用的只有3種模式:Normal Mode、Insert Mode和Command-line Mode。

  從Normal Mode進入Insert Mode,可以按i、I、a、A、o、O、r、R即可。其中i和I表示插入(Insert),r和R表示替換(replace)。

  從Insert Mode進入Normal Mode,只需要按ESC鍵即可。

  從Normal Mode進入Command-line Mode,可以按“:”、“/”、“?”。其中“:”表示輸入vim命令,“/”表示后面輸入要向下搜索的字符串,“?”表示后面輸入要向上搜索字符串。

  從Command-line Mode進入Normal Mode,只需要按ESC鍵即可了。

  你可以把Normal Mode理解為常態,進入其他任何一種模式,需要某種特殊方式,而從其他特殊模式回到Normal Mode,就按ESC鍵即可。

  5、vim中那些最最常用的配置

  當你嘗試去google一些其他人的vimrc配置時,你一定會找到一篇叫做《The ultimate vim configuration》的文章,不過它的作者,Amix后來在他的博客上提到[參考2],這份在google搜索vimrc會排在前十的vim配置文件,如今已經過時了,所以他提供了一些更新信息。

 ?。?)顏色設置

  syntax on       “開啟代碼高亮

  syntax off      “關閉代碼高亮

  syntax enable   “開啟代碼高亮

 ?。?)搜索設置

  set hlsearch    “開啟搜索高亮

  set nohlsearch  “關閉搜索高亮

  set incsearch   “輸入搜索字符串的同時進行搜索

  set ignorecase  “搜索時忽略大小寫

 ?。?)用戶界面

  set showmode        “開啟模式顯示

  set ruler           “開啟光標位置提示

  set number      “顯示行號

  set nonu            “不顯示行號

  set cursorline      “強調光標所在行

  set cmdheight=1 “命令部分高度為1

 ?。?)編輯輔助配置

  set autoindent      “自動縮進

  set noautoindent    “不自動縮進

  set smartindent     “智能縮進

  set autoread        “當文件在外部被改變時,vim自動更新載入

  set showmatch       “顯示匹配的括號

  參考:

  [1]Run Commands,http://en.wikipedia.org/wiki/Run_commands

  [2]The Ultimate vim Configuration(vimRC),http://amix.dk/blog/post/19486

 ?。ǘ┏S玫臓顟B切換按鍵

  1、Normal Mode -> Insert Mode

  i 小寫字母i,在光標位置插入

  a 小寫字母a,在光標的下一個位置插入

  I 大寫字母I,在光標所在行的第一個非空格處插入

  A 大寫字母A,在光標所在行的最后一個字符處插入

  o 小寫字母o,在光標所在行的下一行處插入新行

  O 大寫字母O,在光標所在行的上一行處插入新航

  r 小寫字母r,替換光標所在處的字符一次

  R 大寫字母R,持續替換光標所在處的字符,直到按下ESC

  2、Normal Mode -> Command-line Mode

  :w 保存文件

  :w! 強制保存文件(前提是用戶有修改文件訪問權限的權限)

  :q 退出緩沖區

  :q! 強制退出緩沖區而不保存

  :wq 保存文件并退出緩沖區

  :ZZ  保存文件并且退出

  :wq! 強制保存文件并退出緩沖區(前提是用戶有修改文件訪問權限的權限)

  :w <filename> 另存為名為filename文件

  :n1,n2 w <filename> 將n1行到n2行的數據另存為名為filename文件

  : x 如果文件有更改,則保存后退出。否則直接退出。

  3、Insert Mode -> Normal Mode

  按下ESC鍵

  4、Command-line -> Normal Mode

  按下ESC鍵

 ?。ㄈ┏S霉鈽艘苿影存I

  1、光標字符操作

  j 向下

  k 向上

  h 向左

  l 向右

  $ 光標移動到行尾(End),注意要按Shift鍵

  0 光標移動到行首(Home)

  ^ 光標移動到行首第一個非空白字符(Home),注意要按Shift鍵

  2、光標詞操作

  w 光標移動到后一詞的詞首

  W 光標移動到后一詞的詞首且忽略標點符號

  e 光標移動到后一詞的詞尾

  E 光標移動到后一詞的詞尾且忽略標點符號

  b 光標移動到前一詞的詞首

  B 光標移動到前一詞的詞首且忽略標點符號

  3、光標句操作

  ) 光標移動到后一句的句首

  ( 光標移動到前一句的句首

  % 配合“(”和“)”使用,尋找相匹配的另一半

  4、光標行操作

  G 光標移動到文檔的最后一行的第一個非空白字符

  nG 光標移動到文檔的第n行,相當于”:n”

  gg 光標移動到文檔的第1行的第一個非空白字符,相當于”1G”,也相當于”:1″

  <N> 光標向下移動N行

  5、光標段操作

  } 光標移動到下一段的段首

  { 光標移動到上一段的段首

  % 配合“(”和“)”使用,尋找相匹配的另一半

  6、光標頁操作

  Ctrl+f 向下翻頁(Pagedown)

  Ctrl+b 向上翻頁(Pageup)

  Ctrl+d 向下翻半頁

  Ctrl+u 向上翻半頁

  H 光標移動到目前顯示頁的第一行

  M 光標移動到目前顯示頁的中間行

  L 光標移動到目前顯示頁的最后一行

  7、光標自由操作

  Ctrl+o 回到光標的上一位置

 ?。ㄋ模┏S镁庉嫴僮靼存I

  1、刪除操作(delete)

  dd 刪除光標所在行

  ndd 刪除從光標所在行開始,向下的n行

  d1G 刪除從光標所在行開始,到第一行的所有行

  dG 刪除從光標所在行開始,到最后一行的所有行

  d$ 刪除從光標所在位置,到行尾的所有字符

  d0 刪除從光標所在位置,到行首的所有字符

  2、復制操作(yank)

  yy 復制光標所在行

  nyy 復制從光標所在行開始,向下的n行

  y1G 復制從光標所在行開始,到第一行的所有行

  yG 復制從光標所在行開始,到最后一行的所有行

  y$ 復制從光標所在位置,到行尾的所有字符

  y0 復制從光標所在位置,到行首的所有字符

  3、粘貼操作(paste)

  p 小寫字母p,粘貼剪貼板中的數據,從光標所在行的下一行開始

  P 大寫字母P,粘貼剪貼板中的數據,從光標所在行的上一行開始

  4、撤銷與重做操作(undo,redo)

  u (Undo)撤銷上一個操作

  Ctrl+r (Redo)重做上一個操作

  5、重復操作

  . 重復上一操作

  6、替換操作(replace)

  r 替換光標所在處字符

  R 進入替換模式,直至按ESC退出

  cc 替換光標所在行

  cw 替換光標所在的英文單詞

  ~ 轉換大小寫

  7、排版操作

  :le<ft> 光標所在行左對齊

  :ri<ght> 光標所在行右對齊

  :ce<nter> 光標所在行居中

 ?。ㄎ澹┏S枚嗑彌_區操作按鍵

  1、多文件編輯模式

 ?。?)argument list模式,就是在打開vim編輯器時,攜帶多個文件路徑參數。

 ?。?)buffer list模式,就是在進入vim編輯器后,打開多個緩沖區進行編輯。

  2、單一緩沖區打開多個文件

  :files 顯示目前打開了哪些文件

  :n 切換到下一個緩沖區內容

  :N 切換到上一個緩沖區內容

  :2n 切換到下下個緩沖區內容

  :bn 下一個緩沖區內容(buffer next)

  :bp 上一個緩沖區內容(buffer previous)

  3、多個緩沖區打開多個文件

  :sp [filename] 打開一個新的緩沖區,如果有filename則內容為該文件,否則為當前文件

  Ctrl+w n 新建一個緩沖區

  Ctrl+w q 退出光標所在的緩沖區

  Ctrl+w j 光標移動到下一緩沖區

  Ctrl+w k 光標移動到上一緩沖區

  Ctrl+w l 光標移動到右一緩沖區

  Ctrl+w h 光標移動到左一緩沖區

  Ctrl+w v 左右切割窗口新建緩沖區

  Ctrl+w s 上下切割窗口新建緩沖區

  Ctrl+w o 使光標所在緩沖區最大化,其他緩沖區隱藏

 ?。┏S盟阉髋c書簽操作快捷鍵

  1. 搜索字符串

  /string 向下搜索字符串“string”

  ?string 向上搜索字符串“string”

  2. 重復上次搜索

  n 根據上次搜索條件找到下一個匹配的字符串

  N 根據上次搜索條件找到上一個匹配的字符串

  3. 搜索單詞

  * 向下搜索光標所在處的單詞(完全匹配)

  # 向上搜索光標所在處的單詞(完全匹配)

  g* 向下搜索光標所在處的單詞(部分匹配)

  g# 向上搜索光標所在處的單詞(部分匹配)

  4. 標記書簽(mark)

  ma a為小寫字母,為光標所在處設定文檔書簽a

  mA A為大寫字母,為光標所在處設定全局書簽A

  5. 使用書簽(mark)

  `a 到文檔書簽a處,Tab鍵上方

  ‘a 到文檔書簽a所在行行首處,Enter鍵左邊

  `A 到全局書簽A處,Tab鍵上方

  ‘A 到全局書簽A所在行行首處,Enter鍵左邊

  `n 如果n=0,緩沖區將打開上一次的文檔,且光標在上次編輯最后的位置,1-9以此類推

  ‘n 如果n=0,緩沖區將打開上一次的文檔,且光標在上次編輯最后的位置所在行的行首,1-9以此類推

  6. 查看書簽列表

  :marks 查看當前所有書簽

 ?。ㄆ撸╆P于加密

  1、加密你的文本文件

  當你用vim打開或新建一個文件時,如果加上-x參數,即:

  vim -x filename

  那么vim會提示你:

  Enter entryption key:

  當你輸入了密碼后,vim會提示你重復輸入以確認:

  Enter same key again:

  你在設置密碼的時候,是以*來顯示的,非明文。當下次有人(包括你自己)打開該文件的時候,vim就會提示:

  Need encryption key for “main.cpp”

  Enter encryption key:

  這時你只要輸入你之前所設置的密碼就可以了。如果你輸入的密碼是錯誤的,vim并不會提示你密碼錯誤,而是顯示一堆無意義的垃圾代碼。

  2、解除加密與重設密碼

  打開你已經加密的文件,然后輸入:

  :set key=

  這樣,你的密碼就被設置為空了,今后進入就不再需要輸入密碼了。而如果你向重設密碼的話,你可以輸入:

  :X

  注意是個大寫字母X。這時vim會提示你,只要反復輸入兩次新的密碼就可以了:

  Enter entryption key: *****

  Enter sanme key again: *****

  3、加密引起的問題

  vim的加密功能,可以說是問題一大堆。比如:

 ?。?)如果密碼輸入錯誤,vim不會拒絕訪問者編輯文件。在這種顯示亂碼的情況下編輯文件并保存,整個文件就會變得混亂不堪,無法辨識。今后即使使用正確的密碼打開文件,也看不到正確的文檔了。

 ?。?)如果對一個需要編譯的源代碼文件進行了加密,則無法通過編譯器的語法檢查。

  (3)交換文件是無法加密的。這樣引起什么問題?問題就是如果其他用戶想辦法讀取到了你的交換文件,就可以繞過解密環節,你的加密也就無意義了。解決的辦法就是,不使用交換文件。方法有三個,一是修改你的vimrc文件(vim配置文件):

  set noswapfile

  二是在用vim打開文件之初就輸入命令:

  vim -x -n filename

 ?。ㄗ⒁?x是加密參數,與我們所說的swap沒有關系,不要搞混)

  三是在進入vim編輯該文件后,輸入:

  :setlocal noswapfile

  不過不使用交換文件的壞處就是,你可能會面臨數據丟失而無法找回的悲劇。所以又想用加密,又想不丟失文件的朋友們,就勤按“:w”吧。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97在线免费视频| 成人做爽爽免费视频| 久久男人av资源网站| 精品自在线视频| 色悠悠国产精品| 欧美精品亚州精品| 日韩av最新在线| 久久久久一本一区二区青青蜜月| 欧美性猛交xxxx免费看久久久| 亚洲第五色综合网| 亚洲欧美日韩一区二区在线| 精品亚洲一区二区三区在线播放| 日韩视频精品在线| 欧美激情在线观看视频| 一区二区三区 在线观看视| 国产精品欧美日韩久久| 亚洲欧美一区二区三区久久| 欧美性猛交xxxx富婆弯腰| 黑人精品xxx一区| 国产一区二区三区在线视频| 91av在线视频观看| 亚洲欧美日韩高清| 国产亚洲欧美一区| 自拍偷拍亚洲区| 国产久一一精品| 成人福利网站在线观看| 国产情人节一区| 亚洲精品久久在线| 亚洲国产婷婷香蕉久久久久久| 欧美精品一区在线播放| 正在播放国产一区| 欧美电影免费观看高清| 91香蕉嫩草神马影院在线观看| 日韩精品一区二区三区第95| 亚洲一区美女视频在线观看免费| 国产欧美 在线欧美| 欧美在线激情视频| 成人美女av在线直播| 国产精品午夜一区二区欲梦| 亚洲大胆人体视频| 国产国产精品人在线视| 国产在线精品成人一区二区三区| 久热精品视频在线观看| 91理论片午午论夜理片久久| 亚洲精品美女免费| 亚洲精品少妇网址| 国产精品av免费在线观看| 日韩av影片在线观看| 久久久www成人免费精品| 九九九热精品免费视频观看网站| 国产亚洲人成a一在线v站| 欧美情侣性视频| www.亚洲人.com| 精品女厕一区二区三区| 国产精品福利网| 97香蕉超级碰碰久久免费的优势| 97国产真实伦对白精彩视频8| 毛片精品免费在线观看| 亚洲影院高清在线| 欧美日韩在线免费观看| 欧美日韩激情小视频| 色av中文字幕一区| 国产成人一区二| 欧美成人一二三| 成人黄色av免费在线观看| 亚洲精品久久久久久久久久久久| 国产精品91免费在线| 日韩激情片免费| 国产成人精品av在线| 欧美性做爰毛片| 全色精品综合影院| 2018中文字幕一区二区三区| 岛国av一区二区在线在线观看| 国产精品久久中文| 亚洲亚裔videos黑人hd| 国产精品日日摸夜夜添夜夜av| 欧美限制级电影在线观看| 国产成人极品视频| 欧美激情xxxx| 福利视频第一区| 在线观看中文字幕亚洲| 久久久久久国产精品| 亚洲天堂av电影| 国产精品久久久久久久7电影| 国产精品视频最多的网站| 成人国产在线视频| 日韩的一区二区| 国产一区二区三区在线视频| 精品久久久久久久久久国产| 亚洲激情自拍图| 亚洲丁香久久久| 91理论片午午论夜理片久久| 亚洲国产精品成人av| 久久99久久99精品中文字幕| 欧美黄色性视频| 久久久久久综合网天天| www.国产精品一二区| 亚洲国产中文字幕在线观看| 国产精品一区二区三| 亚洲第一精品福利| 国产免费一区二区三区在线观看| 92国产精品视频| 亚洲最大福利视频| 伦伦影院午夜日韩欧美限制| 中文字幕亚洲激情| 亚洲最大的av网站| 日韩在线免费视频观看| 欧美成人免费全部观看天天性色| 亚洲第一av网| 欧美日韩激情视频| 精品性高朝久久久久久久| 精品亚洲精品福利线在观看| 国产999在线| 日韩av影片在线观看| 亚洲欧美在线一区| 欧美精品久久久久a| 亚洲美女又黄又爽在线观看| 精品久久久久久久久中文字幕| 欧美激情欧美激情在线五月| 亚洲欧洲在线观看| 91中文精品字幕在线视频| 亚洲全黄一级网站| 超薄丝袜一区二区| 国产91精品网站| 亚洲图片在区色| 亚洲精品成人久久久| 欧美成人激情视频免费观看| 欧美一级电影免费在线观看| 亚洲欧美国产精品| 精品一区精品二区| 国产精品r级在线| 久久久国产精彩视频美女艺术照福利| 精品性高朝久久久久久久| 亚洲福利在线观看| www.欧美免费| www.国产精品一二区| 久久精视频免费在线久久完整在线看| 日韩av男人的天堂| 国产日韩欧美日韩大片| 日韩在线中文字幕| 欧美日韩在线视频首页| 岛国av一区二区在线在线观看| 亚洲午夜色婷婷在线| 欧美高清一级大片| 夜色77av精品影院| 久久久视频免费观看| 俺也去精品视频在线观看| 国产精品亚洲美女av网站| 日韩电影免费在线观看中文字幕| 日韩av电影国产| 成人网中文字幕| 色爱精品视频一区| 日韩精品亚洲视频| 久久久免费电影| 日韩在线观看精品| 亚洲精品国产成人| 亚洲一区中文字幕在线观看| 日韩中文在线观看| 亚洲人成在线播放| 欧美极品xxxx| 国产欧美日韩精品在线观看| 在线播放日韩精品| 欧美大片在线看免费观看| 中文字幕日韩欧美在线视频|