NERDCommenter działa tak domyślnie:Jak uzyskać NERDCommenter do dodawania komentarzy w określonej kolumnie?
//level1
//level2
//level3
Jak mogę dostać się do pracy w ten sposób?
//level1
// level2
// level3
NERDCommenter działa tak domyślnie:Jak uzyskać NERDCommenter do dodawania komentarzy w określonej kolumnie?
//level1
//level2
//level3
Jak mogę dostać się do pracy w ten sposób?
//level1
// level2
// level3
[count]<leader>cl
[count]<leader>cb |NERDComAlignedComment|
samo jak | NERDComComment | z tym wyjątkiem, że separatory są wyrównane do lewej strony (cl) lub obu stron (cb).
Istnieje możliwość zmiany domyślnego zachowania ToggleComment (<leader>c<space>
) w celu użycia wyrównania do lewej. Jednak oznacza to zmianę dwóch linii w $vimfiles/bundle/nerdcommenter/plugin/NERDCommenter.vim
(przy założeniu, że zwykle konfiguracja patogena do zarządzania wtyczkami).
Znajdź definicję funkcji function s:CommentLinesToggle
. Jako pierwszą linię dodaj poniższe, aby określić poprawny indeks wcięć:
let leftAlignIndx = s:LeftMostIndx(a:forceNested, 0, a:firstLine, a:lastLine)
.
Możesz teraz użyć tego indeksu do ustawienia wyrównania komentarzy. W przypadku tej zmiany wiersz:
let theLine = s:AddLeftDelim(s:Left({'space': 1}), theLine)
na
let theLine = s:AddLeftDelimAligned(s:Left({'space': 1}), theLine, leftAlignIndx)
.
Gotowe. Przełączanie komentarzy daje teraz:
for i in range(10):
#if i/2 == 0:
# print "Ciao"
print "finito"
Czy istnieje sposób, aby to "domyślne"? tj. spraw, aby c wyrówna się w lewo. –
simlmx
Jest, ale wymaga zmiany 2 linii kodu nerdcommenter. Podałem szczegóły w osobnej odpowiedzi. – Zakum