diff options
| author | Maxime Coste <mawww@kakoune.org> | 2016-12-14 13:30:59 +0000 |
|---|---|---|
| committer | Maxime Coste <mawww@kakoune.org> | 2016-12-14 13:30:59 +0000 |
| commit | 1bdf26fd6e67e07c2fc8a087595a0e4777b74a0f (patch) | |
| tree | 9be17387107efe90e29207b15fa71001810abebe | |
| parent | dfb030da6efbca77f014f7deb2f2ee98b47bac5c (diff) | |
| parent | 5fcb99a1545d5f5bcf230d40ee8afc0d69ab4bb4 (diff) | |
Merge remote-tracking branch 'casimir/remove-mimetype'
38 files changed, 31 insertions, 142 deletions
diff --git a/rc/base/clojure.kak b/rc/base/clojure.kak index 1336bd41..194a2815 100644 --- a/rc/base/clojure.kak +++ b/rc/base/clojure.kak @@ -6,10 +6,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-clojure %{ - set buffer filetype clojure -} - hook global BufCreate .*[.](cljs?) %{ set buffer filetype clojure } diff --git a/rc/base/css.kak b/rc/base/css.kak index 06c483aa..27a58712 100644 --- a/rc/base/css.kak +++ b/rc/base/css.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-css %{ - set buffer filetype css -} - hook global BufCreate .*[.](css) %{ set buffer filetype css } diff --git a/rc/base/d.kak b/rc/base/d.kak index d5ab7df9..3344572b 100644 --- a/rc/base/d.kak +++ b/rc/base/d.kak @@ -5,7 +5,6 @@ # ‾‾‾‾‾‾‾‾‾ hook global BufCreate .*\.di? %{ - set buffer mimetype "" set buffer filetype d } diff --git a/rc/base/file.kak b/rc/base/file.kak new file mode 100644 index 00000000..89442fa9 --- /dev/null +++ b/rc/base/file.kak @@ -0,0 +1,16 @@ +decl str mimetype + +hook global BufOpen .* %{ %sh{ + if [ -z "${kak_opt_filetype}" ]; then + mime=$(file -b --mime-type "${kak_buffile}") + case "${mime}" in + text/x-*) filetype="${mime#text/x-}" ;; + text/*) filetype="${mime#text/}" ;; + esac + if [ -n "${filetype}" ]; then + printf "set buffer filetype '%s'\n" "${filetype}" + else + printf "set buffer mimetype '%s'\n" "${mime}" + fi + fi +} } diff --git a/rc/base/fish.kak b/rc/base/fish.kak index 81c1dabc..6bb4a5f5 100644 --- a/rc/base/fish.kak +++ b/rc/base/fish.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-fish %{ - set buffer filetype fish -} - hook global BufCreate .*[.](fish) %{ set buffer filetype fish } diff --git a/rc/base/go.kak b/rc/base/go.kak index b925576a..0b0be61b 100644 --- a/rc/base/go.kak +++ b/rc/base/go.kak @@ -5,7 +5,6 @@ # ‾‾‾‾‾‾‾‾‾ hook global BufCreate .*\.go %{ - set buffer mimetype "" set buffer filetype go } diff --git a/rc/base/haskell.kak b/rc/base/haskell.kak index 823c4be0..bb5fb5c1 100644 --- a/rc/base/haskell.kak +++ b/rc/base/haskell.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-haskell %{ - set buffer filetype haskell -} - hook global BufCreate .*[.](hs) %{ set buffer filetype haskell } diff --git a/rc/base/java.kak b/rc/base/java.kak index 606f0318..1ccc82fc 100644 --- a/rc/base/java.kak +++ b/rc/base/java.kak @@ -2,10 +2,6 @@ hook global BufCreate .*\.java %{ set buffer filetype java } -hook global BufSetOption mimetype=text/java %{ - set buffer filetype java -} - addhl -group / regions -default code java \ string %{(?<!')"} %{(?<!\\)(\\\\)*"} '' \ comment /\* \*/ '' \ diff --git a/rc/base/javascript.kak b/rc/base/javascript.kak index 0dfe4334..0ea31df7 100644 --- a/rc/base/javascript.kak +++ b/rc/base/javascript.kak @@ -1,10 +1,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-javascript %{ - set buffer filetype javascript -} - hook global BufCreate .*[.](js) %{ set buffer filetype javascript } diff --git a/rc/base/json.kak b/rc/base/json.kak index 3369d9f9..b92d118b 100644 --- a/rc/base/json.kak +++ b/rc/base/json.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-json %{ - set buffer filetype json -} - hook global BufCreate .*[.](json) %{ set buffer filetype json } diff --git a/rc/base/lisp.kak b/rc/base/lisp.kak index 9c65d950..5b931ab6 100644 --- a/rc/base/lisp.kak +++ b/rc/base/lisp.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-lisp %{ - set buffer filetype lisp -} - hook global BufCreate .*[.](lisp) %{ set buffer filetype lisp } diff --git a/rc/base/lua.kak b/rc/base/lua.kak index b23c92e3..2f5ba4ee 100644 --- a/rc/base/lua.kak +++ b/rc/base/lua.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-lua %{ - set buffer filetype lua -} - hook global BufCreate .*[.](lua) %{ set buffer filetype lua } diff --git a/rc/base/mail.kak b/rc/base/mail.kak index b5d99f8c..9eb3894d 100644 --- a/rc/base/mail.kak +++ b/rc/base/mail.kak @@ -1,4 +1,10 @@ -hook global BufSetOption mimetype=message/rfc822 %{ set buffer filetype mail } +hook global BufCreate .+\.eml %{ + set buffer filetype mail +} + +hook global BufSetOption mimetype=message/rfc822 %{ + set buffer filetype mail +} addhl -group / group mail addhl -group /mail regex ^(From|To|Cc|Bcc|Subject|Reply-To|In-Reply-To):([^\n]*(?:\n\h+[^\n]+)*)$ 1:keyword 2:attribute diff --git a/rc/base/markdown.kak b/rc/base/markdown.kak index 04a31639..3d8814ad 100644 --- a/rc/base/markdown.kak +++ b/rc/base/markdown.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-markdown %{ - set buffer filetype markdown -} - hook global BufCreate .*[.](markdown|md|mkd) %{ set buffer filetype markdown } diff --git a/rc/base/mime.kak b/rc/base/mime.kak deleted file mode 100644 index c0273f58..00000000 --- a/rc/base/mime.kak +++ /dev/null @@ -1,5 +0,0 @@ -decl str mimetype "text/plain" - -hook global BufOpen .* %{ - set buffer mimetype %sh{file -b --mime-type "${kak_buffile}" } -} diff --git a/rc/base/perl.kak b/rc/base/perl.kak index d4c30695..d025ca6d 100644 --- a/rc/base/perl.kak +++ b/rc/base/perl.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-perl %{ - set buffer filetype perl -} - hook global BufCreate .*\.pl %{ set buffer filetype perl } diff --git a/rc/base/ruby.kak b/rc/base/ruby.kak index 185db608..42af2fd7 100644 --- a/rc/base/ruby.kak +++ b/rc/base/ruby.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-ruby %{ - set buffer filetype ruby -} - hook global BufCreate .*(([.](rb))|(irbrc)|(pryrc)|(Capfile|[.]cap)|(Gemfile)|(Guardfile)|(Rakefile|[.]rake)|(Thorfile|[.]thor)|(Vagrantfile)) %{ set buffer filetype ruby } diff --git a/rc/base/rust.kak b/rc/base/rust.kak index da5bc1c7..774b5214 100644 --- a/rc/base/rust.kak +++ b/rc/base/rust.kak @@ -4,13 +4,8 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-rust %{ - set buffer filetype rust -} - hook global BufCreate .*[.](rust|rs) %{ set buffer filetype rust - set buffer mimetype '' } # Highlighters diff --git a/rc/base/scala.kak b/rc/base/scala.kak index f92251ae..869fc3ec 100644 --- a/rc/base/scala.kak +++ b/rc/base/scala.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-scala %{ - set buffer filetype scala -} - hook global BufCreate .*[.](scala) %{ set buffer filetype scala } diff --git a/rc/base/yaml.kak b/rc/base/yaml.kak index 57125c03..ddf5d7bc 100644 --- a/rc/base/yaml.kak +++ b/rc/base/yaml.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-yaml %{ - set buffer filetype yaml -} - hook global BufCreate .*[.](yaml) %{ set buffer filetype yaml } diff --git a/rc/core/asciidoc.kak b/rc/core/asciidoc.kak index a7bb1539..308d211f 100644 --- a/rc/core/asciidoc.kak +++ b/rc/core/asciidoc.kak @@ -4,7 +4,9 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufCreate .*\.asciidoc %{ set buffer filetype asciidoc } +hook global BufCreate .+\.(a(scii)?doc|asc) %{ + set buffer filetype asciidoc +} # Highlighters # ‾‾‾‾‾‾‾‾‾‾‾‾ diff --git a/rc/core/c-family.kak b/rc/core/c-family.kak index 22862111..3d446e9f 100644 --- a/rc/core/c-family.kak +++ b/rc/core/c-family.kak @@ -1,11 +1,13 @@ hook global BufCreate .*\.(cc|cpp|cxx|C|hh|hpp|hxx|H)$ %{ set buffer filetype cpp - set buffer mimetype '' +} + +hook global BufSetOption filetype=c\+\+ %{ + set buffer filetype cpp } hook global BufCreate .*\.c$ %{ set buffer filetype c - set buffer mimetype '' } hook global BufCreate .*\.h$ %{ @@ -15,24 +17,10 @@ hook global BufCreate .*\.h$ %{ } catch %{ set buffer filetype c } - set buffer mimetype '' -} - -hook global BufSetOption mimetype=text/x-c %{ - set buffer filetype c -} - -hook global BufSetOption mimetype=text/x-c\+\+ %{ - set buffer filetype cpp } hook global BufCreate .*\.m %{ set buffer filetype objc - set buffer mimetype '' -} - -hook global BufSetOption mimetype=text/x-objc %{ - set buffer filetype objc } def -hidden c-family-trim-autoindent %[ eval -draft -itersel %[ diff --git a/rc/core/makefile.kak b/rc/core/makefile.kak index 7b06eef7..04f98fd6 100644 --- a/rc/core/makefile.kak +++ b/rc/core/makefile.kak @@ -1,10 +1,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-makefile %{ - set buffer filetype makefile -} - hook global BufCreate .*/?[mM]akefile %{ set buffer filetype makefile } diff --git a/rc/core/python.kak b/rc/core/python.kak index 7bca05b7..fc09beaa 100644 --- a/rc/core/python.kak +++ b/rc/core/python.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-python %{ - set buffer filetype python -} - hook global BufCreate .*[.](py) %{ set buffer filetype python } diff --git a/rc/core/sh.kak b/rc/core/sh.kak index a2bc73a5..07e3321a 100644 --- a/rc/core/sh.kak +++ b/rc/core/sh.kak @@ -2,10 +2,6 @@ hook global BufCreate .*\.(z|ba|c|k)?sh(rc|_profile)? %{ set buffer filetype sh } -hook global BufSetOption mimetype=text/x-shellscript %{ - set buffer filetype sh -} - addhl -group / regions -default code sh \ double_string %{(?<!\\)(\\\\)*\K"} %{(?<!\\)(\\\\)*"} '' \ single_string %{(?<!\\)(\\\\)*\K'} %{'} '' \ diff --git a/rc/extra/cabal.kak b/rc/extra/cabal.kak index 812c8212..453355e4 100644 --- a/rc/extra/cabal.kak +++ b/rc/extra/cabal.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-cabal %{ - set buffer filetype cabal -} - hook global BufCreate .*[.](cabal) %{ set buffer filetype cabal } diff --git a/rc/extra/coffee.kak b/rc/extra/coffee.kak index 3090e365..e3541cbf 100644 --- a/rc/extra/coffee.kak +++ b/rc/extra/coffee.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-coffee %{ - set buffer filetype coffee -} - hook global BufCreate .*[.](coffee) %{ set buffer filetype coffee } diff --git a/rc/extra/cucumber.kak b/rc/extra/cucumber.kak index ad9c5c68..de69ebaa 100644 --- a/rc/extra/cucumber.kak +++ b/rc/extra/cucumber.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-cucumber %{ - set buffer filetype cucumber -} - hook global BufCreate .*[.](feature|story) %{ set buffer filetype cucumber } diff --git a/rc/extra/haml.kak b/rc/extra/haml.kak index 8191803e..a6531989 100644 --- a/rc/extra/haml.kak +++ b/rc/extra/haml.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-haml %{ - set buffer filetype haml -} - hook global BufCreate .*[.](haml) %{ set buffer filetype haml } diff --git a/rc/extra/latex.kak b/rc/extra/latex.kak index 5159740b..303ea9c5 100644 --- a/rc/extra/latex.kak +++ b/rc/extra/latex.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-tex %{ - set buffer filetype latex -} - hook global BufCreate .*\.tex %{ set buffer filetype latex } diff --git a/rc/extra/modeline.kak b/rc/extra/modeline.kak index 962b3f41..4e9e5466 100644 --- a/rc/extra/modeline.kak +++ b/rc/extra/modeline.kak @@ -52,7 +52,6 @@ def -hidden _modeline-parse %{ autowrap_column eolformat filetype - mimetype BOM ) diff --git a/rc/extra/moon.kak b/rc/extra/moon.kak index e5f790f3..9439a0de 100644 --- a/rc/extra/moon.kak +++ b/rc/extra/moon.kak @@ -4,12 +4,8 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-moon %{ - set buffer filetype moon -} - hook global BufCreate .*[.](moon) %{ - set buffer mimetype text/x-moon + set buffer filetype moon } # Highlighters diff --git a/rc/extra/pug.kak b/rc/extra/pug.kak index c8fd5d7a..d1a37f5f 100644 --- a/rc/extra/pug.kak +++ b/rc/extra/pug.kak @@ -8,10 +8,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-pug %{ - set buffer filetype pug -} - hook global BufCreate .*[.](pug|jade) %{ set buffer filetype pug } diff --git a/rc/extra/ragel.kak b/rc/extra/ragel.kak index b5411e92..cc934c64 100644 --- a/rc/extra/ragel.kak +++ b/rc/extra/ragel.kak @@ -6,10 +6,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-ragel %{ - set buffer filetype ragel -} - hook global BufCreate .*[.](ragel|rl) %{ set buffer filetype ragel } diff --git a/rc/extra/sass.kak b/rc/extra/sass.kak index 982928a6..9c0cef76 100644 --- a/rc/extra/sass.kak +++ b/rc/extra/sass.kak @@ -4,10 +4,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-sass %{ - set buffer filetype sass -} - hook global BufCreate .*[.](sass) %{ set buffer filetype sass } diff --git a/rc/extra/scss.kak b/rc/extra/scss.kak index c9be1c52..d09a86da 100644 --- a/rc/extra/scss.kak +++ b/rc/extra/scss.kak @@ -6,10 +6,6 @@ # Detection # ‾‾‾‾‾‾‾‾‾ -hook global BufSetOption mimetype=text/x-scss %{ - set buffer filetype scss -} - hook global BufCreate .*[.](scss) %{ set buffer filetype scss } diff --git a/rc/extra/taskpaper.kak b/rc/extra/taskpaper.kak index 5a366d3d..ec71ef7b 100644 --- a/rc/extra/taskpaper.kak +++ b/rc/extra/taskpaper.kak @@ -5,7 +5,6 @@ # ‾‾‾‾‾‾‾‾‾ hook global BufCreate .*\.taskpaper %{ - set buffer mimetype "" set buffer filetype taskpaper } diff --git a/rc/extra/tupfile.kak b/rc/extra/tupfile.kak index 438d6b54..c412afbe 100644 --- a/rc/extra/tupfile.kak +++ b/rc/extra/tupfile.kak @@ -5,7 +5,6 @@ # ‾‾‾‾‾‾‾‾‾ hook global BufCreate (.+/)?[Tt]upfile %{ - set buffer mimetype "" set buffer filetype tupfile } |
