我曾经使用netbeans,它总是放一个星号,并在文件自上次保存后更改时更改了标签颜色。有没有办法让vim做类似的事情,就是提醒我,我还没有保存文件?
我知道有一种方法可以让它偶尔自动保存,但我不想这样做。
答案 0 :(得分:6)
如果文件被修改,您可以使用'statusline'
选项中的m
标记添加[+]
。请注意,要查看状态行,您需要将'laststatus'
设置为大于0(如果有两个或更多窗口,则1-Only显示状态行,2-Always)。
如果您使用的是GUI版本,例如MacVim,您可能更喜欢设置'titlestring'
,它使用相同的语法,但会改变窗口管理器中窗口的名称。
:set laststatus=2
:set statusline=[%n]\ %<%f%h%m
这将显示:
[
:literal %n
:缓冲区编号]
:literal \<Space>
:空格%<
:如果太长则在开头截断字段%f
:缓冲区中文件的路径,与当前类型相关或相对于当前文件
目录。%h
:帮助缓冲区标记,文本为“[help]”。%m
:修改后的标志,文字为“[+]”; “[ - ]”如果'可修改'关闭。有关详细信息,请参阅:
答案 1 :(得分:6)
致电:ls
,您会在未保存的缓冲区
+
答案 2 :(得分:0)
在正常模式下按 Ctrl + g (或等效为:f
)将显示文件状态,指示文件是否被修改。
状态看起来像这样
"file_name" 100 lines --20%--
如果文件未修改,或者
"file_name" [Modified] 100 lines --20%--
如果文件被修改。
有关更多信息,请参见:help ^g
。
答案 3 :(得分:0)
如果终端在某处显示其标题,则可以使用
:set title
显示文件是否被修改:如果文件名被修改,则会在文件名后显示+
。
但是,文件的文件名末尾可以有 +
。对于大多数文件,这应该可以正常工作。