2012-07-18 31 views
7

当我打开2个水平分割的文件时,每个窗口都有自己的状态行。vim:为分割窗口设置不同的状态行

例如使用命令

vim -o a.txt b.txt 

我会状态行“A.TXT”为第一窗口,“b.txt”的第二个窗口。

我需要从命令行调用vim,我需要放置一个自定义状态行,并且我希望为每个窗口使用不同的状态行。

随着

vim -o -c "set statusline=hello" a.txt b.txt 

我收到 “你好” 作为两个窗口状态。

我该怎么做才能让“hello”成为第一个窗口的状态行,第二个窗口是“world”从命令行调用vim时?

该命令不工作:

vim -o -c "set statusline=hello" a.txt -c "set statusline=world" b.txt 

请帮助。

回答

7

可以使用setlocal命令:

vim -o a.txt b.txt -c "setl stl=hello | wincmd j | setl stl=world" 

类型:help 'stl'

'statusline' 'stl'  string (default empty) 
         global or local to window |global-local| 

我们可以看到:stlglobal or local to window选项。
因此,:setl stl=hello将设置当前窗口的本地状态行。

+0

谢谢,这工作。 :) – 2012-07-18 10:05:51