大家好,新的一章要开始了,之前的vim操作大家一定要经常练习,从这章开始之后我们就要更深入的学习vim了,把vim打造成自己想要的样子,做到我的vim我做主!
编写vim配置
什么是vim的配置,vim里有很多的设置,比如:set number设置行号 之前的使用都是在Vim 里临时设置,没法持久化,每次设置很烦 Vimrc提供了一种持久化配置的方式,让我们自定义配置
如何编写自己的Vim配置文件呢? Linux/Unix 下新建一个隐藏文件 vim ~/.vimrc
windows 系统 vim $MYVIMRC,通过环境变量编辑配置文件
Vim配置都包含什么 ?
可以开始编辑vim 配置文件了,但是需要设置什么呢? 常用设置,比如 :set nu设置行号,colorscheme hybrid 设置主题 常用的vim 映射,比如 noremap <leader>w :w<cr> 保存文件 自定义的 vimscript函数(vim 高手)和插件的配置(插件篇会)
首先是常用的 Vim 设置
我们可以把常用的设置写到.vimrc 里避免每次打开 vim 重新设置 比如设置行号 set nu; 设置主题 colorscheme hybird
vim中的映射
Vim中的映射比较复杂,源于vim 有多种模式 设置一下leader键let mapleader = “”常用的是逗号或空格 比如用inoremap <leader>w <Esc>:w<cr> 在插入模式保存 Vim中的映射概念稍微复杂,但是非常强大,我们等下单独讲
vim插件
现代化的Vim可以通过插件管理器安装插件 通过插件你可以无限扩充Vim的功能 想要使用插件需要具备一定的 Vim配置知识
vim脚本
Vim 有自己的脚本语言 Vimscript Vim脚本对于Vim高级玩家来说可以实现强大的vim 插件 初学者知道有这个概念就好,vim 脚本是一种简单的脚本语言 可以通过 vimscript 实现更多 vim 的控制,开发自己的插件
深入vim映射 什么是vim映射、
Vim 映射就是把[一个操作]映射到[另一个操作J 如果你不满现在的按键设置?比如 vim本来的命令 或者你想映射一些方便的快捷键 按照你的意愿定制 Vim。[当我按下某些键时,放弃你默认的操作按我的想法去做]
基本映射
基本映射指的是normal模式下的映射,当然还有其他模式的映射 使用 map 就可以实现映射。比如:map -x 然后按-就会删除字符 :map<space> viw 告诉 vim 按下空格的时候选中整个单词 :map <c-d>dd 可以使用 ctrl+d 执行dd 删除一行 取消映射 unmap -
模式映射
Vim 常用模式normal/visual/insert 都可以定义映射 用nmap/vmap/imap定义映射只在normal/visual/insert分别有效 :vmap U把在 visual 模式下选中的文本大小(u/U转换大小写) 想想我们如何在insert 模式下映射ctrl+d 来删除一行?
#可以这样
:imap <c-d> <Esc> ddi
递归与非递归映射
map系列命令有递归的风险 如果你安装了一个插件,插件映射了同一个按键的不同行为,有冲突就会有一个失效 想要保证插件映射没有冲突会非常痛苦 解决方案就是使用非递归映射
非递归映射
Vim提供了非递归映射,这些命令不会递归解释 使用*map 对应的nnoremap/vnoremap/inoremap 何时使用递归映射(*map) ?何时使用非递归映射呢?(*nnoremap) [任何]时候你都应该使用非递归映射,拯救自己和插件作者
以上就是本节课的内容大家要多加练习哟~
标签:插件,映射,递归,VIM,vim,设置,Vim From: https://blog.51cto.com/u_16240159/7576477