From b2800904b8cb8269c0e750dced51e8dc422af8f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Wed, 4 May 2016 17:42:18 +0200 Subject: vis-lua: reload all lexers after theme change Close #221 --- vis.lua | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'vis.lua') diff --git a/vis.lua b/vis.lua index 1ca1e37..bde564f 100644 --- a/vis.lua +++ b/vis.lua @@ -201,3 +201,19 @@ vis.filetype_detect = function(win) win.syntax = nil end +vis.events.theme_change = function(name) + if name ~= nil then + local theme = 'themes/'..name + package.loaded[theme] = nil + require(theme) + end + + if vis.lexers ~= nil then + vis.lexers.lexers = {} + end + + for win in vis:windows() do + win.syntax = win.syntax; + end +end + -- cgit v1.2.3