我想在command-line mode中禁用relativenumber
。因为有些事我需要知道命令行模式下的绝对亚麻布(按:<line_number>
转行)
我的设置如下,但不起作用......
autocmd CmdwinEnter * set norelativenumber
autocmd CmdwinLeave * set relativenumber
不知何故,此设置(Get fome here)正常工作:
autocmd CmdwinEnter * let b:ei_save = &eventignore | set eventignore=CursorHold,InsertEnter
autocmd CmdwinLeave * let &eventignore = b:ei_save
我想知道为什么CmdwinEnter
/ CmdwinLeave
** relavitenumber`不起作用,我怎么能做到。
autocmd InsertEnter * set norelativenumber
autocmd InsertLeave * set relativenumber
和
答案 0 :(得分:1)
您对事件名称CmdwinEnter/Leave
感到困惑,它们将通过进入/离开命令行窗口而不是命令行模式来触发。 :h cmdwin
我猜您当前的设置,在命令模式下,如果按ctrl-f
(输入cmd-win),您应该看到行号更改,它将应用于command line window
,您必须找到主编辑的窗口ID,才能更改设置。
要抓住“事件”进入命令行模式,您可以将普通模式:
映射到一个函数,在那里,您可以进行预处理。
为了捕捉离开cmd模式的“事件”,你必须一直检查当前模式,如果它变为正常模式。