summaryrefslogtreecommitdiffstats
path: root/runtime/ftplugin/elixir.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/ftplugin/elixir.vim')
-rw-r--r--runtime/ftplugin/elixir.vim33
1 files changed, 33 insertions, 0 deletions
diff --git a/runtime/ftplugin/elixir.vim b/runtime/ftplugin/elixir.vim
new file mode 100644
index 0000000..50f6367
--- /dev/null
+++ b/runtime/ftplugin/elixir.vim
@@ -0,0 +1,33 @@
+" Elixir filetype plugin
+" Language: Elixir
+" Maintainer: Mitchell Hanberg <vimNOSPAM@mitchellhanberg.com>
+" Last Change: 2022 Sep 20
+
+if exists("b:did_ftplugin")
+ finish
+endif
+let b:did_ftplugin = 1
+
+let s:save_cpo = &cpo
+set cpo&vim
+
+" Matchit support
+if exists('loaded_matchit') && !exists('b:match_words')
+ let b:match_ignorecase = 0
+
+ let b:match_words = '\:\@<!\<\%(do\|fn\)\:\@!\>' .
+ \ ':' .
+ \ '\<\%(else\|catch\|after\|rescue\)\:\@!\>' .
+ \ ':' .
+ \ '\:\@<!\<end\>' .
+ \ ',{:},\[:\],(:)'
+endif
+
+setlocal shiftwidth=2 softtabstop=2 expandtab iskeyword+=!,?
+setlocal comments=:#
+setlocal commentstring=#\ %s
+
+let b:undo_ftplugin = 'setlocal sw< sts< et< isk< com< cms<'
+
+let &cpo = s:save_cpo
+unlet s:save_cpo