日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[转]vim基础入门、语法速探、快捷键与宏

發布時間:2024/4/18 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [转]vim基础入门、语法速探、快捷键与宏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載說明: 文章轉自https://github.com/adambard/learnxinyminutes-docs, 版權歸原作者所有,感謝原作者分享!
category: tool
tool: vim
filename: LearnVim-cn.txt
contributors:

  • [“RadhikaG”, “https://github.com/RadhikaG”]
    translators:
  • [“Jiang Haiyun”, “https://github.com/haiiiiiyun”]
    lang: zh-cn

文章目錄

    • Vim 導航基礎
    • 模式:
    • Vim 的 '語法'
    • 一些快捷鍵和技巧
      • 配置 ~/.vimrc
      • 參考


Vim
(Vi IMproved) 是 Unix 上的流行編輯器 vi 的克隆版本。這個文本編輯器
是為性能和提升效率而設計的,并且在大多數基于 unix 的系統上普遍存在。
它有大量的快捷鍵可用來快速導航到文件的特定位置,以便進行快速編輯。

Vim 導航基礎

vim <filename> # 在 Vim 中打開 <filename>:q # 退出 Vim:w # 保存當前文件:wq # 保存文件并退出 Vim :q! # 退出 Vim 并且不保存文件# ! *強制* 執行 :q, 因此沒有保存就退出 Vim:x # 保存文件并且退出 Vim, 是 :wq 的簡寫版本u # 撤銷CTRL+R # 重做h # 左移一個字符j # 下移一行k # 上移一行l # 右移一個字符# 在行內移動0 # 移到行首$ # 移到行尾^ # 移到行內的第一個非空白字符處# 在文本中查找/word # 光標之后的所有該詞都高亮顯示?word # 光標之前的所有該詞都高亮顯示n # 查找后將光標移到該詞的下一個出現位置N # 光標移到該詞的上一個出現位置:%s/foo/bar/g # 將文件每一行上的所有 'foo' 都改成 'bar':s/foo/bar/g # 將當前行上的所有 'foo' 都改成 'bar'# 跳到字符處f<字符> # 向前跳移到 <字符> 上t<字符> # 向前跳移到 <字符> 的左側# 例如, f< # 向前跳移到 < 上t< # 向前跳移到 < 的左側# 按詞移動# 默認一個單詞由字母,數字和下劃線組成w # 移動到下一個詞首b # 移動到前一個詞首e # 移動到下一個詞尾# 移動的其它命令gg # 移到文件頂部G # 移到文件末尾:NUM # 移到第 NUM 行 (NUM 是任意數字)H # 移到屏幕頂部M # 移到屏幕中間位置L # 移到屏幕末尾

模式:

Vim 基于 模式 這個概念。

命令模式 - Vim 啟動后就處于這個模式,用于導航和操作命令
插入模式 - 用于在你的文件中進行修改
可視模式 - 用于高亮文本并對它們進行操作
Ex 模式 - 用于跳到底部的 ‘:’ 提示行上輸入命令

i # 在光標位置前,將 Vim 切換到插入模式a # 在光標位置后,將 Vim 切換到插入模式v # 將 Vim 切換到可視模式: # 將 Vim 切換到 ex 模式<esc> # 無論你當前處于什么模式,都返回到命令模式# 復制和粘貼文本y # 復制所選的內容yy # 復制當前行d # 刪除所選的內容dd # 刪除當前行p # 在當前光標位置后粘貼復制的文本P # 在當前光標位置前粘貼復制的文本x # 刪除當前光標位置處的字符

Vim 的 ‘語法’

Vim 可以被認為是按 ‘動詞-修飾詞-名詞’ 格式編排的一組命令:

動詞 - 你的動作
修飾詞 - 你如何執行你的動作
名詞 - 你的動作所作用于的對象

關于 ‘動詞’,‘修飾詞’,和 ‘名詞’ 的幾個重要例子:

# '動詞'd # 刪除c # 修改y # 復制v # 可視化選擇# '修飾詞'i # 內部的a # 周圍的NUM # 數字 (NUM 是任意數字)f # 查找文本并位于其上t # 查找文本并停于其前面/ # 從光標處開始查找字符串? # 在光標前查找字符串# '名詞'w # 詞s # 句子p # 段落b # 塊# 示例 '語句' 或命令d2w # 刪除 2 個詞cis # 修改段落內的內容yip # 復制段落內的內容 (復制你所在的段落)ct< # 修改直到括號開啟處# 對你的當前位置直到下個括號開啟處的內容進行修改d$ # 刪除直到行尾

一些快捷鍵和技巧

<!--TODO: Add more!--> > # 將所選內容縮進一級< # 將所選內容取消縮進一級:earlier 15m # 將文檔還原到 15 分鐘前的狀態:later 15m # 逆轉上述命令ddp # 相鄰行交換位置,先 dd 再 p. # 重復之前動作

宏基本上來說就是可錄制的動作。
當你開始錄制宏時,它會記錄你使用的 每個 動作和命令,
直到你停止錄制。當調用宏時,它會將這個完全相同的動作和命令序列
再次應用于所選文本之上。

qa # 開始錄制一個叫 'a' 的宏q # 停止錄制@a # 重播宏

配置 ~/.vimrc

.vimrc 可用于在啟動時對 Vim 進行配置。

這里是一個示例 ~/.vimrc 文件:

" 示例 ~/.vimrc " 2015.10 " 需要 Vim iMproved 版本 set nocompatible" 根據文件名檢測文件類型,以便能進行智能自動縮進等操作。 filetype indent plugin on" 開啟語法高亮 syntax on" 更好的命令行補全 set wildmenu" 除了當使用大寫字母時使用大小寫無關查找 set ignorecase set smartcase" 當新開一行時,如果沒有開啟文件特定的縮進規則, " 則縮進保持與你當前行一致 set autoindent" 在左側顯示行號 set number" 縮進選項,根據個人偏好進行修改" 每個 TAB 的可視空格數 set tabstop=4" 編輯時 TAB 對應的空格數 set softtabstop=4" 當使用縮進操作 (>> 和 <<) 時縮進的空格數 set shiftwidth=4" 將 TAB 轉換成空格 set expandtab" 為縮進和對齊開啟智能化的 TAB 和空格切換功能 set smarttab

參考

Vim | Home

$ vimtutor

A vim Tutorial and Primer

What are the dark corners of Vim your mom never told you about? (Stack Overflow thread)

Arch Linux Wiki

總結

以上是生活随笔為你收集整理的[转]vim基础入门、语法速探、快捷键与宏的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。