¿Auto-sangría inteligente disponible en geany?

Estoy escribiendo javascript usando Geany IDE . Mi sangría está en mal estado y me gustaría que se vea bien. Cuando escribo Java en Eclipse, puedo hacer ctrl + i para hacer todo el espacio en orden.

¿Cuál es la opción de sangría disponible en Geany ?

Respuesta 1

La opción de formateo del documento está en la lista de deseos del complemento de Geany (ref. Sección de sangría de corrección automática en la lista de deseos del complemento de Geany ).

Sin embargo, Geany permite enviar texto usando comandos personalizados .

Como puede sospechar, esto abre una amplia selección de nuevas "puertas" detrás de las cuales se encuentra la solución de su problema, por ejemplo, Artistic Style es un autoformateador de código multiplataforma para C, C ++, C # y Java. Entonces la solución es:

  • obtener una copia de cualquier herramienta de formato de código que acepte texto de entrada estándar y devuelva el texto resultante a salida estándar,
  • en Geany, vaya a Enviar selección a-> Establecer comandos personalizados y agregue un comando apropiado para su herramienta

No soy un agitador para el estilo artístico, solo puede usar cualquier herramienta que formatee el código Java. Se ha hecho de esta manera con HTML Tidy o PHP Beautifier, los resultados se ven así:

ingrese la descripción de la imagen aquí

Respuesta: 2

comando para html simple sangría inteligente que finalmente funciona en geany:

bash -c "tidy --indent auto --indent-spaces 2 --char-encoding utf8 --quiet yes 2>/dev/null; true" 
Respuesta: 3

PHPFormatter es un script php que se encuentra aquí: https://github.com/NathanWong/phpformatter Se puede ejecutar a través de la línea de comandos y hace un trabajo increíble al formatear PHP, HTML y Javascript. De la descripción de los autores:

"Este script PHP formateará otro script PHP usando mis reglas de formato establecidas arbitrariamente (pestañas reales, 97 caracteres por línea, corchetes en su propia línea, sangría basada en la jerarquía del operador, no alineación, espacios alrededor de la mayoría de los operadores pero no comas o corchetes, espacio después si, etc.). También formateará HTML en línea, y si JS Beautify está disponible, también lo usará para Javascript en línea en HTML en línea ".

Simplemente descomprimí los 2 archivos: format.php y jsbeautify.php en mi directorio de inicio y luego agregué el siguiente comando personalizado en Geany:

php /home/myusername/format.php -

(Tenga en cuenta el guión al final. Esto le dice al script que acepte la entrada de la secuencia de entrada estándar que es donde Geany envía el texto). Ahora todo lo que tiene que hacer es un Ctrl + a rápido (Seleccionar todo) luego Ctrl + 1 (o cualquier número en el que ponga el comando) y ...

Voila ...

Código bellamente formateado !! Gracias nathan!

Respuesta: 4

Estoy tratando de convertir una cadena json en objetos con gson. Tengo un ejemplo muy simple a continuación, y se ejecuta, pero la respuesta resultante está vacía, es decir: el campo de texto de mis objetos de Respuesta está vacío. importar ...

Estoy arrastrando y soltando objetos personalizados en JLabels y puedo hacer referencia al objeto durante el proceso de transferencia (cambiar la cadena de la etiqueta al objeto recibido a la cadena), pero no estoy seguro de cómo ...

Estoy usando JGit y quiero extraer del repositorio remoto a mi repositorio local. La primera aproximación fue clonar el repositorio y funcionó bien: CredentialsProvider cp = new ...

public class Test1 {public static void main (String [] args) {byte b1 = 40; byte b = (byte) 128; System.out.println (b1); System.out.println (b); } } La salida ...