home/rc/makefile.kak
Frank LENORMAND f7e976676c Introduce the commenting.kak file
Centralize commenting functions into a single file, and declare
variables used by those functions in language support files. The
functions are `comment-selection` and `comment-line`, users should bind
those functions to the keys of their liking for easy access.
2015-10-25 15:54:17 +03:00

36 lines
924 B
Plaintext

# Detection
# ‾‾‾‾‾‾‾‾‾
hook global BufSetOption mimetype=text/x-makefile %{
set buffer filetype makefile
}
hook global BufCreate [mM]akefile %{
set buffer filetype makefile
}
# Highlighters
# ‾‾‾‾‾‾‾‾‾‾‾‾
addhl -group / regions -default content makefile \
comment '#' '$' '' \
eval '\$\(' '\)' '\('
addhl -group /makefile/comment fill comment
addhl -group /makefile/eval fill value
addhl -group /makefile/content regex ^[\w.%]+\h*:\s 0:identifier
addhl -group /makefile/content regex \b(ifeq|ifneq|else|endif)\b 0:keyword
addhl -group /makefile/content regex [+?:]= 0:operator
# Initialization
# ‾‾‾‾‾‾‾‾‾‾‾‾‾‾
hook global WinSetOption filetype=makefile %{
addhl ref makefile
set window comment_selection_chars ""
set window comment_line_chars "#"
}
hook global WinSetOption filetype=(?!makefile).* %{ rmhl makefile }