2012-04-05 22 views
18

¿Hay un atajo de teclado en Visual Studio 2010 (también estoy usando ReSharper 6.1) que me permita rodear un bloque de texto seleccionado con llaves? Intenté "Surround With ..." (Ctrl + K, Ctrl + S), pero no vi una opción en la lista para elegir las llaves como elemento circundante. El caso de uso común para esto es que voy a tener una sentencia if como la siguiente:Envolviendo declaraciones múltiples entre llaves

if (conditional) 
    statement1; 
// the rest of the program 

que dará cuenta de que hay algunas tareas adicionales que deban llevarse a cabo dentro de la sentencia if y añado ellos:

if (conditional) 
    statement1; 
    statement2; 
    statement3; 
// the rest of the program 

Entonces, recuerdo que necesito para envolver todas las declaraciones entre llaves y el código realmente debería tener este aspecto:

if (conditional) 
{ 
    statement1; 
    statement2; 
    statement3; 
} 
// the rest of the program 

lo que me gustaría hacer es simplemente seleccionar el tres instrucciones y luego presione una tecla de método abreviado para envolverlos con llaves. Lo que realmente termino haciendo es mover el cursor al principio de la línea después del condicional, luego escribir un {carácter, luego eliminar el} carácter que ReSharper (inútilmente) inserta automáticamente inmediatamente después de {, luego mover el cursor hacia abajo para finalizar de la última instrucción del bloque e ingresando} para completar el bloque.

+0

No creo que esto se pueda hacer, el cierre que tengo es golpear una llave y cambiar el código en el bloque manualmente, pero supongo que esto no es lo que quieres ... si se puede hacer estaría interesado. –

Respuesta

25

Seleccione filas de código.

Presione Ctrl E-U (Surround con plantilla) (o Ctrl Alt J para Intelli J).

Seleccione la opción 7: {}.

Funciona para mí.

+0

Ctrl E-U no funcionó para mí, pero puede ser porque lo tengo asignado a otra cosa. Sin embargo, le estoy dando crédito porque SurroundWith en realidad es la respuesta correcta. El problema fue que mi atajo de teclado estaba asociado con la versión de VisualWith de Visual Studio, no con la extensión ReSharper. Una vez que entré en Herramientas-> Opciones-> Teclado y establecí un atajo de teclado para ReSharper.ReSharper_SurroundWith y eliminé el acceso directo del Edit.SurroundWith predeterminado, funcionó. – Matt

Cuestiones relacionadas