X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=vim%2Fbundle%2Fnerdcommenter%2Fdoc%2FNERD_commenter.txt;h=5309f614df0f67bd2bc3e5c8261d6dac09080745;hb=43bc4c7795d6fb5df836d7728680a9833941b164;hp=d79d27880d15006d5846f2c6f946a37108a0f202;hpb=2cc93b7ada0b925d1ccecfa19a8b3f04cba13f2b;p=config%2Fdotfiles.git diff --git a/vim/bundle/nerdcommenter/doc/NERD_commenter.txt b/vim/bundle/nerdcommenter/doc/NERD_commenter.txt index d79d278..5309f61 100644 --- a/vim/bundle/nerdcommenter/doc/NERD_commenter.txt +++ b/vim/bundle/nerdcommenter/doc/NERD_commenter.txt @@ -11,37 +11,37 @@ CONTENTS *NERDCommenterContents* 1.Intro...................................|NERDCommenter| - 2.Functionality provided..................|NERDComFunctionality| - 2.1 Functionality Summary.............|NERDComFunctionalitySummary| - 2.2 Functionality Details.............|NERDComFunctionalityDetails| - 2.2.1 Comment map.................|NERDComComment| - 2.2.2 Nested comment map..........|NERDComNestedComment| - 2.2.3 Toggle comment map..........|NERDComToggleComment| - 2.2.4 Minimal comment map.........|NERDComMinimalComment| - 2.2.5 Invert comment map..........|NERDComInvertComment| - 2.2.6 Sexy comment map............|NERDComSexyComment| - 2.2.7 Yank comment map............|NERDComYankComment| - 2.2.8 Comment to EOL map..........|NERDComEOLComment| - 2.2.9 Append com to line map......|NERDComAppendComment| - 2.2.10 Insert comment map.........|NERDComInsertComment| - 2.2.11 Use alternate delims map...|NERDComAltDelim| - 2.2.12 Comment aligned maps.......|NERDComAlignedComment| - 2.2.13 Uncomment line map.........|NERDComUncommentLine| - 2.3 Supported filetypes...............|NERDComFiletypes| - 2.4 Sexy Comments.....................|NERDComSexyComments| - 2.5 The NERDComment function..........|NERDComNERDComment| - 3.Options.................................|NERDComOptions| - 3.1 Options summary...................|NERDComOptionsSummary| - 3.2 Options details...................|NERDComOptionsDetails| - 3.3 Default delimiter Options.........|NERDComDefaultDelims| - 4. Customising key mappings...............|NERDComMappings| - 5. Issues with the script.................|NERDComIssues| - 5.1 Delimiter detection heuristics....|NERDComHeuristics| - 5.2 Nesting issues....................|NERDComNesting| - 6.About.. ............................|NERDComAbout| - 7.Changelog...............................|NERDComChangelog| - 8.Credits.................................|NERDComCredits| - 9.License.................................|NERDComLicense| + 2.Installation............................|NERDComInstallation| + 3.Functionality provided..................|NERDComFunctionality| + 3.1 Functionality Summary.............|NERDComFunctionalitySummary| + 3.2 Functionality Details.............|NERDComFunctionalityDetails| + 3.2.1 Comment map.................|NERDComComment| + 3.2.2 Nested comment map..........|NERDComNestedComment| + 3.2.3 Toggle comment map..........|NERDComToggleComment| + 3.2.4 Minimal comment map.........|NERDComMinimalComment| + 3.2.5 Invert comment map..........|NERDComInvertComment| + 3.2.6 Sexy comment map............|NERDComSexyComment| + 3.2.7 Yank comment map............|NERDComYankComment| + 3.2.8 Comment to EOL map..........|NERDComEOLComment| + 3.2.9 Append com to line map......|NERDComAppendComment| + 3.2.10 Insert comment map.........|NERDComInsertComment| + 3.2.11 Use alternate delims map...|NERDComAltDelim| + 3.2.12 Comment aligned maps.......|NERDComAlignedComment| + 3.2.13 Uncomment line map.........|NERDComUncommentLine| + 3.4 Sexy Comments.....................|NERDComSexyComments| + 3.5 The NERDComment function..........|NERDComNERDComment| + 4.Options.................................|NERDComOptions| + 4.1 Options summary...................|NERDComOptionsSummary| + 4.2 Options details...................|NERDComOptionsDetails| + 4.3 Default delimiter Options.........|NERDComDefaultDelims| + 5. Customising key mappings...............|NERDComMappings| + 6. Issues with the script.................|NERDComIssues| + 6.1 Delimiter detection heuristics....|NERDComHeuristics| + 6.2 Nesting issues....................|NERDComNesting| + 7.About.. ............................|NERDComAbout| + 8.Changelog...............................|NERDComChangelog| + 9.Credits.................................|NERDComCredits| + 10.License................................|NERDComLicense| ============================================================================== 1. Intro *NERDCommenter* @@ -54,48 +54,69 @@ There are also options that allow to tweak the commenting engine to your taste. ============================================================================== -2. Functionality provided *NERDComFunctionality* +2. Installation *NERDComInstallation* + +The NERD Commenter requires Vim 7 or higher. + +Extract the plugin files in your ~/.vim (*nix) or ~/vimfiles (Windows). You +should have 2 files: > + plugin/NERD_commenter.vim + doc/NERD_commenter.txt +< +Next, to finish installing the help file run: > + :helptags ~/.vim/doc +< +See |add-local-help| for more details. + +Make sure that you have filetype plugins enabled, as the script makes use of +|'commentstring'| where possible (which is usually set in a filetype plugin). +See |filetype-plugin-on| for details, but basically, stick this in your vimrc > + filetype plugin on +< + +============================================================================== +3. Functionality provided *NERDComFunctionality* ------------------------------------------------------------------------------ -2.1 Functionality summary *NERDComFunctionalitySummary* +3.1 Functionality summary *NERDComFunctionalitySummary* The following key mappings are provided by default (there is also a menu with items corresponding to all the mappings below): -[count],cc |NERDComComment| +[count]cc |NERDComComment| Comment out the current line or text selected in visual mode. -[count],cn |NERDComNestedComment| -Same as ,cc but forces nesting. +[count]cn |NERDComNestedComment| +Same as cc but forces nesting. -[count],c |NERDComToggleComment| +[count]c |NERDComToggleComment| Toggles the comment state of the selected line(s). If the topmost selected line is commented, all selected lines are uncommented and vice versa. -[count],cm |NERDComMinimalComment| +[count]cm |NERDComMinimalComment| Comments the given lines using only one set of multipart delimiters. -[count],ci |NERDComInvertComment| +[count]ci |NERDComInvertComment| Toggles the comment state of the selected line(s) individually. -[count],cs |NERDComSexyComment| +[count]cs |NERDComSexyComment| Comments out the selected lines ``sexily'' -[count],cy |NERDComYankComment| -Same as ,cc except that the commented line(s) are yanked first. +[count]cy |NERDComYankComment| +Same as cc except that the commented line(s) are yanked first. -,c$ |NERDComEOLComment| +c$ |NERDComEOLComment| Comments the current line from the cursor to the end of line. -,cA |NERDComAppendComment| +cA |NERDComAppendComment| Adds comment delimiters to the end of line and goes into insert mode between them. @@ -105,26 +126,26 @@ Adds comment delimiters at the current cursor position and inserts between. Disabled by default. -,ca |NERDComAltDelim| +ca |NERDComAltDelim| Switches to the alternative set of delimiters. -[count],cl -[count],cb |NERDComAlignedComment| +[count]cl +[count]cb |NERDComAlignedComment| Same as |NERDComComment| except that the delimiters are aligned down the -left side (,cl) or both sides (,cb). +left side (cl) or both sides (cb). -[count],cu |NERDComUncommentLine| +[count]cu |NERDComUncommentLine| Uncomments the selected line(s). ------------------------------------------------------------------------------ -2.2 Functionality details *NERDComFunctionalityDetails* +3.2 Functionality details *NERDComFunctionalityDetails* ------------------------------------------------------------------------------ -2.2.1 Comment map *NERDComComment* +3.2.1 Comment map *NERDComComment* -Default mapping: [count],cc +Default mapping: [count]cc Mapped to: NERDCommenterComment Applicable modes: normal visual visual-line visual-block. @@ -138,14 +159,14 @@ If a [count] is given in normal mode, the mapping works as though that many lines were selected in visual-line mode. ------------------------------------------------------------------------------ -2.2.2 Nested comment map *NERDComNestedComment* +3.2.2 Nested comment map *NERDComNestedComment* -Default mapping: [count],cn +Default mapping: [count]cn Mapped to: NERDCommenterNest Applicable modes: normal visual visual-line visual-block. -Performs nested commenting. Works the same as ,cc except that if a line is -already commented then it will be commented again. +Performs nested commenting. Works the same as cc except that if a line +is already commented then it will be commented again. If |'NERDUsePlaceHolders'| is set then the previous comment delimiters will be replaced by place-holder delimiters if needed. Otherwise the nested @@ -159,9 +180,9 @@ Related options: |'NERDDefaultNesting'| ------------------------------------------------------------------------------ -2.2.3 Toggle comment map *NERDComToggleComment* +3.2.3 Toggle comment map *NERDComToggleComment* -Default mapping: [count],c +Default mapping: [count]c Mapped to: NERDCommenterToggle Applicable modes: normal visual-line. @@ -176,17 +197,17 @@ If a [count] is given in normal mode, the mapping works as though that many lines were selected in visual-line mode. ------------------------------------------------------------------------------ -2.2.4 Minimal comment map *NERDComMinimalComment* +3.2.4 Minimal comment map *NERDComMinimalComment* -Default mapping: [count],cm +Default mapping: [count]cm Mapped to: NERDCommenterMinimal Applicable modes: normal visual-line. Comments the selected lines using one set of multipart delimiters if possible. -For example: if you are programming in c and you select 5 lines and press ,cm -then a '/*' will be placed at the start of the top line and a '*/' will be -placed at the end of the last line. +For example: if you are programming in c and you select 5 lines and press +cm then a '/*' will be placed at the start of the top line and a '*/' +will be placed at the end of the last line. Sets of multipart comment delimiters that are between the top and bottom selected lines are replaced with place holders (see |'NERDLPlace'|) if @@ -198,9 +219,9 @@ If a [count] is given in normal mode, the mapping works as though that many lines were selected in visual-line mode. ------------------------------------------------------------------------------ -2.2.5 Invert comment map *NERDComInvertComment* +3.2.5 Invert comment map *NERDComInvertComment* -Default mapping: ,ci +Default mapping: ci Mapped to: NERDCommenterInvert Applicable modes: normal visual-line. @@ -215,9 +236,9 @@ If a [count] is given in normal mode, the mapping works as though that many lines were selected in visual-line mode. ------------------------------------------------------------------------------ -2.2.6 Sexy comment map *NERDComSexyComment* +3.2.6 Sexy comment map *NERDComSexyComment* -Default mapping: [count],cs +Default mapping: [count]cs Mapped to: NERDCommenterSexy Applicable modes: normal, visual-line. @@ -235,18 +256,18 @@ Related options: |'NERDCompactSexyComs'| ------------------------------------------------------------------------------ -2.2.7 Yank comment map *NERDComYankComment* +3.2.7 Yank comment map *NERDComYankComment* -Default mapping: [count],cy +Default mapping: [count]cy Mapped to: NERDCommenterYank Applicable modes: normal visual visual-line visual-block. -Same as ,cc except that it yanks the line(s) that are commented first. +Same as cc except that it yanks the line(s) that are commented first. ------------------------------------------------------------------------------ -2.2.8 Comment to EOL map *NERDComEOLComment* +3.2.8 Comment to EOL map *NERDComEOLComment* -Default mapping: ,c$ +Default mapping: c$ Mapped to: NERDCommenterToEOL Applicable modes: normal. @@ -254,9 +275,9 @@ Comments the current line from the current cursor position up to the end of the line. ------------------------------------------------------------------------------ -2.2.9 Append com to line map *NERDComAppendComment* +3.2.9 Append com to line map *NERDComAppendComment* -Default mapping: ,cA +Default mapping: cA Mapped to: NERDCommenterAppend Applicable modes: normal. @@ -264,7 +285,7 @@ Appends comment delimiters to the end of the current line and goes to insert mode between the new delimiters. ------------------------------------------------------------------------------ -2.2.10 Insert comment map *NERDComInsertComment* +3.2.10 Insert comment map *NERDComInsertComment* Default mapping: disabled by default. Map it to: NERDCommenterInInsert @@ -280,37 +301,37 @@ mapping add > to your vimrc. ------------------------------------------------------------------------------ -2.2.11 Use alternate delims map *NERDComAltDelim* +3.2.11 Use alternate delims map *NERDComAltDelim* -Default mapping: ,ca +Default mapping: ca Mapped to: NERDCommenterAltDelims Applicable modes: normal. Changes to the alternative commenting style if one is available. For example, -if the user is editing a c++ file using // comments and they hit ,ca +if the user is editing a c++ file using // comments and they hit ca then they will be switched over to /**/ comments. See also |NERDComDefaultDelims| ------------------------------------------------------------------------------ -2.2.12 Comment aligned maps *NERDComAlignedComment* +3.2.12 Comment aligned maps *NERDComAlignedComment* -Default mappings: [count],cl [count],cb +Default mappings: [count]cl [count]cb Mapped to: NERDCommenterAlignLeft NERDCommenterAlignBoth Applicable modes: normal visual-line. -Same as ,cc except that the comment delimiters are aligned on the left side or -both sides respectively. These comments are always nested if the line(s) are -already commented. +Same as cc except that the comment delimiters are aligned on the left +side or both sides respectively. These comments are always nested if the +line(s) are already commented. If a [count] is given in normal mode, the mapping works as though that many lines were selected in visual-line mode. ------------------------------------------------------------------------------ -2.2.13 Uncomment line map *NERDComUncommentLine* +3.2.13 Uncomment line map *NERDComUncommentLine* -Default mapping: [count],cu +Default mapping: [count]cu Mapped to: NERDCommenterUncomment Applicable modes: normal visual visual-line visual-block. @@ -331,41 +352,7 @@ Related options: |'NERDRemoveExtraSpaces'| ------------------------------------------------------------------------------ -2.3 Supported filetypes *NERDComFiletypes* - -Filetypes that can be commented by this plugin: -abaqus abc acedb ada ahdl amiga aml ampl ant apache apachestyle asm68k asm asn -aspvbs atlas autohotkey autoit automake ave awk basic b bc bdf bib bindzone -bst btm caos catalog c cfg cg ch changelog cl clean clipper cmake conf config -context cpp crontab cs csc csp css cterm cupl csv cvs dcl debchangelog -debcontrol debsources def diff django docbk dns dosbatch dosini dot dracula -dsl dtd dtml dylan ecd eiffel elf elmfilt erlang eruby eterm expect exports -fetchmail fgl focexec form fortran foxpro fstab fvwm fx gdb gdmo geek -gentoo-package-keywords' gentoo-package-mask' gentoo-package-use' gnuplot -gtkrc haskell hb h help hercules hog html htmldjango htmlos ia64 icon idlang -idl indent inform inittab ishd iss ist jam java javascript jess jgraph -jproperties jproperties jsp kconfig kix kscript lace lex lftp lifelines lilo -lisp lite lotos lout lprolog lscript lss lua lynx m4 mail make maple masm -master matlab mel mf mib mma model moduala. modula2 modula3 monk mush muttrc -named nasm nastran natural ncf netdict netrw nqc nroff nsis objc ocaml occam -omlet omnimark openroad opl ora otl ox pascal passwd pcap pccts perl pfmain -php phtml pic pike pilrc pine plaintex plm plsql po postscr pov povini ppd -ppwiz procmail progress prolog psf ptcap python python qf radiance ratpoison r -rc readline rebol registry remind rexx robots rpl rtf ruby sa samba sas sass -sather scheme scilab screen scsh sdl sed selectbuf sgml sgmldecl sgmllnx sh -sicad simula sinda skill slang sl slrnrc sm smarty smil smith sml snnsnet -snnspat snnsres snobol4 spec specman spice sql sqlforms sqlj sqr squid st stp -strace svn systemverilog tads taglist tags tak tasm tcl terminfo tex text -plaintex texinfo texmf tf tidy tli trasys tsalt tsscl tssgm uc uil vb verilog -verilog_systemverilog vgrindefs vhdl vim viminfo virata vo_base vrml vsejcl -webmacro wget winbatch wml wvdial xdefaults xf86conf xhtml xkb xmath xml -xmodmap xpm2 xpm xslt yacc yaml z8a - -If a language is not in the list of hardcoded supported filetypes then the -&commentstring vim option is used. - ------------------------------------------------------------------------------- -2.4 Sexy Comments *NERDComSexyComments* +3.3 Sexy Comments *NERDComSexyComments* These are comments that use one set of multipart comment delimiters as well as one other marker symbol. For example: > /* @@ -380,7 +367,7 @@ one other marker symbol. For example: > Here the multipart delimiters are /* and */ and the marker is *. ------------------------------------------------------------------------------ -2.5 The NERDComment function *NERDComNERDComment* +3.4 The NERDComment function *NERDComNERDComment* All of the NERD commenter mappings and menu items invoke a single function which delegates the commenting work to other functions. This function is @@ -404,10 +391,10 @@ then the script would do a sexy comment on the last visual selection. ============================================================================== -3. Options *NERDComOptions* +4. Options *NERDComOptions* ------------------------------------------------------------------------------ -3.1 Options summary *NERDComOptionsSummary* +4.1 Options summary *NERDComOptionsSummary* |'loaded_nerd_comments'| Turns off the script. |'NERDAllowAnyVisualDelims'| Allows multipart alternative delims to @@ -444,7 +431,7 @@ then the script would do a sexy comment on the last visual selection. style sexy comments. ------------------------------------------------------------------------------ -3.3 Options details *NERDComOptionsDetails* +4.3 Options details *NERDComOptionsDetails* To enable any of the below options you should put the given line in your ~/.vimrc @@ -581,7 +568,7 @@ this option tells the script whether to look for, and remove, comment delimiters of the alternative style. For example, if you are editing a c++ file using // style comments and you go -,cu on this line: > +cu on this line: > /* This is a c++ comment baby! */ < It will not be uncommented if the NERDRemoveAltComs is set to 0. @@ -633,7 +620,7 @@ To set these options use lines like: > Following the above example, if we have line of c code: > /* int horse */ < -and we comment it with ,cn it will be changed to: > +and we comment it with cn it will be changed to: > /*FOO int horse BAR*/ < When we uncomment this line it will go back to what it was. @@ -698,7 +685,8 @@ Values: 0 or 1. Default 1. When this option is set to 1, comments are nested automatically. That is, if -you hit ,cc on a line that is already commented it will be commented again +you hit cc on a line that is already commented it will be commented +again. ------------------------------------------------------------------------------ 3.3 Default delimiter customisation *NERDComDefaultDelims* @@ -715,7 +703,7 @@ Example: java uses // style comments by default, but you want it to default to See |NERDComAltDelim| for switching commenting styles at runtime. ============================================================================== -4. Key mapping customisation *NERDComMappings* +5. Key mapping customisation *NERDComMappings* To change a mapping just map another key combo to the internal mapping. For example, to remap the |NERDComComment| mapping to ",omg" you would put @@ -730,11 +718,11 @@ map to. See also |'NERDCreateDefaultMappings'|. ============================================================================== -5. Issues with the script *NERDComIssues* +6. Issues with the script *NERDComIssues* ------------------------------------------------------------------------------ -5.1 Delimiter detection heuristics *NERDComHeuristics* +6.1 Delimiter detection heuristics *NERDComHeuristics* Heuristics are used to distinguish the real comment delimiters @@ -754,7 +742,7 @@ string. These heuristics, while usually pretty accurate, will not work for all cases. ------------------------------------------------------------------------------ -5.2 Nesting issues *NERDComNesting* +6.2 Nesting issues *NERDComNesting* If we have some line of code like this: > /*int foo */ = /*5 + 9;*/ @@ -774,7 +762,7 @@ will become: > for simplicity) ============================================================================== -6. About *NERDComAbout* +7. About *NERDComAbout* The author of the NERD commenter is Martyzillatron --- the half robot, half dinosaur bastard son of Megatron and Godzilla. He enjoys destroying @@ -793,6 +781,15 @@ The latest dev versions are on github ============================================================================== 8. Changelog *NERDComChangelog* +2.3.0 + - remove all filetypes which have a &commentstring in the standard vim + runtime for vim > 7.0 unless the script stores an alternate set of + delimiters + - make the script complain if the user doesnt have filetype plugins enabled + - use instead of comma to start the default mappings + - fix a couple of bugs with sexy comments - thanks to Tim Smart + - lots of refactoring + 2.2.2 - remove the NERDShutup option and the message is suppresses, this makes the plugin silently rely on &commentstring for unknown filetypes. @@ -848,7 +845,7 @@ The latest dev versions are on github NERDComInsertComment if you wish to restore it ============================================================================== -8. Credits *NERDComCredits* +9. Credits *NERDComCredits* Thanks to the follow people for suggestions and patches: @@ -985,7 +982,7 @@ Matt Tolton javacc Ivan Devat javascript.jquery tpope cucumber,pdf ============================================================================== -9. License *NERDComLicense* +10. License *NERDComLicense* The NERD commenter is released under the wtfpl. See http://sam.zoy.org/wtfpl/COPYING.