view runtime/ftplugin/elixir.vim @ 34028:bcf1429cb1fc v9.0.2188

patch 9.0.2188: cursor wrong after { in single line buffer Commit: https://github.com/vim/vim/commit/9e6549d2fb282c45a2492ea95fe7ba54c2082c3e Author: Gary Johnson <garyjohn@spocom.com> Date: Wed Dec 27 19:12:43 2023 +0100 patch 9.0.2188: cursor wrong after { in single line buffer Problem: cursor wrong after { in single line buffer (Edwin Chan) Solution: do not place the cursor at the end for a single line buffer when moving backwards (Gary Johnson) closes: #13780 closes: #13783 Signed-off-by: Gary Johnson <garyjohn@spocom.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Wed, 27 Dec 2023 19:30:03 +0100
parents 5491229840a3
children 9552a4f3d0b5
line wrap: on
line source

" Elixir filetype plugin
" Language: Elixir
" Maintainer:	Mitchell Hanberg <vimNOSPAM@mitchellhanberg.com>
" Last Change: 2023 Dec 26

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

setlocal indentkeys=0#,!^F,o,O
" Enable keys for blocks
setlocal indentkeys+=0=after,0=catch,0=do,0=else,0=end,0=rescue
" Enable keys that are usually the first keys in a line
setlocal indentkeys+=0->,0\|>,0},0],0),>

let b:undo_ftplugin = 'setlocal sw< sts< et< isk< com< cms<'

let &cpo = s:save_cpo
unlet s:save_cpo