我正在尝试从第202页的学习vi和vim一书中实现vim脚本。以下功能有效,但当我尝试使用statusline调用它时,我收到以下错误:
$ vim
$ Error detected while processing /Users/me/.vimrc:
E518: Unknown option: \ %{SetTimeOfDayColors()}
这是vim脚本(它目前在我的.vimrc中)
function SetTimeOfDayColors()
let currentHour = strftime("%H")
echo "currentHour is " . currentHour
if currentHour < 6 + 0
let colorScheme = "darkblue"
elseif currentHour < 12 + 0
let colorScheme = "morning"
elseif currentHour < 18 + 0
let colorScheme = "shine"
else
let colorScheme = "evening"
endif
echo "setting color scheme to " . colorScheme
execute "colorscheme " . colorScheme
endfunction
set statusline=%<%f\ %h%m%r%=%-20.(line=%l,col=%c%V,totlin=%L%)\%h%m%r%=%-40(,bytval=0x%B,%n%Y%)\ %{strftime(\"%c\")}%=0x%B\ %P
set statusline += \ %{SetTimeOfDayColors()}
最后一行的目的是每当我进行编辑并运行自定义函数时让vim检查时间。但我无法让它发挥作用。有什么建议?谢谢。
答案 0 :(得分:9)
您需要立即删除+ =。
右侧的空格