VIM ——Vimtutor 个人总结【从入门到精通】

2023-12-17 18:32:22

精进 Vim 编辑器技能:从入门到精通


Vim 是一款强大而高效的文本编辑器,但对于初学者来说,学习曲线可能会略显陡峭。在这篇博客中,我们将介绍一些优秀的学习资源以及 Vim 的一些高级技巧,帮助你更好地利用这款编辑器。

学习资源

Vim 自带教程中文版 —— vimtutor-CSDN博客

这是一个基于 CSDN 平台的中文版 Vim 教程,提供了对 Vim 的初步了解和基本操作的指导。

Learn Vimscript the Hard Way (stevelosh.com)

这个网站提供了一个深入学习 Vim 脚本的平台,适合想要更深入理解 Vim 内部机制和自定义配置的用户。

你可以使用 vimtutor 命令来启动 Vim 自带的教程。确保你在学习过程中不会迷失方向。

前置任务:一些Linux常用命令和技巧知识

代码帮助:命令帮助

- 命令帮助
    - 什么是内部命令和外部命令?
        - shell 命令自带的是内部命令
        - 其他为外部命令
    - 如何检查命令类型?
        - `type ____`(比如 `type cd`)
            - 内部命令:shell buildin
                - `help xx`
            - 外部命令:xx is hashed (/xx)
                - `xx --help`
    - 典型例子
        - `man xx`
        - `help xx`
        - `info xx`
        - `xx --help`

目录查看:ls -l 命令

- 目录查看
    - `pwd`
        - 查看当前目录
    - `cd`
        - `cd -`
            - 回到上次 cd 进的目录
            - 2个目录之间进行快速切换
        - `cd ..`
            - 回到上级目录 - 可以比 `cd ../` 更快
    - `ls`
        - 常用参数详解
            - `-l` 长格式显示
                - 示例:`drwxr-xr-x 1 root root 4096 Dec 5 09:05 hh -rw-r--r-- 1 root root 0 Dec 5 07:28 test.txt -rw-r--r-- 1 root root 0 Dec 5 07:28 test2.txt`
                - 第一个参数 d 为文件或目录,- 表示文本。第二个参数为文件个数,包含自身以及其内文件。第三个是哪一个创建的该文件。第四个该文件属于哪个用户组?第五个为文件的大小。第六个为文件的最后修改时间
            - `-a`(all)显示隐藏文件
            - `-r`(reverse)逆序显示
                - 默认是以文件名进行逆序
            - `-t` 按时间顺序显示
            - `-R`(recursive)递归显示

Vim 配置文件修改

# 使用 Vim 打开 ~/.bashrc
vim ~/.bashrc

# 用代码编辑 bashrc 文件,可以在其中添加函数
function pyinstall() {
    v=$1
    echo '准备按照 Python' $v
    curl -L https://npm.taobao.org/mirrors/python/$v/Python-$v.tar.xz -o ~/.pyenv/cache/Python-$v.tar.xz
    pyenv install $v
}

# 编写完后激活
source ~/.bashrc

# 然后使用 pyinstall 3.8.5 安装指定版本的 Python

Vim 编辑技巧总结

删除操作

d-(deletel)

解释: 删除命令的格式是

OPERATOR [NUMBER] MOTION

其中,w 表示单词(word)、e 表示单词结束、$ 表示行末等。

撤销命令

u - 撤销上一步
shift + u [U] - 重做
CTRL + R - 重做

粘贴命令

p - 在光标下方粘贴

替换命令

r - 输入 r 后,再输入要替换的字母
[number] r - 同时替换 number 个字母

文件定位和状态

CTRL + G - 显示位置和状态
gg - 移动到文件开头
G[shift + g] - 移动到文件结尾
[number] G[shift + g] - 跳转到任意行的位置,例如:233G 跳转到第 233

搜索命令

/+字符串 - 当前 cursor 向后查找
?+字符串 - 当前 cursor 向前查找
n - 向下查找下一个匹配项
shift + n[N] - 向上查找上一个匹配项
CTRL + O - 退到上一次查找前的位置
CTRL + I - 向前

查找(可能有问题)

匹配括号

% - 匹配括号

替换命令

:/s/old/new - 匹配 cursor 所在行的第一个目标
:/s/old/new/g - 匹配 cursor 所在行的所有目标
:#,#s/old/new/g - 匹配 # 与 # 首尾两行之间所有目标
:%s/old/new/g - 不提示的替换整个文件所有匹配的目标
:%s/old/new/gc - 会进行提示,替换整个文件所有匹配的目标

执行外部命令

:! 执行外部命令

保存文件

:w filename - 另存为指定文件名

可视模式

V - 进入可视行模式
Ctrl + V - 进入块可视模式

插入新行

o - 在 cursor 下方插入一行
O[shift + o] - 在 cursor 上方插入一行

插入模式

a - 在 cursor 后进入插入模式
i - 在 cursor 当前位置进入插入模式
I[shift + i] - 在 cursor 所在行的句首进入插入模式
A[shift + a] - 在 cursor 所在行的句尾进入插入模式

替换模式

R[shift + r] - 进入连续替换模式

复制模式

yy - 复制一行
[number]yy - 复制多行

查找设置

/set ic - 忽略大小写查找
/set hls - 查找内容高亮显示
/nohlsearch - 移除匹配项的高亮

Vim 命令行设置

/etc/vim/vimrc - Vim 配置文件路径
:r $VIMRUNTIME/vimrc_example.vim - 读取示例配置文件

代码提示

Ctrl + D - 提示当前可执行命令

结语

通过这些学习资源和 Vim 编辑技巧,相信你将能够更加熟练地使用 Vim,提高编辑效率。如果你对 Vim 还有其他疑问或者想要深入学习,建议查阅更多相关资料,例如 Vim - Vi Improved By Steve Oualline。愿你在 Vim 的世界里畅游自如!

以上是本人的个人经验总结,如有错误请各位大佬批评指正!!!

文章来源:https://blog.csdn.net/qq_57329395/article/details/135047549
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。