加载中...
vim使用教程
发表于:2022-12-11 | 分类: 编程

三种模式

vim编辑器有三种模式:命令模式、编辑模式、末行模式。

  • 「命令模式」:可以进行删除、复制、粘贴等快捷操作。按==i== 进入编辑模式
  • 「编辑模式」:可以编辑文件内容。
  • 「末行模式」:可以通过命令操作文件,比如搜索、保存、退出等。

    1. 编辑模式

按 ==:wq== 保存退出vim

2.命令模式

3.1 移动光标

指令 作用
h 或 左方向键(←) 光标向左移动一个字符
l 或 右方向键(→) 光标向右移动一个字符
k 或 上方向键(↑) 光标向上移动一个字符
j 或 下方向键(↓) 光标向下移动一个字符
j’k 光标移动到行首
Ctrl+4 或 end键 光标移动到行尾
Ctrl + f 或 pg up键 【屏幕】向下移动一页
Ctrl + b 或 pg dn键 【屏幕】向上移动一页
gg 移动到文件的第一行
G 移动到文件的最后一行
nG 移动到文件的第n行

3.2 搜索替换

指令 作用
/字符串 + 回车 向下搜索指定字符串
n 继续向下搜索下一个字符串
?字符串 + 回车 向上搜索指定字符串
N 继续向上搜索下一个字符串
:%s/word1/word2/g 将文件中的word1替换为word2
:%s/word1/word2/gc 将文件中的word1替换为word2,但替换前需要用户确认!
:1,10s/word1/word2/g 将第1行到第10行的word1替换为word2

3.3 复制粘贴删除

指令 作用
x 删除后一个字符
X 删除前一个字符
dd 剪切一行
数字dd 剪切多行
yy 复制一行
数字yy 复制多行
p 粘贴到下一行
P 粘贴到上一行
u 撤回操作
Ctrl + r 撤回刚才的撤回操作
.(小数点) 重复刚才的操作
Ctrl+WW 多窗口切换

3. 末行模式

英文状态的 :键 进入末行模式

命令模式 或 vim打开文件时,按下 : 键,左下角出现 :时,即表示末行模式。

指令 作用
:w 保存
:q 退出
:wq 保存后退出
:q! 不保存,强制退出
:set nu 显示行号
:set nonu 取消 显示行号
:w [文件名] 将编辑后的内容保存到另一个文件中(另存为)
:2,5 w [文件名] 将第2到5行的内容保存到另一个文件中(指定行另存为)
:r [文件名] 输入另一个文件的内容,到光标的下一行

自动补全

安装安装coc.nvim,依赖nodejs和yarn

1
2
3
curl -sL install-node.now.sh | sh
curl --compressed -o- -L https://yarnpkg.com/install.sh | bash

建立软连接

1
2
3
[root@VM-4-12-centos bin]# cd /usr/local/nodejs/bin
[root@VM-4-12-centos bin]# ln -s /usr/local/nodejs/bin/npm /usr/local/bin
[root@VM-4-12-centos bin]# ln -s /usr/local/nodejs/bin/node /usr/local/bin

配置vim

1

wsl

所有默认改成root

1 找到(centos 或者Ubuntu )的exe文件
一般在 C:\Users\admin\AppData\Local\Microsoft\WindowsApps 目录下
打开cmd 执行
Centos7.exe config —default-user root
然后关掉wsl
wsl —shutdown

neovim

1
2
3
4
# 安装
add-apt-repository ppa:neovim-ppa/stable
apt-get update
apt install -y neovim

安装vim_plug

1
2
3
4
5
6
7
#依赖curl
apt-get install curl
#还是失败
sudo vim /etc/hosts
# 添加
199.232.28.133 raw.githubusercontent.com
# 插件网站 https://vimawesome.com/

其他问题

1
2
3
4
#出现 E325: ATTENTION
Found a swap file by the name "~/.local/share/nvim/swap//%home%dev%xuexi%tool%main.c.swp"
# 删除
rm ~/.local/share/nvim/swap//%home%dev%xuexi%tool%main.c.swp
上一篇:
vscode+qt
下一篇:
git使用技巧