vim-patch:9.1.1145: multi-line completion has wrong indentation for last line (#32625)

Problem:  When expanding omni completion items with newlines (e.g.
          `then\n\t\nend`), the end statement gets wrong indentation.
Solution: Add OPENLINE_FORCE_INDENT flag to make open_line() use
          second_line_indent directly (glepnir)

closes: vim/vim#16614

5090a1fecb
This commit is contained in:
glepnir
2025-02-25 14:30:21 +08:00
committed by GitHub
parent 095c0876c2
commit c9a2b16c48
5 changed files with 78 additions and 10 deletions

View File

@@ -7,12 +7,13 @@
/// flags for open_line()
enum {
OPENLINE_DELSPACES = 0x01, ///< delete spaces after cursor
OPENLINE_DO_COM = 0x02, ///< format comments
OPENLINE_KEEPTRAIL = 0x04, ///< keep trailing spaces
OPENLINE_MARKFIX = 0x08, ///< fix mark positions
OPENLINE_COM_LIST = 0x10, ///< format comments with list/2nd line indent
OPENLINE_FORMAT = 0x20, ///< formatting long comment
OPENLINE_DELSPACES = 0x01, ///< delete spaces after cursor
OPENLINE_DO_COM = 0x02, ///< format comments
OPENLINE_KEEPTRAIL = 0x04, ///< keep trailing spaces
OPENLINE_MARKFIX = 0x08, ///< fix mark positions
OPENLINE_COM_LIST = 0x10, ///< format comments with list/2nd line indent
OPENLINE_FORMAT = 0x20, ///< formatting long comment
OPENLINE_FORCE_INDENT = 0x40, ///< use second_line_indent without indent logic
};
#ifdef INCLUDE_GENERATED_DECLARATIONS