aboutsummaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
authorJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2021-06-26 10:50:17 -0400
committerJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2021-06-26 10:51:29 -0400
commit750ad1884586628c5aa7fca7a23411035ce26a42 (patch)
tree4aa129cc6a0b882735520f95717940abe7f8ce22 /runtime
parent5c0b01fd887ff5043e196a0e21f03d547e65a98b (diff)
downloadrneovim-750ad1884586628c5aa7fca7a23411035ce26a42.tar.gz
rneovim-750ad1884586628c5aa7fca7a23411035ce26a42.tar.bz2
rneovim-750ad1884586628c5aa7fca7a23411035ce26a42.zip
vim-patch:8.2.3050: cannot recognize elixir files
Problem: Cannot recognize elixir files. Solution: Recognize Elixir-specific files. Check if an .ex file is Euphoria or Elixir. (Austin Gatlin, closes vim/vim#8401, closes vim/vim#8446) https://github.com/vim/vim/commit/f3caeb63d62c08b579e9b5f40b35e8bf64dde87a
Diffstat (limited to 'runtime')
-rw-r--r--runtime/autoload/dist/ft.vim11
-rw-r--r--runtime/filetype.vim11
2 files changed, 20 insertions, 2 deletions
diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim
index 1ac74b5785..ac80659113 100644
--- a/runtime/autoload/dist/ft.vim
+++ b/runtime/autoload/dist/ft.vim
@@ -172,6 +172,17 @@ func dist#ft#FTent()
setf dtd
endfunc
+func dist#ft#ExCheck()
+ let lines = getline(1, min([line("$"), 100]))
+ if exists('g:filetype_euphoria')
+ exe 'setf ' . g:filetype_euphoria
+ elseif match(lines, '^--\|^ifdef\>\|^include\>') > -1
+ setf euphoria3
+ else
+ setf elixir
+ endif
+endfunc
+
func dist#ft#EuphoriaCheck()
if exists('g:filetype_euphoria')
exe 'setf ' . g:filetype_euphoria
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 09a1d1d0e6..d449edfd02 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -389,7 +389,7 @@ au BufNewFile,BufRead *.cfm,*.cfi,*.cfc setf cf
" Configure scripts
au BufNewFile,BufRead configure.in,configure.ac setf config
-" CUDA Cumpute Unified Device Architecture
+" CUDA Compute Unified Device Architecture
au BufNewFile,BufRead *.cu,*.cuh setf cuda
" Dockerfilb; Podman uses the same syntax with name Containerfile
@@ -404,8 +404,15 @@ au BufNewFile,BufRead *enlightenment/*.cfg setf c
" Eterm
au BufNewFile,BufRead *Eterm/*.cfg setf eterm
+" Elixir or Euphoria
+au BufNewFile,BufRead *.ex call dist#ft#ExCheck()
+
+" Elixir
+au BufRead,BufNewFile mix.lock,*.exs setf elixir
+au BufRead,BufNewFile *.eex,*.leex setf eelixir
+
" Euphoria 3 or 4
-au BufNewFile,BufRead *.eu,*.ew,*.ex,*.exu,*.exw call dist#ft#EuphoriaCheck()
+au BufNewFile,BufRead *.eu,*.ew,*.exu,*.exw call dist#ft#EuphoriaCheck()
if has("fname_case")
au BufNewFile,BufRead *.EU,*.EW,*.EX,*.EXU,*.EXW call dist#ft#EuphoriaCheck()
endif