diff --git a/data/plugins/language_js.lua b/data/plugins/language_js.lua index 7556b00b..dd1151eb 100644 --- a/data/plugins/language_js.lua +++ b/data/plugins/language_js.lua @@ -11,8 +11,8 @@ syntax.add { { pattern = { '"', '"', '\\' }, type = "string" }, { pattern = { "'", "'", '\\' }, type = "string" }, { pattern = { "`", "`", '\\' }, type = "string" }, - { pattern = "0x[%da-fA-F]+", type = "number" }, - { pattern = "-?%d+[%d%.eE]*", type = "number" }, + { pattern = "0x[%da-fA-F_]+n?", type = "number" }, + { pattern = "-?%d+[%d%.eE_n]*", type = "number" }, { pattern = "-?%.?%d+", type = "number" }, { pattern = "[%+%-=/%*%^%%<>!~|&]", type = "operator" }, { pattern = "[%a_][%w_]*%f[(]", type = "function" }, diff --git a/data/plugins/treeview.lua b/data/plugins/treeview.lua index fa3ab53a..70dca08f 100644 --- a/data/plugins/treeview.lua +++ b/data/plugins/treeview.lua @@ -295,6 +295,12 @@ function TreeView:draw_tooltip() end +function TreeView:color_for_item(abs_filename) + -- other plugins can override this to customize the color of each icon + return nil +end + + function TreeView:draw() self:draw_background(style.background2) @@ -318,6 +324,9 @@ function TreeView:draw() color = style.accent end + -- allow for color overrides + local icon_color = self:color_for_item(item.abs_filename) or color + -- icons x = x + item.depth * style.padding.x + style.padding.x if item.type == "dir" then @@ -325,11 +334,11 @@ function TreeView:draw() local icon2 = item.expanded and "D" or "d" common.draw_text(style.icon_font, color, icon1, nil, x, y, 0, h) x = x + style.padding.x - common.draw_text(style.icon_font, color, icon2, nil, x, y, 0, h) + common.draw_text(style.icon_font, icon_color, icon2, nil, x, y, 0, h) x = x + icon_width else x = x + style.padding.x - common.draw_text(style.icon_font, color, "f", nil, x, y, 0, h) + common.draw_text(style.icon_font, icon_color, "f", nil, x, y, 0, h) x = x + icon_width end