这种语言的名称有时也被称为Vimscript,是一个争论的话题。有些地方使用Viml(或者是VimL?),其他地方则使用Vimscript。它有正式名称吗?如果有,它是什么?从什么时候开始正式使用? 关于VimL vs Vimscript的问题(〜5岁) 最近的一篇帖子提到它有一个正式名称 一系列的:helpgrep \cviml\>尝试导致我们syntax.txt: g:vimsyn_noerror Not all error highlighting that syntax/vim.vim does may be correct; VimL is a difficult language to highlight correctly. 和version7.txt: Added special python-vars objects also available for python-buffer and python-window. They ease access to VimL variables from Python. 因此,这似乎VimL是一个正式术语,但是usr_41.txt,最好地记录了该语言的文件却没有提及VimL。
在vimscript函数中,我需要l:matched在调用后为变量分配匹配的字符串search(),我想知道是否有比我目前正在做的事情更短的方法: let l:pattern = '\v^Foo: \zs.*' let l:line = search(l:pattern) let l:line_text = getline(l:line) let l:matched = matchstr(l:line, l:pattern) 理想情况下,我想要类似 let l:matched = search_text(l:pattern) 没有诉诸getline()。有没有我似乎找不到的vim函数?
在脚本中,习惯执行以下操作: let s:save_cpo = &cpo set cpo&vim ... script ... let &cpo = s:save_cpo 确保脚本的不兼容模式。 是: set cpo&vim 某种特殊的语法,例如foo & bar?还是更像是命令,触发行或其他?
我正在尝试编写一个函数,用美元符号($)替换当前行第六列中的字符,但是我希望光标保持在调用该函数之前的位置。 因此,我尝试存储当前列,执行更改,然后返回以下函数: function! DollarSplit() let col_number=col(".") "stores the current column number of the cursor normal! 6|r$ " replaces the 6th caracter in line with a $ execute col_number."|" endfunction 我可能对execute命令有一些误解...或者我应该创建一个包含要执行的命令的字符串?