¿Eclipse tiene una forma de ordenar alfabéticamente las líneas dentro de una selección de texto?


Similar a las líneas de ordenación M-x de emacs

Author: Leniel Maccaferri, 2010-09-03

7 answers

Prueba este plugin para Eclipse:

Http://marketplace.eclipse.org/content/emacs

Si el anterior no hace el trabajo, pruebe uno de estos:

Http://marketplace.eclipse.org/search/apachesolr_search/emacs

 3
Author: Leniel Maccaferri,
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-03 00:23:02

¡Sí, lo hace! Hay un plugin muy simple llamado SortIt que hace exactamente lo que quieres. Agrega una sección en el menú Editar, a través de la cual puedes hacer lo siguiente:

  • Distingue entre mayúsculas y minúsculas
  • Insensible a mayúsculas
  • Texto inverso
  • Orden numérico
  • Longitud Ordenar

El plugin es independiente del código fuente, y trata todo lo que se ordena como texto sin formato. Lo encuentro especialmente útil al ordenar archivos .properties y setters/getters. Por ejemplo, usando la clasificación sensible a Mayúsculas ordené el siguiente código:

msgHeader.setTotalGrossMass(content.getTotalGrossMass());
msgHeader.setReferenceNumber(content.getReferenceNumber());
msgHeader.setTransportModeAtBorder(content.getTransportModeAtBorder());
msgHeader.setCountryOfDestinationCode(content.getCountryOfDestinationCode());
msgHeader.setCountryOfDispatchExportCode(content.getCountryOfDispatch());
msgHeader.setDateOfAmendment(content.getDeclarationDate());                     // TODO: correct?
msgHeader.setIdentityOfMeansOfTransportCrossingBorder(content.getIdentityMeansOfTransportCrossingBorder());
msgHeader.setManualEntryNumber(content.getManualEntryNumber());
msgHeader.setTotalNumberOfPackages(content.getTotalNumberOfPackages());
msgHeader.setAgreedLocationOfGoodsCode(content.getAgreedLocationCode());
msgHeader.setAgreedLocationOfGoodsLNG(content.getAgreedLoclOfGoodsLNG());
msgHeader.setManualEntryYear(content.getManualEntryYear());
msgHeader.setAgreedLocationOfGoods(content.getAgreedLocationCode());
msgHeader.setMethodOfPayment(content.getMethodOfPayment());
msgHeader.setNationalityOfMeansOfTransportCrossingBorder(content.getNationalityMeansOfTransportCrossingBorder());
msgHeader.setAmendmentPlace(content.getDeclarationPlace());                     // TODO: correct?
msgHeader.setAmendmentPlaceLNG(content.getDeclarationPlaceLNG());               // TODO: correct?
msgHeader.setTotalNumberOfItems(content.getTotalNumberOfItems());
msgHeader.setAcceptanceDate(content.getAcceptanceDate());

... a esto:

msgHeader.setAcceptanceDate(content.getAcceptanceDate());
msgHeader.setAgreedLocationOfGoods(content.getAgreedLocationCode());
msgHeader.setAgreedLocationOfGoodsCode(content.getAgreedLocationCode());
msgHeader.setAgreedLocationOfGoodsLNG(content.getAgreedLoclOfGoodsLNG());
msgHeader.setAmendmentPlace(content.getDeclarationPlace());                     // TODO: correct?
msgHeader.setAmendmentPlaceLNG(content.getDeclarationPlaceLNG());               // TODO: correct?
msgHeader.setCountryOfDestinationCode(content.getCountryOfDestinationCode());
msgHeader.setCountryOfDispatchExportCode(content.getCountryOfDispatch());
msgHeader.setDateOfAmendment(content.getDeclarationDate());                     // TODO: correct?
msgHeader.setIdentityOfMeansOfTransportCrossingBorder(content.getIdentityMeansOfTransportCrossingBorder());
msgHeader.setManualEntryNumber(content.getManualEntryNumber());
msgHeader.setManualEntryYear(content.getManualEntryYear());
msgHeader.setMethodOfPayment(content.getMethodOfPayment());
msgHeader.setNationalityOfMeansOfTransportCrossingBorder(content.getNationalityMeansOfTransportCrossingBorder());
msgHeader.setReferenceNumber(content.getReferenceNumber());
msgHeader.setTotalGrossMass(content.getTotalGrossMass());
msgHeader.setTotalNumberOfItems(content.getTotalNumberOfItems());
msgHeader.setTotalNumberOfPackages(content.getTotalNumberOfPackages());
msgHeader.setTransportModeAtBorder(content.getTransportModeAtBorder());
 37
Author: Markos Fragkakis,
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-07-19 19:36:43

Sitio web horriblemente feo, pero AnyEdit hace la clasificación:

  • Distingue entre mayúsculas y minúsculas
  • Insensible a mayúsculas y minúsculas
  • Numérico
  • Hacia atrás
  • Adelante
 11
Author: Catskul,
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
2013-02-15 16:42:21

En Eclipse Kepler SR2 puedo ver una opción bajo Source > Sort Members.. Funciona.

También tengo AnyEdit instalado.

 2
Author: Saikat,
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
2018-09-21 14:18:06

Try CTRL+ALT+S. Funciona para mí con Kepler.

Si no funciona, vaya a Help->Key Assist... y busque"Ordenar líneas"

EDITAR: parece funcionar solo en el editor de C / C++ y, por lo tanto, probablemente viene con el CDT

 1
Author: clktmr,
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
2014-08-27 09:31:33

Con luna puedes hacer esto por "Source" - > "Organize Imports"

Esto funciona para cada tipo de línea, no solo para las importaciones.

 0
Author: Rainer Hausdorf,
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-02-24 12:56:42

Si está bajo Linux, simplemente use "cat file | sort". Bajo Windows, como programador, probablemente deberías tener cygwin instalado de todos modos.

 0
Author: user1050755,
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-09-17 13:22:56