这是我的 .vimrc <<learning the vi and vim>> p201-203 .
.vimrc
<<learning the vi and vim>>
p201-203
function SetTimeOfDayColors() let currentHour = strftime("%H") 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 += \ %{SetTimeOfDayColors()}
vim test.txt .
vim test.txt
第15行:E518:未知选项:\%{SetTimeOfDayColors()}按ENTER键 或键入命令继续
不能在 = (或 += )转让 :set :
=
+=
:set
set statusline+=\ %{SetTimeOfDayColors()}
不过,你已经正确地逃离了领先的空间。在这里,这很容易修复;对于更复杂的修改,切换到 :let
:let
let &statusline .= ' %{SetTimeOfDayColors()}'
像 :让 处理变量(和 &statusline
:让
&statusline