configuracion_minima_obligatoria_para_vim_.vimrc
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
configuracion_minima_obligatoria_para_vim_.vimrc [2021/04/22 22:40] – busindre | configuracion_minima_obligatoria_para_vim_.vimrc [2022/11/23 22:40] (current) – busindre | ||
---|---|---|---|
Line 1: | Line 1: | ||
===== Configuración mínima y teclas importantes del editor Vim ===== | ===== Configuración mínima y teclas importantes del editor Vim ===== | ||
- | **Tips / Trucos de Vim**: [[http:// | + | **Tips / Trucos de Vim**: [[http:// |
+ | **Buen manual de VIm en español**: [[https:// | ||
**Editar comando con vim antes de ejecutarlo**: | **Editar comando con vim antes de ejecutarlo**: | ||
Line 17: | Line 18: | ||
set nu " Indica el número de linea a la izquierda. | set nu " Indica el número de linea a la izquierda. | ||
set hlsearch | set hlsearch | ||
- | set ignorecase | + | set ignorecase |
- | set smartcase | + | set smartcase |
setlocal cm=blowfish2 | setlocal cm=blowfish2 | ||
- | set mouse-=a | + | set mouse-=a |
set pastetoggle=< | set pastetoggle=< | ||
set laststatus=2 | set laststatus=2 | ||
Line 60: | Line 61: | ||
- | **Buffers | + | **Búferes |
- | En Vim se pueden editar múltiples ficheros usando buffers, pestañas y ventanas (splits). Los bufers | + | En Vim se pueden editar múltiples ficheros usando buffers, pestañas y ventanas (splits). Los búferes |
La forma ideal de trabajar con múltiples ficheros en Vim que no tengan relación entre sí debe ser por medio de buffers y/o splits. | La forma ideal de trabajar con múltiples ficheros en Vim que no tengan relación entre sí debe ser por medio de buffers y/o splits. | ||
Line 68: | Line 69: | ||
< | < | ||
- | :e fichero | + | :e fichero |
- | :ls # Muestra los buffers, útil en combinación con ": | + | :ls # Muestra los búferes, útil en combinación con ": |
- | :b n # Se redirige al Buffer | + | :b n # Se redirige al búfer |
:enew # Crea un buffer nuevo en la misma ventana. | :enew # Crea un buffer nuevo en la misma ventana. | ||
- | :new # Divide la terminal horizontalmente con un nuevo buffer. | + | :new # Divide la terminal horizontalmente con un nuevo búfer. |
- | :vnew # Divide la terminal verticalmente con un nuevo buffer. | + | :vnew # Divide la terminal verticalmente con un nuevo búfer. |
- | : | + | : |
NOTA: Cuando se ejecuta :ls, es factible volver a escribir dos puntos y elegir otro buffer con el listado mostrado mediante :ls. Veamos el ejemplo cambiando el buffer perteneciente al fichero README.txt | NOTA: Cuando se ejecuta :ls, es factible volver a escribir dos puntos y elegir otro buffer con el listado mostrado mediante :ls. Veamos el ejemplo cambiando el buffer perteneciente al fichero README.txt | ||
Line 85: | Line 86: | ||
: | : | ||
+ | Ejecutar comandos vim en todos los buffers. | ||
+ | <code bash># Buscar y remplazar en todos los buffers. | ||
+ | # " | ||
+ | :bufdo %s/ | ||
+ | :bufdo %s/ | ||
**Ventanas (splits) en Vim**. | **Ventanas (splits) en Vim**. | ||
Line 174: | Line 180: | ||
34gg Se dirige a la linea 34 del documento. | 34gg Se dirige a la linea 34 del documento. | ||
- | ? Buscar hacía arriba de nuestra posición. | + | ? Buscar hacía arriba de nuestra posición. |
- | / Busca texto hacia abajo (puede volver al principio si llega al final del documento). | + | / Busca texto hacia abajo (puede volver al principio si llega al final del documento). |
- | + | : | |
- | : | + | |
# Sobre una palabra permite usarlo como termino de búsqueda automáticamente. Ctrl+o Vuelve el cursor a la anterior posición. | # Sobre una palabra permite usarlo como termino de búsqueda automáticamente. Ctrl+o Vuelve el cursor a la anterior posición. | ||
% Sobre una llave, paréntesis o corchete encuentra su correspondiente cierre. | % Sobre una llave, paréntesis o corchete encuentra su correspondiente cierre. | ||
+ | |||
+ | >> | ||
+ | 5>> Tabula a la derecha 5 lineas tomando como referencia el cursor. | ||
+ | << | ||
+ | 5<< Tabula a la izquierda 5 lineas tomando cono referencia el cursor. | ||
+ | |||
+ | ciw Sustituir una palabra: Elimina la palabra (debe estar limitada por espacios, puntos u otros caracteres) y se coloca en modo inserción. | ||
+ | cw | ||
+ | cc | ||
+ | c$ / C Sustituir desde el cursor hasta el final linea: Se coloca donde está el cursor en modo inserción. | ||
+ | c En modo visualización o bloque visual permite sustituir simplemente pulsando c una vez seleccionado el texto. Muy útil para cambiar el texto de columnas con bloque visual (Ctrl +v > c > nuevo texto > Esc). | ||
+ | |||
+ | |||
+ | ######## Copiar / Cortar / Pegar en Vim. | ||
+ | |||
+ | # Copiar y cortar desde vim en escritorio y pegar en un entorno remoto mediante SSH es factible sin necesidad de ratón teniendo " | ||
+ | # Copiar y cortar desde vim en un entorno remoto (SSH) y pegar en la instancia de vim local de escritorio sin ratón no es posible de manera nativa. | ||
# Portapapeles + (X11 clipboard - (Ctrl+c / Ctrl+v)) | # Portapapeles + (X11 clipboard - (Ctrl+c / Ctrl+v)) | ||
# Portapapeles * (X11 Lo seleccionado con el ratón - Se pega con botón central del ratón o Shift+insert) | # Portapapeles * (X11 Lo seleccionado con el ratón - Se pega con botón central del ratón o Shift+insert) | ||
- | # NOTA: Vim suele venir en muchas distribuciones en su versión mínima, se suele instalar gim-gtk / gvim para tener la versión completa, la cual viene simplemente compilada con más opciones activadas, entre ellas esta del portapapeles. | + | # NOTA: Vim suele venir en muchas distribuciones en su versión mínima, se suele instalar gim-gtk / gvim para tener la versión completa, la cual viene simplemente compilada con más opciones activadas, entre ellas soporte para el portapapeles: "vim --version | grep clipboard" |
yy Copia la linea (8yy copia la linea actual más otras 7). | yy Copia la linea (8yy copia la linea actual más otras 7). | ||
- | " | + | " |
- | " | + | " |
" | " | ||
- | # NOTA: Para copiar también puede usarse el ratón o combinación de teclas de la terminal en uso para copiar una vez se selecione | + | # NOTA: Para copiar también puede usarse el ratón o combinación de teclas de la terminal en uso para copiar una vez se seleccione |
+ | |||
+ | # Si se quiere seleccionar un texto muy largo desde el ratón que requiera scrolling es necesario usar ":set mouse=a" | ||
+ | |||
+ | # NOTA: AL usar +clipboard, el uso del modo visual o bloque visual de Vim, introduce el contenido en el clipboard secundario. | ||
Line 211: | Line 237: | ||
## Pegar desde el clipboard en instancias de vim remotas (ej SSH): Lo más sencillo sería evitar las funciones de clipboard de vim. | ## Pegar desde el clipboard en instancias de vim remotas (ej SSH): Lo más sencillo sería evitar las funciones de clipboard de vim. | ||
- | Alt + Shif + Boton central del ratón / rueda de scrolling. | + | Ctrl + Shift + v Depende de la terminal en uso, en caso de usar terminator se refiere al clipboard principal/ |
- | Ctrl + Shift + v (Depende de la terminal en uso). | + | Shift + Insert |
- | Shift + Insert | + | Alt + Shif + Boton central del ratón / rueda de scrolling. |
- | # Para poder pegar usando SSH la manera más simple es usar el ratón o bien la combinación de teclas que la terminal en uso para pegar. | + | ######## |
:r fichero | :r fichero | ||
Line 257: | Line 283: | ||
@: | @: | ||
- | NOTA: La tecla cursor arriba permite siempre ver el historial, no solo de comandos ejecutados con ":", | + | NOTA: La tecla cursor arriba permite siempre ver el historial, no solo de comandos ejecutados con ":", |
Line 298: | Line 324: | ||
:set unspell | :set unspell | ||
- | **Remplazar / Sustituir texto en Vim**: Remplaza en todo el documento todas las coincidencias de la cadena " | + | **Remplazar / Sustituir texto en Vim**. |
- | < | + | < |
+ | : | ||
+ | # Remplaza en la linea donde esté el cursor todas las coincidencias de la cadena " | ||
+ | : | ||
+ | # Remplaza enntre las lienas 3 y 5 todas las coincidencias de la cadena " | ||
+ | : | ||
+ | </ | ||
Usar la sustitución dentro del modo / bloque visual en Vim (Sin % al principio y indicando %V). | Usar la sustitución dentro del modo / bloque visual en Vim (Sin % al principio y indicando %V). | ||
< | < | ||
- | **Eliminar | + | **Eliminar |
- | < | + | < |
+ | # Elimina todas las lineas que no tengan la cadena de busqueda. Recordar que se pueden usar expresiones regulares. | ||
+ | :g!/ | ||
+ | </ | ||
+ | **Eliminar palabras en base a resultados de búsqueda en Vim**: Se pude utilizar simplemente la sustitución | ||
+ | < | ||
+ | : | ||
+ | # Si se quire ahorrar tiempo es posible usar simplemente ": | ||
+ | | ||
# NOTA: Si no se utilizar % la operación se realiza sobre la linea donde se encuentra le cursor. Sin la " | # NOTA: Si no se utilizar % la operación se realiza sobre la linea donde se encuentra le cursor. Sin la " | ||
configuracion_minima_obligatoria_para_vim_.vimrc.1619124031.txt.gz · Last modified: 2021/04/22 22:40 by busindre