summaryrefslogtreecommitdiffstats
path: root/runtime/pack/dist/opt/comment/doc/comment.txt
blob: 25bd067564bdf7338ad666229a942a19afe33c4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
*comment.txt*   For Vim version 9.1.  Last change:  2024 Jun 04


		  VIM REFERENCE MANUAL

Commenting and un-commenting text.

==============================================================================

See |comment-install| on how to activate this package.

The comment.vim package, allows to toggle comments for a single line, a range
of lines or a selected text object.  It defines the following mappings:

							*gcc*
gcc		to comment/uncomment current line
							*o_gc*
gc{motion}	to toggle comments for the selected motion
							*gcip*
gcip		to comment/uncomment current paragraph
							*gcG*
gcG		to comment/uncomment from current line till the end of a buffer
							*v_gc*
{Visual}gc	to comment/uncomment the highlighted lines.

This plugin uses the buffer-local 'commentstring' option value to add or remove
comment markers to the selected lines.  Whether it will comment or un-comment
depends on the first line of the range of lines to act upon.  When it matches
a comment marker, the line will be un-commented, if it doesn't, the line will
be commented out.  Blank and empty lines are ignored.

The comment marker will always be padded with blanks whether or not the
'commentstring' value contains whitespace around "%s".

If the mapping does not seem to work (or uses wrong comment markers), it might
be because of several reasons:
- the filetype is not detected by Vim, see |new-filetype|,
- filetype plugins are not enabled, see |:filetype-plugin-on| or
- the filetype plugin does not set the (correct) 'commentstring' option.

You can simply configure this using the following autocommand (e.g. for legacy
Vim script): >

	autocmd Filetype vim :setlocal commentstring="%s

This example sets the " as start of a comment for legacy Vim Script.  For Vim9
script, you would instead use the "#" char: >

	autocmd Filetype vim :setlocal commentstring=#\ %s

==============================================================================
Options:

*g:comment_first_col*
*b:comment_first_col*
    By default comment chars are added in front of the line, i.e. if the line
    was indented, commented line would stay indented as well.

    However some filetypes require a comment char on the first column, use this option
    to change default behaviour.

    Use g:comment_first_col to change it globally or b:comment_first_col to
    target specific filetype(s).

==============================================================================
vim:tw=78:ts=8:fo=tcq2:ft=help: