summary refs log tree commit diff
path: root/.vim/autoload/daymode.vim
diff options
context:
space:
mode:
authorRobert Günzler <r@gnzler.io>2020-01-26 17:16:07 +0100
committerRobert Günzler <r@gnzler.io>2020-01-26 18:00:59 +0100
commitf5d56602df70950de6b7d40966b00c9939c81763 (patch)
treeb50ffeb5496fe3525cc1bab2629389ced95435b7 /.vim/autoload/daymode.vim
Intial commit of v2
See https://drewdevault.com/2019/12/30/dotfiles.html
Diffstat (limited to '.vim/autoload/daymode.vim')
-rw-r--r--.vim/autoload/daymode.vim34
1 files changed, 34 insertions, 0 deletions
diff --git a/.vim/autoload/daymode.vim b/.vim/autoload/daymode.vim
new file mode 100644
index 0000000..afac142
--- /dev/null
+++ b/.vim/autoload/daymode.vim
@@ -0,0 +1,34 @@
+function! s:lightline_update(colors)
+    if !exists('g:loaded_lightline')
+        return
+    endif
+    try
+        let g:lightline.colorscheme = a:colors
+        call lightline#init()
+        call lightline#colorscheme()
+        call lightline#update()
+    catch
+    endtry
+endfunction
+
+let s:day_mode_previous_colorscheme = ''
+let s:day_mode_previous_lightline_colorscheme = ''
+
+function! daymode#switch(bang)
+    if a:bang
+        set background=dark
+        execute 'colorscheme' s:day_mode_previous_colorscheme
+        call s:lightline_update(s:day_mode_previous_lightline_colorscheme)
+    else
+        let s:day_mode_previous_colorscheme = g:colors_name
+        let s:day_mode_previous_lightline_colorscheme = g:lightline.colorscheme
+
+        set background=light
+        execute 'colorscheme' get(g:, 'day_mode_colorscheme', 'morning')
+        call s:lightline_update(get(g:, 'day_mode_lightline_colorscheme', 'PaperColor_light'))
+    endif
+
+    if exists("syntax_on")
+        syntax reset
+    endif
+endfunction