File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11" Vim indent file
22" Language: Python
33" Author: Akinori Hattori <hattya@gmail.com>
4- " Last Change: 2022-09-27
4+ " Last Change: 2023-05-21
55" License: MIT License
66
77if exists (' b:did_indent' )
@@ -33,6 +33,7 @@ let s:compound_stmts = {
3333\ ' ^\s*\<finally\>' : ' \v^\s*<%(try|except|else)>' ,
3434\}
3535let s: dedent = ' \v^\s*<%(pass|return|raise|break|continue)>'
36+ let s: ellipsis = ' \v^\s*\.{3}\.@!'
3637let s: lcont = ' \\$'
3738let s: syn_skip = ' \v\c%(Comment|Quotes|String)$'
3839let s: syn_str = ' \v\c%(Quotes|String)$'
@@ -134,6 +135,9 @@ function! GetPEP8PythonIndent() abort
134135 elseif ll = ~# s: dedent
135136 " simple statement
136137 let ind -= shiftwidth ()
138+ elseif ll = ~# s: ellipsis
139+ " ellipsis
140+ let ind -= shiftwidth ()
137141 elseif getline (v: lnum - 1 ) = ~# s: lcont
138142 " line continuation
139143 if s: is_compound_stmt (ll )
Original file line number Diff line number Diff line change @@ -341,6 +341,20 @@ Describe filetype indent
341341 \]
342342 Assert Equals(Insert(in), Buffer(out))
343343 End
344+
345+ It decreases the indent level after ellipsis
346+ let in = "def spam():\<CR>...\<CR>"
347+ let in .= "def eggs():\<CR>....\<CR>"
348+ let in .= "def ham():"
349+ let out = [
350+ \ 'def spam():',
351+ \ ' ...',
352+ \ 'def eggs():',
353+ \ ' ....',
354+ \ ' def ham():',
355+ \]
356+ Assert Equals(Insert(in), Buffer(out))
357+ End
344358 End
345359
346360 Describe if statement
You can’t perform that action at this time.
0 commit comments