diff options
author | Adam Stankiewicz <sheerun@sher.pl> | 2017-09-27 19:57:29 +0200 |
---|---|---|
committer | Adam Stankiewicz <sheerun@sher.pl> | 2017-09-27 19:57:29 +0200 |
commit | 8b3418cab8eb5267b3a5743e4d5fe5f698d48bc8 (patch) | |
tree | 125734ac66307a962eeda16283355dde0d0fbd2e /indent/elixir.vim | |
parent | 9bfde7574aa89a91b80ed9c993fc000cfc11aae7 (diff) | |
download | vim-polyglot-8b3418cab8eb5267b3a5743e4d5fe5f698d48bc8.tar.gz vim-polyglot-8b3418cab8eb5267b3a5743e4d5fe5f698d48bc8.zip |
Update
Diffstat (limited to 'indent/elixir.vim')
-rw-r--r-- | indent/elixir.vim | 37 |
1 files changed, 4 insertions, 33 deletions
diff --git a/indent/elixir.vim b/indent/elixir.vim index 0ddaec44..5882565f 100644 --- a/indent/elixir.vim +++ b/indent/elixir.vim @@ -7,42 +7,13 @@ let b:did_indent = 1 setlocal indentexpr=elixir#indent(v:lnum) -setlocal indentkeys+=0=end,0=catch,0=rescue,0=after,0=else,=->,0},0],0),0=\|>,0=<> +setlocal indentkeys+==after,=catch,=do,=else,=end,=rescue, +setlocal indentkeys+=*<Return>,=->,=\|>,=<>,0},0],0) + " TODO: @jbodah 2017-02-27: all operators should cause reindent when typed function! elixir#indent(lnum) - let lnum = a:lnum - let text = getline(lnum) - let prev_nb_lnum = prevnonblank(lnum-1) - let prev_nb_text = getline(prev_nb_lnum) - - call elixir#indent#debug("==> Indenting line " . lnum) - call elixir#indent#debug("text = '" . text . "'") - - let handlers = [ - \'top_of_file', - \'starts_with_end', - \'starts_with_mid_or_end_block_keyword', - \'following_trailing_do', - \'following_trailing_binary_operator', - \'starts_with_pipe', - \'starts_with_close_bracket', - \'starts_with_binary_operator', - \'inside_nested_construct', - \'starts_with_comment', - \'inside_generic_block' - \] - for handler in handlers - call elixir#indent#debug('testing handler elixir#indent#handle_'.handler) - let indent = function('elixir#indent#handle_'.handler)(lnum, text, prev_nb_lnum, prev_nb_text) - if indent != -1 - call elixir#indent#debug('line '.lnum.': elixir#indent#handle_'.handler.' returned '.indent) - return indent - endif - endfor - - call elixir#indent#debug("defaulting") - return 0 + return elixir#indent#indent(a:lnum) endfunction endif |