Vim:名称中没有扩展名的特定文件类型的自动命令?
我正在尝试实现上面的命令对shellscripts的效果,没有扩展Vim:名称中没有扩展名的特定文件类型的自动命令?,vim,Vim,我正在尝试实现上面的命令对shellscripts的效果,没有扩展 autocommand BufEnter,TextChanged,InsertLeave *.sh Neomake 显示一组选项,包括autocmd模式 :help autocommand 他说: 该模式被解释为主要用于文件名: *匹配任何字符序列;异常:包括路径 分离器 ? 匹配任何单个字符 ? 匹配一个“?” . 与“.”匹配。 ~匹配一个“~” ,分隔模式 ,匹配一个“,” |模式中的{}like()| ,在
autocommand BufEnter,TextChanged,InsertLeave *.sh Neomake
显示一组选项,包括autocmd模式
:help autocommand
他说:
该模式被解释为主要用于文件名:*匹配任何字符序列;异常:包括路径 分离器
? 匹配任何单个字符
? 匹配一个“?”
. 与“.”匹配。
~匹配一个“~”
,分隔模式
,匹配一个“,”
|模式中的{}like()|
,在{}内:像|在|模式中|
}文字}
{文字{
\{n,m}类似{n,m}的|模式|
\特殊含义,如|模式|
[ch]匹配“c”或“h”
[^ch]匹配除“c”和“h”之外的任何字符
…
可以使用|模式|项,但它们可能无法按预期工作, 因为以上所做的翻译 因此,如果我们想匹配不包含
的内容,我们可以使用类似
:help autocmd-patterns
这将匹配任何长度至少为4位(可能为5位,取决于*
是否匹配空字符串)且没有\..{0,3}
后缀的文件名(例如.txt
等)。如果您的后缀较长,则必须增加您的数字,这反过来会增加它将匹配的非后缀文件名的最小长度。这是一个丑陋的黑客行为,但我认为没有更好的方法
显示一组选项,包括autocmd模式
:help autocommand
他说:
该模式被解释为主要用于文件名:*匹配任意字符序列;异常:包括路径 分离器
?匹配任何单个字符
?匹配一个“?”
.与“.”匹配。
~匹配一个“~”
,分隔模式
,匹配一个“,”
|模式中的{}like()|
,在{}内:像|在|模式中|
}文字}
{文字{
\{n,m}类似{n,m}的|模式|
\特殊含义,如|模式|
[ch]匹配“c”或“h”
[^ch]匹配除“c”和“h”之外的任何字符
…
可以使用|模式|项,但它们可能无法按预期工作, 因为以上所做的翻译 因此,如果我们想匹配不包含
的内容,我们可以使用类似
:help autocmd-patterns
这将匹配任何长度至少为4位(可能为5位,取决于*
是否匹配空字符串)且没有\..{0,3}
后缀的文件名(例如.txt
等)。如果后缀较长,则必须增加数字,这反过来会增加它将匹配的非后缀文件名的最小长度。这是一个难看的攻击,但我认为没有更好的方法。当缓冲区的文件类型设置为某个Shell文件类型时,可以为其创建缓冲区(例如sh
或bash
)
例如:
autocommand BufEnter,TextChanged,InsertLeave *[^.]\\\{4\} Neomake
当缓冲区的文件类型设置为Shell文件类型之一(例如sh
或bash
)时,可以为其创建缓冲区
例如:
autocommand BufEnter,TextChanged,InsertLeave *[^.]\\\{4\} Neomake
我不知道你可以像那样链接AUT命令!谢谢你的代码片段。效果很好。我不知道你可以像那样链接AUT命令!谢谢你的代码片段。效果很好。