visual-studio - navigate - visual studio code go to function
¿Sublime Text 2 tiene la capacidad de código de región similar a Visual Studio? (9)
Creo que, al igual que yo, el OP ha llegado a apreciar una característica poco conocida en las regions VS llamada que muchos igualan con el plegado de código, pero es mucho más poderosa y superior. Dio Phung proporcionó la respuesta que quería, y sospecho que Quería OP, pero no compartió como respuesta, así que aquí está.
La diferencia entre "plegado de código" como se proporciona en Sublime Text es que se basa en la sintaxis de código / compilador, mientras que las "regiones" y lo que hace este complemento, le permiten infinitamente más libertad, aunque es una libertad que es más o menos dependiente de el código con el que está trabajando para comenzar (profundamente anidado o modularizado correctamente).
Si estás en Sublime Text 3, aquí hay un complemento que puede hacerlo: github.com/jamalsenouci/sublimetext-syntaxfold - Dio Phung
En Visual Studio puedes minimizar grandes trozos de código usando regiones; Esencialmente, simplemente rodean el código y lo minimizan en la ventana.
¿Sublime tiene una característica similar a esta?
En los idiomas que admiten 3 tipos de comentarios (p. Ej., PHP), uso el comentario del hashtag para las regiones, como se muestra en las otras respuestas. También es bueno para estar al tanto de lo que se está haciendo.
# default options
$a = 3;
$b = ''bob'';
$old_code = 1;
# bugfix #130
$result = magic_function($data);
fix_stuff($result);
$old_code = $result;
De lo contrario, utilice triple barra ///
o //#
etc.
En texto sublime, funciona de esta manera, sombrea las líneas que desea contraer y presiona (Control + Shift +?)
Tengo la versión más reciente de sublimetexto.
Hay una solicitud en el sitio oficial para "solicitar características" here .
Pero aparentemente:
Para su información, Jon ha declarado que esto no es posible en la implementación actual del control del editor. Parece que estamos esperando a los chicos de V3.
Jon es el programador detrás de Sublime Text 2.
Puede haber una manera de falsificarlo creando un complemento que busque marcadores y elimine la región del código entre los marcadores, pero probablemente no se vea bien. Con la API actual, ¡probablemente sea tu mejor apuesta!
Por cierto, hay algunos códigos plegables en el Texto sublime. Si desplaza el mouse junto al número de línea, verá algunas flechas que aparecen cuando puede plegar / desplegar.
Para plegar el código seleccione el código y presione
Ctrl + Mayús + [
Para desplegar el código coloca el cursor allí y presiona
Ctrl + Mayús + ]
Si está obsesionado con la intención, esta solución puede hacer que se sienta incómodo, pero aquí está, alguna vez, mientras escribía un plugin jQuery semi-complejo, he tenido constantes, variables, funciones privadas y públicas, secciones y plegamientos, como ;
;(function($, undefined, window) {...
/* Consts */
var FOO = "BAR";
/* Variables */
var m_Foo = "bar";
/* Functions */
/* Public Functions */
function foo() {...}
function bar() {...}
/* Private Functions */
function _foo() {...}
function _bar() {...}
})(jQuery, window);
Como pueden ver, todo se trata de intendencias. Las secciones se pueden plegar; Consts
, Variables
, Functions
. Y también dentro de la sección Functions
, tanto Public Functions
Private Functions
se pueden plegar.
También puede usar un comentario de línea (//) para nombrar su pliegue. Así que la idea debajo de eso es simple; ST2 piensa que las líneas más intencionadas pertenecen al primer comentario menos intencional sobre ellas, como los compiladores de C / C ++ cómo manejan los corchetes como bloques de código únicos.
Terminé usando etiquetas de comentarios personalizadas, sangradas un nivel menos que el código que quiero plegar. No se ve mejor, aunque cumple su propósito .
class Foobar {
// ...some code
// <fold
function foo() {
}
function bar() {
}
// </fold
// more code...
}
Esto (en este momento) se pliega a:
class Foobar {
// ...some code
// <fold[...]
// </fold
// more code...
}
Tener un soporte ST2 nativo para esto sería bueno.
github.com/jamalsenouci/sublimetext-syntaxfold ve lo que buscas. Puede definir etiquetas para #region y #endregion para cada idioma, o una etiqueta genérica para todos ellos.
De forma predeterminada, puede seleccionar algún código para ir a Edit > Code Folding > Fold.
Hay toneladas de complementos que aprovechan la API de código plegable para obtener más opciones.