diff options
Diffstat (limited to 'lua/lexers/less.lua')
| -rw-r--r-- | lua/lexers/less.lua | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/lua/lexers/less.lua b/lua/lexers/less.lua index 2f56cdd..317d252 100644 --- a/lua/lexers/less.lua +++ b/lua/lexers/less.lua @@ -1,27 +1,20 @@ --- Copyright 2006-2017 Robert Gieseke. See LICENSE. +-- Copyright 2006-2022 Robert Gieseke. See LICENSE. -- Less CSS LPeg lexer. -- http://lesscss.org -local l = require('lexer') -local token = l.token +local lexer = require('lexer') +local token = lexer.token local S = lpeg.S -local M = {_NAME = 'less'} +local lex = lexer.new('less', {inherit = lexer.load('css')}) -- Line comments. -local line_comment = token(l.COMMENT, '//' * l.nonnewline^0) +lex:add_rule('line_comment', token(lexer.COMMENT, lexer.to_eol('//'))) -- Variables. -local variable = token(l.VARIABLE, '@' * (l.alnum + S('_-{}'))^1) +lex:add_rule('variable', token(lexer.VARIABLE, '@' * (lexer.alnum + S('_-{}'))^1)) -local css = l.load('css') -local _rules = css._rules -table.insert(_rules, #_rules - 1, {'line_comment', line_comment}) -table.insert(_rules, #_rules - 1, {'variable', variable}) -M._rules = _rules +-- Fold points. +lex:add_fold_point(lexer.COMMENT, lexer.fold_consecutive_lines('//')) -M._tokenstyles = css._tokenstyles - -M._foldsymbols = css._foldsymbols - -return M +return lex |
