GNU/Linux >> Tutoriales Linux >  >> Linux

Haciendo que Vim sea aún más impresionante con estas características geniales

Vim es una parte bastante integral de cada distribución de Linux y la herramienta más útil (por supuesto, después de la terminal) para los usuarios de Linux. Al menos, esta teoría es válida para mí. La gente podría argumentar que para la programación, Vim podría no ser una buena opción, ya que existen diferentes IDE u otros editores de texto sofisticados como Sublime Text 3, Atom, etc., que facilitan bastante el trabajo de programación.

Mis pensamientos

Pero lo que creo es que Vim funciona de la manera que queremos desde el principio, mientras que otros editores nos hacen trabajar de la forma en que han sido diseñados, no de la forma en que realmente queremos que funcionen. No puedo decir mucho sobre otros editores porque no los he usado mucho (soy parcial con Vim).

De todos modos, hagamos algo con Vim, que realmente haga el trabajo muy bien.

​Vim para Programación

Ejecución del código

Considere un escenario, lo que hacemos cuando estamos trabajando en un código C++ en Vim y necesitamos compilarlo y ejecutarlo.

(un). Regresamos a la terminal a través de (Ctrl + Z) o simplemente guardamos y salimos (:wq).

(b). Y el problema no ha terminado, ahora necesitamos escribir algo en la terminal como este { g++ fileName.cxx }.

(c). Y luego ejecútelo escribiendo { ./a.out } .

Ciertamente, había que hacer muchas cosas para que nuestro código C++ se ejecutara en el shell. Pero no parece ser una forma de Vim de hacer esto (ya que Vim siempre tiende a mantener casi todo bajo una o dos pulsaciones de teclas). Entonces, ¿cuál es la forma en que Vim hace estas cosas?

La Manera Vim

Vim no es solo un editor de texto, es una especie de lenguaje de programación para editar texto. Y ese lenguaje de programación que nos ayuda a ampliar las funciones de Vim es "VimScript". Entonces, con la ayuda de VimScript, podemos automatizar fácilmente nuestra tarea de compilar y ejecutar código con solo presionar una tecla.

Arriba hay un fragmento de mi archivo de configuración .vimrc donde creé una función llamada CPP().

Creación de funciones en VimScript

La sintaxis para crear una función en VimScript es bastante sencilla. Comienza con la palabra clave “func ” y es seguido por el nombre de la función [el nombre de la función debe comenzar con una letra mayúscula en VimScript, de lo contrario, Vim dará un error]. Y el final de la función se indica con la palabra clave “endfunc ”.En el cuerpo de la función, puede ver un ejec declaración, lo que sea que escriba después de que la palabra clave exec se ejecute en el modo de comando de Vim (recuerde lo que comienza con:en la parte inferior de la ventana de Vim). Ahora, la cadena que le pasé al ejecutivo es –

Lo que sucede es que cuando se llama a esta función, primero borra la pantalla de la terminal, de modo que solo usted verá su salida, luego ejecuta g ++ sobre el nombre de archivo en el que está trabajando y luego ejecuta el archivo a.out formado debido a compilation.Mapping Ctrl+r para ejecutar el código C++> a la combinación de teclas (Ctrl+r) para que ahora pueda presionar Ctrl+r para ejecutar mi código C++ sin escribir manualmente :call CPP() y luego presionar Enter.

Resultado final

Finalmente logramos encontrar la Manera Vim de hacer esas cosas. Entonces, ahora, solo presiona un botón y la salida de su código C ++ está en su pantalla, no necesita escribir todo eso. También te ahorra tiempo.

También podemos lograr este tipo de funcionalidad para otros idiomas.

Entonces, para Python:ahora puede presionar para interpretar su código.

Para Java:ahora puede presionar , primero compilará su código Java, luego interpretará su archivo de clase Java y le mostrará el resultado.

La imagen no ha terminado, marchando un nivel más profundo

Entonces, todo esto se trataba de cómo podías manipular las cosas para que funcionaran a tu manera en Vim. Ahora, se trata de cómo implementamos todo esto en Vim. Podemos usar estos fragmentos de código directamente en Vim y al revés usando AutoCommands en Vim (autocmd). La belleza de autocmd es que estos comandos no necesitan ser invocados por los usuarios, se ejecutan solos en cualquier condición determinada proporcionada por el usuario.

Lo que quiero hacer con esto [autocmd] es que, en lugar de usar diferentes asignaciones para realizar la ejecución de códigos en diferentes lenguajes de programación, me gustaría una única asignación para la ejecución de cada idioma.

​Lo que hicimos aquí es que escribí comandos automáticos para todos los tipos de archivo para los que tenía funciones para ejecutar el código.

Lo que sucederá es tan pronto como abra cualquier búfer de cualquiera de los tipos de archivos mencionados anteriormente, Vim asignará automáticamente mi (Ctrl + r) a la llamada de función y representa la tecla Intro, de modo que yo no necesito presionar la tecla "Intro" cada vez que presiono y solo hace el trabajo.

Para lograr esta funcionalidad, solo necesita agregar los fragmentos de función a su [dot] vimrc y luego simplemente colocar todos esos autocmds. Y con eso, la próxima vez que abra Vim, Vim tendrá todas las funcionalidades para ejecutar todos los códigos con las mismas combinaciones de teclas.

Conclusión

Eso es todo por ahora. Espero que esto te haga amar a tu Vim aún más. Actualmente estoy explorando cosas en Vim, leyendo Documentaciones, etc. y haciendo adiciones en el archivo [.vimrc] y volveré a comunicarme con ustedes cuando tenga algo maravilloso para compartir con todos ustedes.

Si desea echar un vistazo a mi archivo [.vimrc] actual, aquí está el enlace a mi cuenta de Github: MyVimrc.


Linux
  1. Linux Mint 19:fecha de lanzamiento, nuevas características y más

  2. Vim:¿Crear archivo con +x bit?

  3. du -h con más decimales

  4. Editando un .jar con `vim`

  5. ¿Puedo cambiar el nombre de los archivos en un directorio con Vim?

Asegure su privacidad en línea con estas distribuciones de Linux

Terminología, el mejor emulador de terminal con muchas características

Consejos de Vim:edite archivos remotos con Vim en Linux

Obtenga más de su Kindle en Linux con estos simples consejos

Impresionantes hojas de trucos de Vim para ayudarte a aprender Vim

Trabajar con el editor Vim (Editor de texto)