vim中实现括号和引号自动补全

将下面内容加入.vimrc文件中即可

inoremap ( ()<Esc>i
inoremap [ []<Esc>i
inoremap { {<CR>}<Esc>O
autocmd Syntax html,vim inoremap < <lt>><Esc>i| inoremap > <c-r>=ClosePair(‘>‘)<CR>
inoremap ) <c-r>=ClosePair(‘)‘)<CR>
inoremap ] <c-r>=ClosePair(‘]‘)<CR>
inoremap } <c-r>=CloseBracket()<CR>
inoremap " <c-r>=QuoteDelim(‘"‘)<CR>
inoremap ‘ <c-r>=QuoteDelim("‘")<CR>

function ClosePair(char)
 if getline(‘.‘)[col(‘.‘) - 1] == a:char
 return "\<Right>"
 else
 return a:char
 endif
endf

function CloseBracket()
 if match(getline(line(‘.‘) + 1), ‘\s*}‘) < 0
 return "\<CR>}"
 else
 return "\<Esc>j0f}a"
 endif
endf

function QuoteDelim(char)
 let line = getline(‘.‘)
 let col = col(‘.‘)
 if line[col - 2] == "\\"
 "Inserting a quoted quotation mark into the string
 return a:char
 elseif line[col - 1] == a:char
 "Escaping out of the string
 return "\<Right>"
 else
 "Starting a string
 return a:char.a:char."\<Esc>i"
 endif
endf
时间: 2024-10-01 02:19:36

vim中实现括号和引号自动补全的相关文章

anaconda中jupyter notebook安装代码自动补全插件,报错“Exception: Jupyter command `jupyter-contrib` not found.”

????最初在子环境中安装,但是老出现问题,于是就在base环境中安装,运行命令(使用管理员模式打开anaconda prompt应该会避免一些问题): 一.安装nbextensions(后续:使用conda命令简单还可以避免许多问题,但我已经安装好了,懒得改博客了.) 参考博客:https://blog.csdn.net/sinat_38413689/article/details/88610033 pip install --user jupyter_contrib_nbextensions

Unbuntu 终端中使用Tab键不能自动补全

解决方案 1.利用vi编辑器打开 /etc/bash.bashrc文件(需要root权限) sudo vi /etc/bash.bashrc 2.找到文件中的下列代码 #enable bash completion in interactive shells #if ! shopt -oq posix; then # if [-f /usr/share/bash-completion/bash_completion ]; then # . /usr/share/bash-completion/b

0008 vim括号引号html标签自动补全

问题:怎样在vim中实现花括号引号自动补全,包括html标签? 解决办法:只要把下面两段代码粘贴到~/.vimrc中,就可以实现括号超强补全 <!--括号引号补全代码{{{--> " 括号引号补全 inoremap ( ()<Esc>i inoremap [ []<Esc>i inoremap { {<CR>}<Esc>O inoremap ) <c-r>=ClosePair(')')<CR> inoremap

[转载]启用 VIM 中的 Python 自动补全及提示功能

转载: http://zhongwei-leg.iteye.com/blog/941474 周围的同事不喜欢使用 VIM 写 Python 代码的原因之一就是,VIM 不能像 Visual Studio 一样自动补全和提示.其实,只是VIM 太低调,大家不知道而已. 这里介绍一下 python omni complete, 安装启用之后,是这个样子的: 1. 如何安装 'Python omni complete' plugin. 如果是VIM7.3,不需要再下载 pythoncomplete.v

Vim设置括号自动补全和快速跳出

一.设置括号自动补全 inoremap ' ''<ESC>i inoremap " ""<ESC>i inoremap ( ()<ESC>i inoremap [ []<ESC>i inoremap { {}<ESC>i<CR><ESC>V<O 其中花括号{设置,自动补全并换行缩进,这在写函数的时候或语句块的时候特别有用. 参考: http://blog.csdn.net/dark_fi

华为命令中Tab键无法自动补全解决办法

一:问题详情 CRT中命令无法使用Tab键自动补全 二:解决办法 原文地址:https://blog.51cto.com/14558454/2450936

Autocomplete 自动补全(Webform实战篇)

因为项目中需要用到一个自动补全的功能,功能描述: 需求一:新增收件人的时候,自动下拉显示出数据库中所有的收件人信息(显示的信息包括:姓名-收件地址-联系方式) 需求二:选中一个值得时候,分别赋值到对应文本框(收件人输入框中赋值 姓名,联系方式输入框中赋值 手机号,收件地址输入框中赋值 地址) 解决需求一(因本人比较懒,所以直接选用了一个比较方便的插件:Autocomplete [参考学习地址:http://www.runoob.com/jqueryui/jqueryui-use.html]) 步

这个库厉害了,自动补全Python代码,节省50%敲码时间

近日,Reddit 上的一篇帖子引起了网友的热议.帖子作者「mlvpj」称: 「我们使用深度学习完成了一个简单的项目,可以自动进行 Python 代码补全.」 根据介绍,该项目基于 LSTM 模型,训练后,负责对代码的缺失部分进行补全.评价模型的方法是判断节省了多少的按键信息--即模型给出长度为 L 的代码建议,如果和真实的代码匹配,则节省 L - 1 个键入操作.实验结果说明,大约可以节省 30%-50% 的**时间键入成本**. 作者在帖子中表示,他们接下来会尝试不同的架构,并提高推断的表现

kubectl 自动补全命令

1.安装bash-completion工具 yum install bash-completion -y 否则报错: -bash: _get_comp_words_by_ref: command not found 2.执行bash_completion source /usr/share/bash-completion/bash_completion 3.加载kubectl completion source <(kubectl completion bash) # 在 bash 中设置当前