Vim
$ 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 文件名
- 切换窗口 maph <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
/<++> :nohlsearch c4l
快速查找<++>并向右替换四个字符 -
figlet 输出大字符
:%TOhtml 输出为html文件
google-chrome-stable vimrc.html 预览