vim常用命令

  • 移动光标
    h 向左移动一个字符
    j 向下移动一行
    k 向上移动一行
    l 向右移动一个字符
    Ctrl+f 向下移动一页,forward
    Ctrl+b 向上移动一页,back

  • 保存退出
    :w 存盘
    :wq 保存退出,write quit
    :q! 不保存,退出,quit

  • esc 回到普通模式/命令行模式

  • visual可视模式
    v 可视模式,Visual Line,类似于windows里的文字操作
    V 逐行可视模式
    Ctrl+v 矩形区块可视模式,Visual Block

  • 进入insert插入模式
    i 光标前插入,insert
    I 行前插入
    a 光标后插入,append
    A 行末插入
    o (小写字母o)光标向下新增一行
    O (大写字母O)光标向上新增一行

  • 剪切/删除操作
    x 剪切/删除单字符
    数字x 剪切/删除光标后指定数字个字符
    d 剪切/删除选中的内容,delete
    dd 剪切/删除整行
    数字dd 剪切/删除从当前行开始往后的多少行

  • 复制操作
    y 复制选中的内容,yank
    yy 复制整行
    数字yy 复制光标开始向下的指定数字行
    与其他系统/程序的交互,使用双引号加上加号再加上相应的动作y或p
    例如从vim拷贝到windows,在vim中选择相应内容,然后按 "+y ,然后在windows中粘贴
    从windows拷贝到vim,在windows中复制内容,在vim中按 "+p
    更多信息参考:VIM的复制粘贴问题

  • p 粘贴上一次剪切的内容,paste

  • u 撤销,undo,按多次执行多次恢复

  • 跳转指定行
    G 光标跳转至文件结尾,Go
    数字G 跳转到指定数字的行
    :数字 跳转到指定数字的行
    gg 光标跳转至文件开头
    Ctrl+g 显示总行数以及光标所在的行列

  • 列出行号
    :set nu 列出行号
    :set nonu 取消行号

  • 全选 ggvG

  • 全部复制 ggyG

  • 全部删除 ggdG yG

  • 查找、替换字符串
    /字符串 查找字符串,按n查找下一个,按N查找上一个

:s/old/new 在一行内替换头一个字符串,将old替换为new
:s/old/new/g 在一行内替换所有字符串
:%s/old/new/g 全局替换所有字符串
:%s/old/new/gc 全局替换所有字符串,每次都询问确认
  • windows中gvim解决中文乱码问题
    以管理员权限用记事本打开C:\Program Files\Vim_vimrc文件,添加如下配置并保存
set encoding=utf-8
set termencoding=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,chinese,cp936
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

注意:vim的寄存器与windows的粘贴板并不通用,互相隔离

知识图

(图片来自网络)

posted on   越野兔  阅读(92)  评论(0编辑  收藏  举报

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
点击右上角即可分享
微信分享提示