2011-01-17 8 views
11

Estoy cambiando de TextMate a MacVim. ¿Qué debería usar y por qué? tComment o The NERD CommentertComment vs. The NERD Commenter

+2

yo personalmente prefiero EnhancedCommentify, http://www.vim.org/scripts/script.php?script_id=23 –

+0

Atención a explicar por qué? – ma11hew28

+0

Lo he usado por algo así como 10 años o más, y ... bueno. Hace su trabajo, y lo hace bien. Al final, nunca he probado los dos desafíos. –

Respuesta

3

probar ambos y ver lo que más le convenga

+0

+1 porque la descarga de una secuencia de comandos de vim no es ** tan ** costosa. – eckes

+41

-1 porque a veces lleva un tiempo darse cuenta de que hay una pequeña razón por la que algo no te conviene, y luego tienes los comandos bajo tus dedos y tienes que volver a aprender. Las voces de la experiencia pueden ser valiosas. – Cascabel

+1

+1 porque esta es la respuesta correcta, esta es una pregunta de opinión que no tiene cabida en stackoverflow. vergüenza para los que votaron en alza + el comentario de Jefromi. –

9

Me gusta el estilo de tComment más de NERDCommener en la lista en el código Perl.

original:

my $foo; 
if ($foo) { 
    $foo = 1; 
    $bar = 1; 
} 
return $bar; 

tComment:

my $foo; 
# if ($foo) { 
#  $foo = 1; 
#  $bar = 1; 
# } 
return $bar; 

NERDCommenter:

my $foo; 
#if ($foo) { 
    #$foo = 1; 
    #$bar = 1; 
#} 
return $bar; 

También me gusta asignaciones predeterminadas de tCommenet que se sienten más nativo para Vim. La básicas son:

gc{motion} :: Toggle comments 
gcc   :: Toggle comment for the current line 
gC{motion} :: Comment region 
gCc   :: Comment the current line 

he añadido unas cuantas más asignaciones en vimrc y ahora estoy totalmente feliz:

" tComment extra mappings: 
" yank visual before toggle comment 
vmap gy ygvgc 
" yank and past visual before toggle comment 
vmap gyy ygvgc'>gp'. 
" yank line before toggle comment 
nmap gy yygcc 
" yank and paste line before toggle comment and remember position 
" it works both in normal and insert mode 
" Use :t-1 instead of yyP to preserve registers 
nmap gyy mz:t-1<cr>gCc`zmz 
imap gyy <esc>:t-1<cr>gCcgi 

Y uno más de mapeo de la coherencia: gcc línea de comentario de palanca basculante, pero gc comentario visual, por lo que vamos a hacer que sea más consistente:

vmap gcc gc 
+0

Lo que dices acerca de los comentarios en NERD no es del todo cierto. Sí '\ cc' hará un comentario como dices. Pero si '\ cl' comentarás todo el bloque en una" línea ", tal como se muestra en el ejemplo de tu comentario. También '\ cs' bloqueará el comentario. También tirando del texto antes de comentar ['\ cy'] sale directamente de la caja con NERD. No es necesario modificar su '.vimrc' – cartbeforehorse

+0

tComment es más potente al poder comentar partes de una línea. Por ejemplo: 'gct;' comentará todo desde la posición del cursor hasta justo antes de la primera instancia de punto y coma, en la línea actual. No puedes hacer esto en NERD. Sin embargo, NERD parece ser más poderoso en la manipulación de líneas. No es necesario el modo visual con NERD. '4 \ cy '] p' comenta la línea actual y las 3 líneas siguientes, y luego las pega inmediatamente después. – cartbeforehorse