Mostrando entradas con la etiqueta GVIM. Mostrar todas las entradas
Mostrando entradas con la etiqueta GVIM. Mostrar todas las entradas

lunes, 4 de febrero de 2013

Esquema de colores por defecto en GVIM

Desde que cambie el esquema de colores a desierto (Editar - Esquema de colores - Desierto). No me gusta el esquema de colores que GVIM tiene por defecto.
De modo que quiero cambiar el esquema por defecto para dejar el que a mi me guste.

Para hacer esto ingresando comandos se hace como sigue:
:colorscheme desert

(ojo con el idioma) :colorscheme desierto no va a funcionar

Para configurar el esquema de colores favorito como por defecto, se debe abrir el archivo vimrc. En Windows 7 64 bits ese archivo se encuentra en:
C:\Program Files (x86)\Vim

y agregar la siguiente linea (reemplaza desert por tu configuración):
colorscheme desert

Fuente:

viernes, 21 de diciembre de 2012

Insertar salto de linea en VI

Una consulta SQL que este solo en una linea y que sea medianamente grande, puede ser difícil de leer. En ese caso surge la necesidad de separar lógicamente las lineas de tal forma que la consulta quede legible.

Eso es justamente lo que me paso hoy. Tenia una consulta de mas de 70 lineas pero que estaba en una sola. ¿Y como separar el texto en lineas legibles?. Solo necesitaba insertar después de las comas un salto de linea y de esa forma la consulta quedaba mas entendible. Esto es muy sencillo de hacer con VI.
El ejemplo que sigue fue hecho en Windows.


:s/, /,\r /g

El ejemplo de arriba, reemplaza las comas por comas mas un salto de linea. El texto original y el resultado en las siguientes imágenes.



Fuente:


domingo, 14 de octubre de 2012

Copiar texto al portapapeles desde VIM (Ubuntu)


VIM es un editor muy particular, tiene cosas muy potentes las cuales hacen que sea mi editor de cabecera. Pero otras que hacen probablemente que su adopción por parte de programadores nuevos se haga mas difícil. Una de las dificultades a las que me refiero se produce en Ubuntu, cuando tratas de copiar texto desde VIM al portapapeles y copiar ese texto en otra aplicación.  En la versión 7.3 simplemente no funciona, en la versión que uso en Windows no tengo problema.

Pero googleando, encontré la  forma en que se puede habilitar esa funcionalidad obvia.



Después de ingresar esa instrucción se puede seleccionar el texto con el mouse y copiar desde el menú de VIM.

Esto aplica a la versión 7.3 corriendo sobre Ubuntu 12.04 LTS


Fuente
http://j.gs/1UHu

domingo, 19 de agosto de 2012

Repetir n Veces un carácter en VIM



Necesitamos repetir caracteres algunas veces cuando comentamos código, algunos entre los cuales me cuento, colocamos varias rayitas para separar textos o destacar. Lo que muchos hacen es presionar la tecla del carácter a repetir n veces hasta que tienen una cadena con un largo aceptable.

En VI la forma mas eficiente de hacer esta minucia es escribiendo la siguiente orden:
:norm 50i=

Donde
norm : norm[al] Ejecuta los comandos en modo normal
50 : Es el numero de veces que se desea repetir el caracter
i : insert
= : Es el símbolo o carácter a repetir.

y con una orden tienes repetido tantas veces quieras un carácter.

Fuente
http://j.gs/1I5G

miércoles, 8 de agosto de 2012

E575: viminfo: Illegal starting char in line: VIM


Últimamente que he abierto VIM en el computador del trabajo que es un Windows, y me aparece el error que se ve en la captura.

E575: viminfo: Illegal starting char in line:

De acuerdo a lo que encontré, esto se debe a que el archivo ~/.viminfo esta corrupto.Y solo basta eliminarlo y el error desaparecerá.

En Windows no puedo encontrar ese archivo, solo la carpeta de VIM y el archivo _vimrc en la dirección
C:\Archivos de programa\Vim

Al cortar y copiar en otro lugar el archivo _vimrc,  VIM funcionó correctamente al ejecutarlo.




Fuente:

lunes, 6 de agosto de 2012

Reutilizar los patrones de busqueda en VIM


Uso VIM para casi todo (lo que tenga que ver con edición de archivos planos). Y entre las tareas que realizo continuamente es la búsqueda de textos aplicando expresiones regulares. El problema surge cuando aparte de la búsqueda necesito hacer algo con el resultado, hasta hoy volvía a ingresar el patrón por segunda vez para borrar, concatenar, etc. Hasta que me puse a buscar una forma mas eficiente de realizar estas tareas, y encontré unos trucos mágicos. Los trucos mágicos consisten en que no es necesario volver a escribir el patrón para una segunda operación substitución por ejemplo:

Busco un texto con el siguiente patrón, específicamente un texto de minutos segundos:
/[0-9]\{2}:[0-9]\{2}

Quiero reemplazar este texto por la cadena HH:MM, lo que hago es lo siguiente:
:% s//HH:MM/g


El otro atajo es colocar CTRL+R y  / y aparecerá el patrón que acabas de ingresar para la búsqueda.

Para buscar información en VIM
:help /
:help c_CTRL-R

Nota:
Para resaltar todas los resultados de la búsqueda
:set hls 

Fuente


sábado, 28 de julio de 2012

Unir lineas con VI

Desarrolle un software que genera código, pero en todos los desarrollos que hago necesito tocar algunas partes del código generado, por lo que al editar los archivos necesito hacer cosas como unir lineas, ya que este programa (el generador) deja en varias lineas algo que a mano hubiera escrito en una. Ejemplo: la imagen que adjunto es código generado:


En VI existen varias  formas de unir las las lineas: 
  • Presionando la letra J (mayúscula) 
  • SHIFT+j 
  • SHIFT+J
  • SHIFT+4
  • :join
  • :join! (mantiene la cantidad de espacios en blanco)
  • gJ (mantiene la cantidad de espacios en blanco)
Uno de los que mas me gusta es en modo Visual (MAYUS+v) seleccionar las lineas a unir y presionar J. También en modo visual puedes presionar gJ , pero este no elimina los espacios en blanco.

También encuentro mas útil escribir :
[rango] join

Ejemplo:
175 , 178 join 

Para buscar mas información sobre J (join) directamente en VI, escribe:
:help J


Fuente

lunes, 16 de julio de 2012

Cerrar todas las pestañas abiertas en VIM



Revisando todo lo que he escrito de VI, no he encontrado nada sobre Pestañas (Tabs). Pero si has llegado acá es probablemente buscando como cerrar todas las pestañas abiertas de una sola vez y no hacer :q por cada Tab abierta. Por lo que no necesitas que explique mas sobre lo primero. De todas maneras en adelante haré un post sobre trabajar con Pestañas.

Cerrar todas las pestañas (tabs)


Cerrar y guardar  todas las pestañas


Cerrar todas sin guardar


Cerrar todas las otras


Fuente
http://q.gs/1War1

lunes, 9 de julio de 2012

Cambiar fuente en VIM





El principal comando para cambiar el tipo de fuentes en VIM es:


Para cambiar los fuentes pero en VIM - Windows



Si quieres seleccionar la fuente desde un dialogo



sábado, 7 de julio de 2012

Archivos de configuración de VIM

Si trabajas con VIM, debes saber a que hay tres archivos de configuración.  La ubicación de estos depende de donde este instalado VIM y el sistema operativo que uses.

vimrc
Es el archivo de configuración principal, se encuentra en dos versiones: global y personal.
La ubicación de vimrc global se encuentra ejecutando en VIM la siguiente orden:



Para saber que directorio es considerado por VIM como tu Home Directory, ejecutas lo siguiente desde VIM.



gvimrc
Este archivo es especifico de GVIM, es similar a vimrc. Y esta ubicado en las mismas carpetas que vimrc, se encuentra  en dos versiones global y personal.
Permite configurar aspectos de la interfaz de usuario (GUI) de VIM.

exrc
Este archivo de configuración es usado solamente si deseas usar VIM en modo compatible con el viejo VI. Esta ubicado en las mismas carpetas que los demás archivos de configuración listados anteriormente y en dos versiones global y personal.

Fuente
http://j.gs/1Ayo

sábado, 30 de junio de 2012

Alinear texto con VIM

Independiente de tu opción política, va a llegar el minuto en que necesites alinear el texto a la izquierda o la derecha :) . Normalmente me pasa cuando quiero obtener una lista de un texto que he estado filtrando, quedan las palabras que necesito dispersas por todos lados. Algo así como en la imagen que muestro a continuación:

Para alinear a la izquierda


 Para alinear a la derecha

Para centrar


Fuente
http://j.gs/19Hk

domingo, 24 de junio de 2012

Usar los números de linea en VI


Normalmente si quieres copiar, eliminar o mover un texto en algún editor lo que haces es ir donde esta ese texto seleccionarlo y hacer lo que mencione antes copiar, eliminar o cortar. En VI, puedes indicar el numero de linea del texto y realizar lo que quieras con el.

Por ejemplo:

Eliminar desde la linea 4 a las 10 de un archivo


Para mover las lineas de 4 a la 10 al final del archivo

Para copiar las lineas señaladas (4 a la 10) después de la linea 15 

Si no puedes ver los números de lineas en VI

Fuente:
http://staff.washington.edu

Use este sitio para generar el texto Lorem Ipsum
www.lipsum.com

sábado, 2 de junio de 2012

Como evitar los archivos temporales en VIM (Windows)

En lo personal me molesta cuando VI crea esos archivos con extensión ~. Símbolo conocido como colita de chancho o pig tail o en círculos mas académicos como tilde de la ñ o virgulilla de la ñ.

Como en mi trabajo uso GVIM en una maquina Windows encontre la forma de que GVIM ponga esos archivos temporales en la carpeta temp de Windows.

Primero se debe encontrar el archivo de configuración de VIM en Windows y editarlo
C:\Archivos de programa\Vim\_vimrc


Y agregarle las siguientes lineas después de set nocompatible


En la maquina del trabajo uso la unidad E:, pero en el caso de la mayoría seria de la siguiente forma:

Fuente
http://j.gs/13FZ

sábado, 26 de mayo de 2012

Guardar parte del contenido a un archivo con VIM


Supongamos que estas haciendo mantención a un desarrollo, y te encuentras con que en los archivos tienes PHP, CSS y HTML todo entremezclado, esto ultimo conocido como código spaghetti.
Es poco probable que edites HTML con VIM (yo soy atípico). Pero el ejemplo, es para mostrar una funcionalidad de VIM que es aplicable en cualquier tipo de situaciones.

Si desde la linea 9 hasta la 30 tienes CSS y quieres enviar esas lineas a un nuevo archivo css y tenerlo separado haces de la siguiente forma:



o también copia todas las lineas

Esto aplicable a cualquier situación.


Fuente:
http://j.gs/11g2

sábado, 19 de mayo de 2012

Ejecutar comandos Unix / Linux desde VI


¿Que haces si quieres hacer una copia del archivo que estas editando en VI?.
Una forma es hacerlo es tal cual lo harías desde la consola de Unix o Linux.


Solo que en Vi se hace de la siguiente forma:



También se puede hacer lo anterior, con la siguientes instrucciones:



Con :tabnew creo una pestaña, con ":r archivo_a_copiar" tomo el contenido del archivo "archivo_a_copiar" y después lo guardo con un nuevo nombre.

Puedes tener una shell embebida en VI usando:


Sales de la shell  escribiendo exit y presionando Enter.

Fuente
http://j.gs/100e

viernes, 18 de mayo de 2012

Autocompletar en VIM


VIM permite como tantas otras cosas el autocompletado. Con dos atajos de teclado:


  • CTRL-N : Inserta la siguiente o única palabra encontrada
  • CTRL-P : Inserta la palabra previa o única encontrada


En la imagen como ven tengo varias pestañas y el autocompletado muestra palabras de todos los archivos que están abiertos.


Fuente:
http://q.gs/1H1u4

sábado, 28 de abril de 2012

Aprender VIM jugando

@tegeek en su cuenta de Twitter citando un articulo de Genbeta, ha posteado el siguiente recurso. Se trata de un juego online que te permite aprender VIM jugando, el juego se llama VIM Adventures. Lo estuve probando y la presentación es bastante buena e intuitiva. De modo que si por obligación tienes que aprender VI este juego va a hacer mas fáciles las cosas.



Link del Juego:
http://j.gs/uXV

Fuente:
http://j.gs/uXW

martes, 24 de abril de 2012

Borrar Lineas que Contengan un Patrón en VI

¿Haz querido borrar los comentarios de tu código fuente? o lineas que contienen un patrón en particular?

En VI se puede hacer de una con la siguiente instrucción:
:g/#/d

La orden anterior borra todas las lineas que contengan #. No recomendable para hacerlo en una shell, ya que va a borrar la primera linea: #!/bin/bash

Para esos casos puedes indicar desde que linea hasta que linea se aplicará el borrado:
:2,10/#/d


 Para borrar los comentarios hechos con backslash por ejemplo se debe hacer de la siguiente manera:
  :g/\/\//d




Por el contrario del requerimiento anterior. Tal vez necesites borrar todas las lineas que no contengan un patrón en particular. Por ejemplo, en una consulta SQL que conserve todas las lineas que contienen la palabra FROM.

:v/FROM/d



Fuente
http://j.gs/tfe


miércoles, 18 de abril de 2012

Ordenar Texto con VI


Me gusta el VI porque el VI es bueno (Parafraseando a Tito Fernandez). Creo que todo se puede hacer con esta herramienta superpoderosa. Una de ellas es ordenar textos. Por ejemplo, si tienes un archivo con una lista desordenada la puedes ordenar de forma alfabética de la siguiente forma:

Ordena todo el documento 
:% sort u 


Ordena desde la linea 4 a la 8 
:4,8 sort u


Ordena todo el documento y elimina los repetidos 
:% sort u
:% !sort -u


Ordena todo el documento pero al revez
:%sort!




Fuente
http://j.gs/sAs

sábado, 14 de abril de 2012

E212 : No se pudo abrir el archivo para escribir en el


Acabo de instalar SQL Developer en Ubuntu 11.10. Y para terminar , quiero crear una entrada en el menú de aplicaciones por lo que creo un archivo desde VI para editarlo.

En /usr/share/applications creo el archivo sqldeveloper.desktop (vi sqldeveloper.desktop). El contenido, tal como se ve en la imagen.

Al momento de guardar se muestra el mensjae:
"sqldeveloper.desktop" E212: No se pudo abrir el archivo para escribir en él.

Como no quiero perder lo escrito, busco la forma de hacerlo sin salir de VI y voila:

:w !sudo tee %


Me solicita la password de admin y guardo el archivo.