首页 > 其他分享 >vim

vim

时间:2023-05-29 21:35:52浏览次数:32  
标签:字符 删除 buffer 一行 vim 光标

Vim

vim-vi-workmodel.png

  • $ vim wenyy.txt 用vim建立新文件
    • 输入vi wenyy.txt 即可进入文件

1. 启动vim进入命令模式(Command mode)

  • 光标移动
    • kjhl或者箭头上下左右 30j或30向下移动30行
    • 0行首,$行尾,^行首第一个非空字符,_行尾第一个非空字符
    • ctrl+b 向上翻一页;ctrl+u 向上翻半页;ctrl+f 向下翻一页;ctrl+d 向下翻半页
    • +移动到非空格符的下一行;- 移动到非空格符的上一行
    • n[space] 右移n个距离
    • 0或者home 移动到这一行最前面
    • $或者end 移到最后
    • H 移到屏幕最上方那一行第一个字符
    • M 移到屏幕中央第一个字符
    • L 移动屏幕最下方的第一个字符
    • G 移到最后一行,nG 移到第n行,gg 移到第一行相当于1G
    • n+enter 下移n行
    • w 移动到(下一个)单词开头,b移动到(上一个)单词开头,e移动到(下一个)单词结尾
  • 搜索替换
    • f正向查找,t反向查找,2fa查找此行中第二个a
    • ::/word:: 向光标下寻找word字符串
    • ::?word:: 向上寻找word字符串
    • n 英文按键,重复前一个动作
    • N 与n相反,反向进行前一个动作
    • :100,200s/wen/yu/g 在100到200行之间搜寻wen并取代为yu
    • :1,$s/wen/yu/g 1到最后一行 或者 :%s/wen/yu/g
    • :1,$s/wen/yu/gc 1到最后一行 ,取代前确认
  • 删除、复制、粘贴
    • 在一行中,x向后删除一个字符,相当于del;X向前删除一个字符,相当于backspace
    • nx 向后删除n个字符
    • dw 向后删除一个单词;db 向前删除一个单词
    • dd 剪切所在那一行 p/P可以粘贴;ndd向下剪切n行
    • d1G 删除光标所在到第一行;dG删除光标到最后一行
    • d$ 删除游标到这行最后一个;d0 删除游标到最前面
    • yy 复制那一行;nyy 复制向下n行;y1G;yG;y0;y$
    • p 将复制的数据贴在光标下一行;P贴在游标上一行
    • J 将此行与下一行合并
    • c 重复删除多行 10cj
      - cw重写当前字符
    • ::u 撤销当前动作::
    • ::ctrl+r 重做上一个动作::
  • 方法
    • v 进入可视化模式
    • 多行插入 Ieee选中后:normal I/A+内容+回车
    • ctrl+v可视块模式 VG全选
    • 首列插入方法 ctrl+v G I 内容 esc

2. 切换到输入模式(Insert mode)

enter回车键 换行,backspace删除光标前一个字符,del删除光标后一个字符,方向键移动光标

home/end 移动到行首/行尾,pageup/pagedown 上下翻页,insert切换输入/替换模式

  - 进入输入模式
     - insert  i 从目前光标处输入,I 在该行的第一个非空格符输入
     - append  a 下一个字符处输入,A 或者shift+a该行最后一个字符输入
     - o 下一行输入新的一行,O 或者shift+o上一行输入新的一行
     - r 取代光标所在字符一次,R 一直取代光标所在文字
     - x删除当前光标所在字符,esc退出该模式

3. :切换到底线命令模式(Last line mode,在最下一行输入命令

   - :q退出 :w保存 esc退出该模式 wq保存退出
   - :q! 强制退出不保存
   - :w! 只读时强制写入
   - ZZ 保存退出 相当于wq
   - ZQ 不保存强制退出,相当于:q!
   - :w filename 将编辑的数据存储为另一个档案
   - :r filename 读入另一个文件数据加到游标后面
   - :n,m w filename 将n到m的内容存到filename
   - :! command 暂时离开vi执行command的显示结果
  • 分屏
    - :sp、split上下分屏 :2sp 分出一个两行的window
    - :vsp/vsplit 垂直分屏
    - ctrl+w 切换分屏 :only 仅保留当前分屏 :hide 关闭当前分屏
    - map sk : set nosplitbelow:split 向上分屏
    - 分屏后打开新的文件 :e 文件名
    - 切换窗口 map h <C+w>h
    - 窗口大小 map = :res +5 =-[]上下左右
    - 分标签页 map :tabe
    - map :-tabnext 左右切换
    - map :+tabnext
  • buffer
    - 一个文件对应一个buff
    - :ls查看打开多少个buffer
    - :file显示当前buffer文件全名 :b xxx 显示xxx buffer
    - :bn 当前窗口显示下一个buffer :bp 前一个
    - :badd 打开一个新的buffer :bdelete 删除一个buffer
    - :sb 在新窗口编辑buffer :bufdo 在所有buffer中执行命令
    - :cc n 跳到 error n 处 :cn 跳到下一个错误处 :cp 跳到上一个错误处 :cl 显示错误例表

4. vim 环境变更

  • :set nu 在每一行前面显示行号
  • :set nonu 取消行号

配置: .vimrc文件

  • noremap 实际按键 原式键位 更改键位

    • = nzz -Nzz
  • map Q q回车

  • syntax on 高亮

  • set number 打开行号 cursorline当前行线 wildmenu showcmd hlsearch高亮搜索

    • incsearch边搜边高亮 ignorecase忽略大小写 smartcase智能大小写
  • let mapleader=" "

  • color 配色

    • shine darkblue default
  • github搜vim-plug 插件

    • call plug#begin('')
    • Plug 'vim-ariline/vim-airline' 插件放在这里面
    • call plug#end('')
    • :PlugInstall 下载安装
  • set tabstop=4

  • set shiftwidth=4

  • set softtabstop=4 设置缩进为4

  • au BufReadPost * if line("'"") > 1 && line("'"") <= line("$") | exe "normal! g'"" | endif 打开vim在上次编辑位置

  • nmap :NERDTreeToggle 显示文件树

  • set scrolloff=5 一直显示光标上或下五行

  • map /<++>:nohlsearchc4l
    快速查找<++>并向右替换四个字符

  • figlet 输出大字符

:%TOhtml 输出为html文件
google-chrome-stable vimrc.html 预览

标签:字符,删除,buffer,一行,vim,光标
From: https://www.cnblogs.com/dzw9/p/17441703.html

相关文章

  • vim-一些小技巧
    在选中范围内替换先用v选中,按:进入替换模式。出现 ​:'<,'>​ 再输入 ​s/待替换/替换成/gc​ (c表示询问,y替换n不替换q不替换直接退出)。删除末尾的空格:%s/\s*空格/s表示重复多个空格,一直到行尾。添加括号括号两端带空格的,S+左括号,不带空格的,S+右括号。选中范......
  • Linux install vim errors All In One
    LinuxinstallvimerrorsAllInOneVimerrors❌RaspberryPi安装vim解压缩时候卡住了,手动中断了terminal,再次SSH连接时候,出现一下错误信息!pi@raspberrypi:~$sudoapt-getinstallvimE:无法获得锁/var/lib/dpkg/lock-frontend。锁正由进程11246(apt-get)持有......
  • nvim中packer.lua的设置
    Manu`swebsite|ConfigureNvimwithLua:Plugin/packagemanagement(3)(manujsdev.com)localensure_packer=function()localfn=vim.fnlocalinstall_path=fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'iffn.empt......
  • VIM中的翻页命令
    整页翻页ctrl-fctrl-bf就是forwordb就是backward翻半页ctrl-dctlr-ud=downu=up滚一行ctrl-ectrl-yzz让光标所在的行居屏幕中央zt让光标所在的行居屏幕最上一行t=topzb让光标所在的行居屏幕最下一行b=bottom......
  • vim command not found
    linux系统上一般默认的是vi,vim需要我们手动去安装检查是否存在vim的安装包rpm-qa|grepvim出现上图,就是还没有全部安装包安装vimyum-yinstallvim*等待安装完成查看是否安装成功(如果缺少其中某个安装包,如:vim-minimal-7.4.629-8.el7_9.x86_64,可单独安装yum-yi......
  • vim 常用快捷键
    vim快捷键使用区域选择:v:字符选择,将光标经过的地方反白选择V:行选择y:将反白的地方复制d:将反白的地方删除光标移动:$:移动到当前行行尾gg:光标跳转到第一行G:光标跳转到最后一行字符操作:x:向后删除一个字符10x:连续删除10个字符X:向前删除一个字符d$:删除光标至当前行尾的字符......
  • 推荐5 个 NeoVim GUI 编辑器
    导读Vim很不错,但NeoVim更新一些,甚至更棒。Vim和NeoVim都是基于终端的文本编辑器,具有类似的功能。如果你是一个习惯于使用像VSCode这样的GUI文本编辑器的人,并且希望拥有NeoVim提供的类似功能,你应该了解一下这些GUI编辑器。虽然我知道你可以把NeoVim作......
  • 学习使用vim
    vim编辑器的指令名为vi1.打开文件:vifilename 2.vi有两种模式:分别为命令模式和插入模式进入后的状态为命令模式,返回命令模式:按“ESC”键进入插入模式:按“i”或“a”键   3.编辑后保存编辑后按“ESC”返回命令名模式然后输入“:wq”并回车(:w为保存,:q为保存)即可......
  • Rocky 9 Linux 平台 vim 9.0 源码包编译安装踩坑记录
    目录vim9.0部署准备环境vim9.0源码包正式部署vim9.0初体验plug-vim安装插件在上一篇《vim入门实战》篇,我并没有介绍Linux平台源码包形式安装以及基础运用。本篇教程,以源码包形式部署vim9.0,演示RockyLinux9平台安装vim9.0.1523,目前最新版为vim9.0.15xx。如......
  • ubuntu20.04上vim的配置
    1打开配置文件sudovim/etc/vim/vimrc2将下面的代码复制进去runtime!debian.vimifhas("syntax")syntaxonendifsetnumber"显示行号colorschemedesertsetguifont=Consolas:h12:cANSIsetguifontwide=SimSun-ExtB:h12:cGB2312settabstop=4setexpa......