Vim 是一个上古神器,本篇文章主要持续总结使用 Vim 的过程中不得不了解的一些指令和注意事项,以及持续分享一个前端工作者不得不安装的一些插件,而关于 Vim 的简介,主题的选择,以及为何使用 vim-plug 来管理插件等内容,有兴趣的同学下来可以自己了解和对比下,我来为大家科普一下关于vim最有用的技巧?下面希望有你要的答案,我们一起来看看吧!

vim最有用的技巧(10分钟教你为自己打造一个专属VIM)

vim最有用的技巧

Vim 是一个上古神器,本篇文章主要持续总结使用 Vim 的过程中不得不了解的一些指令和注意事项,以及持续分享一个前端工作者不得不安装的一些插件,而关于 Vim 的简介,主题的选择,以及为何使用 vim-plug 来管理插件等内容,有兴趣的同学下来可以自己了解和对比下。

安装

sudo apt-getinstall vim// Ubuntu

其他平台,可以自行谷歌。

新手指南

vimtutor// vim 教程

上面是史上最简单,最全面的Vim基础教程,至今无人超越。

下面是作者基于上面的归纳:

移动光标

# hjkl# 2w 向前移动两个单词# 3e 向前移动到第 3 个单词的末尾# 0 移动到行首# $ 当前行的末尾# gg 文件第一行# G 文件最后一行# 行号 G 指定行# <ctrl> o 跳转回之前的位置# <ctrl> i 返回跳转之前的位置

退出

# <esc> 进入正常模式# :q! 不保存退出# :wq 保存后退出

删除

# x 删除当前字符# dw 删除至当前单词末尾# de 删除至当前单词末尾,包括当前字符# d$ 删除至当前行尾# dd 删除整行# 2dd 删除两行

修改

# i 插入文本# A 当前行末尾添加# r 替换当前字符# o 打开新的一行并进入插入模式

撤销

# u 撤销# <ctrl> r 取消撤销

复制粘贴剪切

# v 进入可视模式# y 复制# p 粘贴# yy 复制当前行# dd 剪切当前行

状态

#<ctrl> g 显示当前行以及文件信息

查找

# / 正向查找(n:继续查找,N:相反方向继续查找)# ? 逆向查找# % 查找配对的 {,[,(# :set ic 忽略大小写# :set noic 取消忽略大小写# :set hls 匹配项高亮显示# :set is 显示部分匹配

替换

# :s/old/new 替换该行第一个匹配串# :s/old/new/g 替换全行的匹配串# :%s/old/new/g 替换整个文件的匹配串

折叠

# zc 折叠# zC 折叠所有嵌套# zo 展开折叠# zO 展开所有折叠嵌套

执行外部命令

Plug 'hail2u/vim-css3-syntax'Plug 'ap/vim-css-color'augroup VimCSS3Syntax autocmd! autocmd FileType css setlocal iskeyword =-augroup END

◈ hail2u/vim-css3-syntax[23]◈ ap/vim-css-color[24]

JavaScipt

  1. Plug'pangloss/vim-javascript'let g:javascript_plugin_jsdoc =1let g:javascript_plugin_ngdoc =1let g:javascript_plugin_flow =1set foldmethod=syntaxlet g:javascript_conceal_function ="ƒ"let g:javascript_conceal_null ="ø"let g:javascript_conceal_this ="@"let g:javascript_conceal_return ="⇚"let g:javascript_conceal_undefined ="¿"let g:javascript_conceal_NaN ="ℕ"let g:javascript_conceal_prototype ="¶"let g:javascript_conceal_static ="•"let g:javascript_conceal_super ="Ω"let g:javascript_conceal_arrow_function ="⇒"let g:javascript_conceal_noarg_arrow_function =" "let g:javascript_conceal_underscore_arrow_function =" "set conceallevel=1

◈ pangloss/vim-javascript[25]

(注:上述脚本中存在特殊字符,有的情况下显示不正确,请直接用上述链接的内容。)

React

  1. Plug'mxw/vim-jsx'let g:jsx_ext_required =0

◈ mxw/vim-jsx[26]

Prettier

  1. Plug'prettier/vim-prettier',{'do':'yarn install','for':['javascript','typescript','css','less','scss','json','graphql']}let g:prettier#config#bracket_spacing ='true'let g:prettier#config#jsx_bracket_same_line ='false'let g:prettier#autoformat =0autocmd BufWritePre*.js,*.jsx,*.mjs,*.ts,*.tsx,*.css,*.less,*.scss,*.json,*.graphql PrettierAsync#:Prettier

◈ prettier/vim-prettier[27]

总结

最后,呈上参考配置 .vimrc[28],如果关于 vim 有更好的 idea,欢迎在评论中交流。

我们的Python课程一直以来都是和腾讯课堂联合办学,而且各个课程都是细分领域下排行第一的课程,在腾讯课堂上线之后,学员数量已经达到了32W多人,我们的免费公开课也已经累计举办了100多次啦~欢迎点击学习:Linux运维及云计算年薪30W入门经典教程【马哥亲讲】-学习视频教程-培训课程-腾讯课堂

,