Vim 根據時間動態切換顏色主題
分類
建立時間: 2024年6月6日 08:58
更新時間: 2024年6月11日 09:02
說明
在閱讀《精通 vi 與 Vim 第八版》時,我發現了一個相當不錯的腳本,它可以根據當前時間自動切換顏色主題。這不僅可以讓你的編輯環境更加個性化,還能提高在不同時間段的舒適度。
腳本
~/.vim/autoload/myplugin/dynamic_colorscheme.vim
function myplugin#dynamic_colorscheme#SetTimeOfDayColors()
" currentHour will be 0, 1, 2, or 3
let l:favorite_colorschemes = ["darkblue", "morning", "shine", "evening"]
let l:current_hour = strftime("%H") / 6
let l:favorite_colorscheme = l:favorite_colorschemes[l:current_hour]
if !exists("g:my_variable")
execute "colorscheme " . l:favorite_colorscheme
return
endif
if g:colors_name !~ l:favorite_colorscheme
execute "colorscheme " . l:favorite_colorscheme
echo "execute " "colorscheme " . l:favorite_colorscheme
redraw!
endif
endfunction
我稍微修改了腳本,把全域變數改成區域變數,把腳本放在 autoload
裡面,使用 autoload
的方式調用函式。
使用方法
方法1
啟動 vim 時調用一次 myplugin#dynamic_colorscheme#SetTimeOfDayColors()
。
缺點是沒辦法及時更新。
.vimrc
call myplugin#dynamic_colorscheme#SetTimeOfDayColors()
方法2
在每次狀態列更新時調用 myplugin#dynamic_colorscheme#SetTimeOfDayColors()
。
.vimrc
set statusline +=\ %{myplugin#dynamic_colorscheme#SetTimeOfDayColors()}
參考
觀看次數: 243
colorcolorschemedynamicscriptvim動態顏色顏色主題主題
一杯咖啡的力量,勝過千言萬語的感謝。
支持我一杯咖啡,讓我繼續創作優質內容,與您分享更多知識與樂趣!