NERDCommenter works like this by default:
//level1
//level2
//level3
How do I get to work like this?
//level1
/
It is possible to change the default behaviour of ToggleComment (
) to use left alignment. However this means changing two lines in $vimfiles/bundle/nerdcommenter/plugin/NERDCommenter.vim
(assuming the usual pathogen setup for managing plugins).
Find the definition of function function s:CommentLinesToggle
. As the first line add the following to determine the correct indentation index:
let leftAlignIndx = s:LeftMostIndx(a:forceNested, 0, a:firstLine, a:lastLine)
.
You can now use this index for setting the comment alignment. For this change the line:
let theLine = s:AddLeftDelim(s:Left({'space': 1}), theLine)
to
let theLine = s:AddLeftDelimAligned(s:Left({'space': 1}), theLine, leftAlignIndx)
.
Done. Toggling comments now gives you:
for i in range(10):
#if i / 2 == 0:
# print "Ciao"
print "finito"