1
1
mirror of https://github.com/mawww/kakoune.git synced 2024-11-29 10:02:57 +03:00
kakoune/rc/extra/editorconfig.kak

34 lines
1.3 KiB
Plaintext

def editorconfig-load -docstring "Set indentation options according to editorconfig file" %{
%sh{
command -v editorconfig >/dev/null 2>&1 || { echo 'echo -color Error The editorconfig tool could not be found'; exit 1; }
editorconfig $kak_buffile | awk -F= -- \
'{
if ($1 == "indent_style" && $2 == "tab") {
print "set buffer indentwidth 0"
}
else if ($1 == "indent_size" && $2 ~ "[0-9]+") {
print "set buffer indentwidth", $2
}
else if ($1 == "tab_width" && $2 ~ "[0-9]+") {
print "set buffer tabstop", $2
}
else if ($1 == "end_of_line") {
if ($2 == "lf" || $2 == "crlf") {
print "set buffer eolformat", $2
}
else {
print "echo -color yellow",$2,"is not a valid eolformat string: ignored\""
}
}
else if ($1 == "charset") {
if ($2 == "utf-8-bom") {
print "set buffer BOM utf8"
}
else {
print "set buffer BOM none"
}
}
}'
}
}