Almacenamiento de fragmentos de código en eclipse


Soy una semi-conversión reciente a Eclipse después de 20 años de usar vi y gvim. Una de las cosas que echo de menos de gvim es que podría cortar un montón de diferentes fragmentos de código en buffers con nombre, y pegarlos a voluntad cuando hago algo como repetir un idioma común. Por ejemplo, lo tendría así "ap pegaría

DatabaseHandle handle = null;
try
{
  handle = DatabaseConnectionPool.newHandle();

Y luego "bp pegaría

  handle.commit();
}
finally
{
  handle.rollback();
  DatabaseConnectionPool.returnHandle(handle);
}

Y podría repetirlas una y otra vez en el transcurso de un día. En respuesta a otra pregunta, alguien mencionó que podría "administrar fragmentos de código" en Eclipse, pero no mencionó cómo. Así que ahora me pregunto: ¿cómo administrar fragmentos de código en Eclipse?

Author: Paul Tomblin, 2008-10-26

7 answers

Es posible que desee almacenar esos dos fragmentos en una plantilla de código , como se explica en este tutorial.

Y no te olvides de la posibilidad de ejecutar rápidamente cualquier tipo de fragmentos de código java en un scrapbook (no es exactamente lo que quieres, pero a veces puede ser útil)

Newtopian añade (en los comentarios)

De hecho, las plantillas se vuelven mucho más poderosas al agregar variables y tabstops dentro, por lo que el ejemplo anterior se convertiría en dbHandle ctrl+space. Copiaría fragmentos de ambas partes y colocaría el cursor justo en el medio.

 73
Author: VonC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 11:33:26

Eclipse también ofrece algo muy similar a la característica de plantillas descrita por VonC llamada (would you believe) snippets. Ventana > Mostrar vista > Fragmentos.

Para agregar una nueva categoría de fragmentos: haga clic con el botón derecho en la ventana Fragmentos y haga clic en Personalizar... Haga clic en Nueva > Nueva categoría. Introduzca un nombre de categoría si es necesario (por ejemplo,"Java"). Haga clic en Aplicar. Con la categoría elegida seleccionada, haga clic en Nuevo > Nuevo elemento. Introduce tu fragmento.

Para usar un fragmento, coloque el cursor donde desea insertar el fragmento, luego haga doble clic en un fragmento en la ventana Fragmentos.

 20
Author: David Easley,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-06-12 11:31:55

Me encontré con el complemento Snip2Code recientemente. Hizo el trabajo, y puedo recopilar y buscar fragmentos de una manera rápida.

 7
Author: Naveen Bhagwati,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-07 22:07:11

Bueno, una imagen vale más que mil palabras, ¿qué hay de esta?

introduzca la descripción de la imagen aquí

 6
Author: Sauvik Dolui,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-11-03 03:14:47

La pregunta es antigua pero el enlace de la respuesta es más antiguo;)

Aquí hay un buen tutorial: http://www.dansshorts.com/post/creating-snippets-in-eclipse

 2
Author: David Bruchmann,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-09-25 12:29:30

He usado fragmentos de código en algunos IDE, como Dreamweaver y Homesite, un antiguo IDE de Coldfusion. También uso muchos fragmentos en MySQL Workbench, donde escribo mucho SQL, muy útil allí.

Ahora estoy usando Eclipse Java EE IDE for Web Developers Version Indigo Release y encontré el panel snippets en Window|Show View|Other...|General / Snippets . Pude manipularlo y descubrir cómo agregar el código que quería como fragmentos y cómo usarlo eficiente.

 1
Author: jamesTheProgrammer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-09-16 14:49:05

Utilice Eclipse Snipmatch (Parte del paquete Eclipse for Java Developers).

  • Funciona muy bien para fragmentos de código Java, pero también funciona para cualquier otro lenguaje como HTML, ABABP, PHP, etc.
  • Puede convertir cualquier fragmento de código de su editor directamente a una plantilla de código. Resalte el código que desea convertir en un fragmento, menú contextual "crear fragmento", complete el formulario y listo.
  • los fragmentos se pueden compartir a través de repositorios Git con tu equipo miembros

Manual: https://www.eclipse.org/recommenders/manual/#snipmatch

Instalación: https://marketplace.eclipse.org/content/snipmatch

 1
Author: Marcel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-30 14:01:46