linux之vi,vim命令

      網友投稿 911 2025-03-31

      vim 是對 vi 的擴展,文中的很多操作是 vi 通用的

      vi 是區分大小寫的命令的,也就是說 g與G 是不同的命令

      在不同模式下,快捷鍵是不一樣的 模式分 一般模式 編輯模式 指令模式

      一般模式用于文件內部操作,編輯模式用于輸入編寫等,指令模式用于對文本文件進行操作

      常用操作

      進入一般模式為開始編輯,或者按 esc 后進入

      光標詳細操作

      查找命令

      指令模式

      屏幕翻滾

      插入命令

      刪除命令

      多窗口模式

      多文件編輯

      vim 自定義技巧

      復制粘貼取消縮進

      linux之vi,vim命令

      :set paste

      進入 paste 模式以后,可以在插入模式下粘貼內容,不會有任何變形

      這個參數做了這么多事:

      textwidth設置為0 wrapmargin設置為0 set noai set nosi softtabstop設置為0 revins重置 ruler重置 showmatch重置 formatoptions使用空值

      下面的選項值不變,但卻被禁用

      lisp indentexpr cindent

      綁定快捷鍵來激活 / 取消 paste 模式

      :set pastetoggle=

      出現粘貼換行符錯位,設置一下 .vimrc

      " this can change way of paste words :set paste " default tabstop=8 :set tabstop=4 " use keyboard F11 to change paste mode :set pastetoggle=

      vim 縮進

      Normal Mode 下,命令>>將對當前行增加縮進,而命令<<則將對當前行減少縮進

      在命令前使用數字,來指定命令作用的范圍

      5<<

      在 Insert/Replace Mode 下

      Ctrl-Shift-t可以增加當前行的縮進

      Ctrl-Shift-d則可以減少當前行的縮進

      使用0-Ctrl-Shift-d命令,將移除所有縮進

      需要注意的是,當我們輸入命令中的 “0” 時,Vim 會認為我們要在文本中插入一個 0,并在屏幕上顯示輸入的“0”;然后當我們執行命令 0-Ctrl-Shift-d 時,Vim 就會意識到我們要做的是減少縮進,這時 0 會就會從屏幕上消失

      vim tab 縮進

      tab 縮進寬度默認為 8 個空格

      我們可以使用以下命令,來修改縮進寬度

      :set tabstop=4 :set softtabstop=4 :set shiftwidth=4 :set expandtab

      tabstop: 表示一個 tab 顯示出來是多少個空格的長度默認 8

      softtabstop: 表示在編輯模式的時候按退格鍵的時候退回縮進的長度當使用 expandtab 時特別有用。

      shiftwidth: 表示每一級縮進的長度一般設置成跟 softtabstop 一樣。 當設置成 expandtab 時縮進用空格來表示noexpandtab 則是用制表符表示一個縮進

      expandtab 選項,用來控制是否將 Tab 轉換為空格, 但是這個選項并不會改變已經存在的文本,如果需要應用此設置將所有 Tab 轉換為空格,需要執行

      :retab!

      vim 自動縮進

      cindent

      :set cindent

      vim 可以很好的識別出 C 和 Java 等結構化程序設計語言,并且能用 C 語言的縮進格式來處理程序的縮進結構

      smartindent

      :set smartindent

      在這種縮進模式中,每一行都和前一行有相同的縮進量,同時這種縮進形式能正確的識別出花括號,當遇到右花括號(}),則取消縮進形式。此外還增加了識別 C 語言關鍵字的功能。如果一行是以 #開頭的,那么這種格式將會被特殊對待而不采用縮進格式。

      autoindent

      :set autoindent

      在這種縮進形式中,新增加的行和前一行使用相同的縮進形式

      顯示隱藏符號

      默認不顯示 :set nolist

      顯示 :set invlist

      " normal is :set nolist | show hide is :set invlist :set nolist

      使用 vim 寄存器

      使用 vim 寄存器 “+p 粘貼

      根本不用考慮是否自動縮進,是否 paste 模式,直接原文傳遞

      如果想保存原寄存器中內容而同時增加新的內容,就要在 yy 前增加標簽

      標簽以雙引號開始,跟著的是標簽名稱,可以是數字 0-9,也可以是 26 個字母

      顯示所有寄存器內容

      :reg

      注意兩個特殊的寄存器:* 和 +

      這兩個寄存器是和系統相通的,前者關聯系統選擇緩沖區,后者關聯系統剪切板

      通過它們可以和其他程序進行數據交換

      若寄存器列表里無 * 或 + 寄存器,則可能是由于沒有安裝 vim 的圖形界面所致

      sudo apt-get install vim-gnome

      設置 vim 永遠顯示行號

      修改 vim 的配置文件加入 set nu

      vi ~/.vimrc

      然后輸入

      set nu

      當然也可以輸入其他配置類似

      set nonu syntax on

      vimrc 常用配置

      Linux

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:Excel表格中怎么隱藏身份證號生日
      下一篇:云平臺現場應用項目協同(云平臺應用技術)
      相關文章
      亚洲av无码专区青青草原| 亚洲精品乱码久久久久久自慰| 久久亚洲精品无码观看不卡| 亚洲中文无码卡通动漫野外 | 久久久久亚洲Av片无码v| 国产亚洲精品拍拍拍拍拍| 极品色天使在线婷婷天堂亚洲| 极品色天使在线婷婷天堂亚洲| 国产亚洲精品美女久久久久久下载| 久久亚洲精品无码gv| 国产成人亚洲精品电影| 亚洲 小说区 图片区 都市| 亚洲成A人片77777国产| 亚洲精品视频免费观看| 国产亚洲成人久久| 亚洲精品国偷自产在线| 久久综合图区亚洲综合图区| 亚洲国产一区二区a毛片| 久久久国产精品亚洲一区| 亚洲视频在线观看不卡| 亚洲精品在线免费观看视频| 亚洲剧情在线观看| 亚洲综合无码无在线观看| 亚洲国产成人无码AV在线| 小说专区亚洲春色校园| 亚洲视频人成在线播放| 亚洲真人无码永久在线| 久久精品国产亚洲av麻豆| 亚洲国产一区在线| 亚洲国产精品白丝在线观看| 国产成人精品亚洲日本在线| 亚洲精品GV天堂无码男同| 国产精品亚洲专区一区| 国产成人亚洲综合| 亚洲成AV人片在线观看WWW| 亚洲电影一区二区| 亚洲中文字幕人成乱码| 亚洲成AV人片在WWW| 中文字幕亚洲不卡在线亚瑟| 亚洲国产精品无码专区影院| 亚洲电影一区二区三区|