资讯专栏INFORMATION COLUMN

vim 2年使用手册

lx1036 / 900人阅读

摘要:背景之前一直的工作流鼠标键盘,以为开发就是敲敲点点。年月入坑以来,我自己感觉开发效率的提升,前期开发模式换为需要适应几个月吧,恶心恶心就过去了。环境基本配置两种选择,推荐好用基础版。

背景

之前一直的工作流鼠标键盘,以为开发就是敲敲点点。16年9月入坑vim以来,我自己感觉开发效率50%的提升,前期开发模式换为vim需要适应几个月吧,恶心恶心就过去了。vim学习曲线了解一下,所有的付出都是值得的。Edit text at the speed of thought

vim环境基本配置

两种选择,推荐1

1.好用基础版。repo github star14k+,Basic Verison推荐,Vimrc Github

安装步骤:

git clone --depth=1 https://github.com/amix/vimrc.git ~/.vim_runtime
sh ~/.vim_runtime/install_basic_vimrc.sh

2.自己写个简单的。需要自定义配置在$HOME下新建.vimrc,配置完成后执行source .vimrc

# 开启行号
set number
# 注释颜色改为好辨
colors desert
# reindent操作(>><<)缩进4个空格
set shiftwidth=4
# 敲入tab键时实际占有的列数
set softtabstop=4
# 输入tab时自动将其转化为空格
set expandtab
## 自动缩进模式
set smartindent
常用命令

以下命令虽然多,大部分都是常用的,多练练形成肌肉记忆就好了

查找

命令模式下,输入/word后回车,即查找word,按n查找下一个匹配单词,按N查找上一个匹配单词

跳转

w 下个单词的首部(向后)

e 当前光标最近处的单词的尾部(向后)

b 当前光标最近处的单词的首部(向前)

^ 跳转到行的开始

$ 跳转到行的结束

删除单词

daw 删除光标所在单词(delete a word)

viwc 可视模式中删除当前单词并插入

bdw 删除到下一个单词开头,比如中间有空格啊就删掉了

D 当前光标删到行尾

d^ 当前光标删到行首

删除字符

x,删除光标所在字符

X,删除光标所在前字符

删除行

dd 删除本行

:1,$d,删除所有行

插入

i:在当前字符的左边插入

I:在当前行首插入

a:在当前字符的右边插入

A:在当前行尾插入

o:在当前行下面插入一个新行

O:在当前行上面插入一个新行

gg:跳至文件开始

G:跳至文件结束

复制粘贴,普通模式

yy 复制本行

p 粘贴

复制光标所在当前单词 yaw

剪切小括号内的 dib,包括小括号dab

替换,命令模式

替换所有匹配为另一个 :%s/"//g (匹配到所有"并置为空)

有用(待整理归并)
command mens
ctrl + d ctrl + u 向上 向下滚屏
ZZ 保存并退出
:e! 不保存文件并重载
* 向下查找当前光标所在单词
:set hlsearch 高亮查找内容
:noh 取消高亮
:noh turn off the highlight until the next search
viw 选中当前单词
p paste
ciw change inner word
cw change the word from the current cursor position
:set so=999 随时使光标位于屏幕中央
:set so=0 恢复光标位置普通模式
ggVGu 格式化文件大小写
u 撤销
ctrl+r 撤回撤销
vim -r *.swp 对于操作文件时异常退出产生的.swp.swo文件处理
ctrl+s 锁屏
ctrl+q 解锁
ggVG 全选
:w !sudo tee % > /dev/null 编辑完文件准备保存缺发现未有权限保存
c 修改
d 删除
y 复制
g~ 反转大小写
gu 转换为小写
gU 转换为答谢
> 增加缩进
< 减少缩进
= 自动缩进
!
ga 查看当前字符的unicode编码w
搜索
命令 用途
f{char} 正向移动到下一个{char}
F{char} 返向移动到上一个{char}
t{char} 正向移动到下一个{char}所在之处的前一个字符
T{char} 返向移动到下一个{char}所在之处的后一个字符
; 重复上次的字符查找命令
, 反转方向查找上次的字符查找命令
替换模式

r是我较常用的命令之一,如91需要更改为98,则光标移动到1上,分别按r8即可,替换完会立刻回到普通模式,相当于常用的xi{char}

可视模式
命令 用途
v 面向字符的可视模式
V 面向行的可视模式
面向列块的可视模式
注释符"
" some need be comment
块选择
`$` to jump to the end of the line you"re on (to be over the opening brace)
`v` to begin a selection (V for whole lines)
`%` to jump to the matching brace.
`j` to go down one line so your cursor is inside the braces you are trying to select
`v` to begin a selection (V for whole lines)
`i{` select everything inside the braces

so `di}`,`ci}`,`vi}` is best practice
文档

1.管道符,重定向(TODO)

# url
https://zh.wikipedia.org/wiki/重定向_(计算机)

2.常见操作符

http://vimdoc.sourceforge.net/htmldoc/motion.html#operator

以上文档不定时更新优化。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25036.html

相关文章

  • 优测优社区干货精选|老司机乱谈编辑器之神——vim

    摘要:点击原文链接体验更佳哦优测优社区干货精选老司机乱谈编辑器之神腾讯优测腾讯优测是专业的移动云测试平台,为应用游戏,混合应用的研发团队提供产品质量检测与问题解决服务。 文 / 腾讯 吴双 前言 优测小优 有话说: 腾讯优测只有应用测试大神?不不不,我们还有各种研发大牛! vim 是一种信仰,我自从2004年有了这个信仰,已经12个年头了。本文介绍了学习vim的方法以及一些vim常用的插件...

    BaronZhang 评论0 收藏0
  • GitLab服务器安装配置手册

    摘要:加载配置命令当加载完配置,启动。启动命令第一次打开网站会让你设置账号密码。使用克隆命令用下载项目。 一、GitLab 安装 1.1 准备工作 1.1.1 关闭防火墙 关闭防火墙命令:iptables -F 查看防火墙命令:iptables -L 1.1.2 关闭SELinux sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/seli...

    xorpay 评论0 收藏0
  • GitLab服务器安装配置手册

    摘要:加载配置命令当加载完配置,启动。启动命令第一次打开网站会让你设置账号密码。使用克隆命令用下载项目。 一、GitLab 安装 1.1 准备工作 1.1.1 关闭防火墙 关闭防火墙命令:iptables -F 查看防火墙命令:iptables -L 1.1.2 关闭SELinux sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/seli...

    vpants 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<