google / google/vimdoc

Support "\ (line-continuation-comment)

Open
#113 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
306
Forks
30
PR merge metrics
No merged PRs in 30d

Description

If a `.vim` script contains a line continuation comment (`:help line-continuation-comment`, [introduced in Vim 8.1.0369](https://github.com/vim/vim/commit/67f8ab829911c7901c534ef2bf19cc34b622936f)), `vimdoc` fails to parse it with an error like

```
Traceback (most recent call last):
File "vimdoc", line 5, in
vimdoc.__main__.main()
File "vimdoc/__main__.py", line 18, in main
for module in Modules(args.plugin):
File "vimdoc/module.py", line 423, in Modules
blocks = list(parser.ParseBlocks(lines, filename))
File "vimdoc/parser.py", line 127, in ParseBlocks
for lineno, line in EnumerateParsedLines(lines):
File "vimdoc/parser.py", line 53, in EnumerateParsedLines
for i, line in EnumerateStripNewlinesAndJoinContinuations(lines):
File "vimdoc/parser.py", line 40, in EnumerateStripNewlinesAndJoinContinuations
raise error.CannotContinue('No comment to continue.', i)
vimdoc.error.CannotContinue: ./plugin/myfile.vim.072: No comment to continue.
```

It looks like `parser.py` line 40 is encountering the continuation line after the inline comment and assuming that a continuation can't follow a comment. (It's now allowed to follow a continuation comment.)

Example input:

```vim
echo
\ 'first string'
"\ Some comment
\ 'second string'
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.