/vim-combinations

A repository to store key combinations useful for vim :punch: :godmode: :punch:

MIT LicenseMIT

Vim key combinations

One of the most pleasant aspects of Vim is how keyboard shortcuts can be combined. In this repository we will describe some of those combinations.

Uno de los aspectos más agradables de Vim es como sus atajos de teclado se pueden combinar. En este repositorio describiremos algunas de esas combinaciones.

Note: If you know any other key combination, please do not hesitate to make a pull-request.

Nota: Si conoces alguna otra combinación, por favor no dudes en hacer un pull-request.


Movimiento del cursor (Desplazamiento)

Saltar hacia el inicio de una línea

Tecla: 0.

Ejemplo:

Si tuviéramos el siguiente código y tenemos el cursor en cualquier posición:

var order = 'ASC';

Y luego presionamos la tecla 0 el cursor se desplazará hacía el inicio de la línea, osea el cursor se pondrá delante de la letra var.

Modo Normal o Modo Navegación

Este modo de vim es el que te permitirá navegar por todo el documento de una forma increíble. A este modo se accede presionando la tecla Esc.

En la siguente tabla mostramos la navegacion básica en vim:

Tecla Acción
k mueve el cursor hacia una línea superior.
j mueve el cursor hacia una línea inferior.
h mueve el cursor hacia un caracter a la izquierda
l mueve el cursor hacia un caracter a la derecha

Modo Insertar

Tecla: i.

Ejemplo:

Si tuviéramos el siguiente código y posicionamos el cursor delante del caracter S:

var order = 'SC';

Y luego presionamos la tecla i pasamos a modo inserción, luego escribimos por ejemplo la letra A, tendríamos:

var order = 'ASC';

Tecla: a.

Ejemplo:

Si tuviéramos el siguiente código y posicionamos el cursor delante del caracter D:

var order = 'DSC';

Y luego presionamos la tecla a pasamos a modo insersión, luego escribimos por ejemplo la letra E, tendríamos:

var order = 'DESC';

1 key

Deshacer el último cambio

Tecla: u.

Ir hasta la última línea de código de un archivo

Tecla: G.

Ejemplo:

Si tuviéramos el siguiente código:

/*
GulpCssUrlVersioner
@class GulpCssUrlVersioner
 */

/*
 * Module dependencies.
 */
var Buffer, CssUrlVersioner, GulpCssUrlVersioner, chalk, extend, through, util;

util = require('util');
through = require('through2');
chalk = require('chalk');
Buffer = require('buffer').Buffer;
extend = util._extend;
CssUrlVersioner = require('css-url-versioner');

/*
 * Library.
 */
GulpCssUrlVersioner = function(opts) {
  this.data = {};
  this.settings = opts || {
    debug: false
  };
  this.css = '';
  this.transform();
  return this.stream;
};

Y tuviéramos el cursor posicionado en cualquier línea, al presionar la tecla G, el cursor se posicionaría en el último caracter de la última línea de código de nuestro archivo.


2 keys

Rehacer el último cambio

Tecla: Ctrl + R.

Comentar un bloque de líneas

Para aplicar este combo primero entrar al modo bloque visual.

Combo: shift + i.

Ejemplo:

Si tuviéramos el siguiente código:

var a = 'SFSSD';
var b = 'SFSFSDFS';
var c = 'SFDSFDSFDSF';

Si situamos el cursor en la palabra reservada var, luego entrar al modo bloque visual, luego moverte hasta la linea que deseas comentar, en este caso sera var de la tercera linea , siempre posicionando en el primer caracter de la linea, luego aplicamos shift + i , luego // para comentar, luego ESC y listo.

var a = 'SFSSD';
var b = 'SFSFSDFS';
var c = 'SFDSFDSFDSF';

Obtendremos :

//var a = 'SFSSD';
//var b = 'SFSFSDFS';
//var c = 'SFDSFDSFDSF';

Cambiar de posición un caracter con el caracter siguiente

Combo: x + p.

Ejemplo:

Si tuviéramos el siguiente código:

var roder = 'ASC';

Si situamos el cursor delante del caracter r al aplicar el combo xp, obtendríamos lo siguiente:

var order = 'ASC';

Eliminar una línea de código entera

Combo: d + d.

Ejemplo:

Si tuviéramos el siguiente código:

p
    margin 0
    color white

Si situamos el cursor sobre margin 0 al aplicar el combo dd, obtendríamos lo siguiente:

p
    color white

Borrar resto de palabra desde un punto específico

Combo: d + e.

Ejemplo:

Si tuviéramos el siguiente código:

box-sizingabc: border-box

Si situamos el cursor en el caracter a al aplicar el combo de, obtendríamos lo siguiente:

box-sizing: border-box

Borrar resto de línea desde un punto específico

Combo: d + $.

Ejemplo:

Si tuviéramos el siguiente código:

border 1px 2px 3px 4px

Si situamos el cursor detrás de la palabra 2px al aplicar el combo d$, obtendríamos lo siguiente:

border 1px 2px

Borrar todas las líneas hacia abajo desde el cursor

Combo: d + G.

Ejemplo:

Si tuviéramos el siguiente código:

.footer_note
	background black
	padding 30px

	p
		color #cccccc
		margin 0

Si situamos el cursor en la palabra padding al aplicar el combo dG, obtendríamos lo siguiente:

.footer_note
	background black

Ir hasta la primera línea de código de un archivo

Combo: g + g.

Ejemplo:

Si tuviéramos el siguiente código:

/*
GulpCssUrlVersioner
@class GulpCssUrlVersioner
 */

/*
 * Module dependencies.
 */
var Buffer, CssUrlVersioner, GulpCssUrlVersioner, chalk, extend, through, util;

util = require('util');
through = require('through2');
chalk = require('chalk');
Buffer = require('buffer').Buffer;
extend = util._extend;
CssUrlVersioner = require('css-url-versioner');

/*
 * Library.
 */
GulpCssUrlVersioner = function(opts) {
  this.data = {};
  this.settings = opts || {
    debug: false
  };
  this.css = '';
  this.transform();
  return this.stream;
};

y tuviéramos el cursor posicionado en cualquier línea, al aplicar el combo gg, el cursor se posicionaría delante del primer caracter de la primera línea de codigo de nuestro archivo.

Navegar entre palabras

Avanzar una palabra

Tecla w.

Retroceder una palabra

Tecla b.

Resaltar la última selección hecha

Combo: g + v.

Ejemplo:

Si hubieramos realizado una selección y seguido a ello diferentes acciones, podemos volver a resaltar la última selección hecha mediante el combo g + v.


3 keys

Intercambiar la posición con la línea inferior

Combo: d + d + p.

Ejemplo:

Si tuviéramos el siguiente código:

p
    margin 0
    color white

Si situamos el cursor sobre margin 0 al aplicar el combo ddp, obtendríamos lo siguiente:

p
    color white
    margin 0

Eliminar un grupo de caracteres (alfanumericas,caracteres especiales).

Combo: c + a + w.

Ejemplo:

Si tuviéramos el siguiente código:

h1
    color red

Si situamos el cursor sobre el atributo color, y ejecutamos el combo en modo normal, obtendríamos lo siguiente:

h1
    red

Borrar palabra desde cualquier punto

Combo: b + d + e.

Ejemplo:

Si tuviéramos el siguiente código:

array.push('var1')

Si situamos el cursor en cualquier posición dentro de la palabra(excepto el primer caracter) var1 al aplicar el combo bde, obtendríamos lo siguiente:

array.push('')

Copiar y pegar una linea debajo de linea actual

Combo: y + y + p.

Ejemplo:

Si tuviéramos el siguiente código:

var a = "Test";

Si situamos el cursor en cualquier posición de la linea, al aplicar el combo yyp, obtendríamos lo siguiente:

var a = "Test";
var a = "Test";

Edición

Reemplazar una línea entera

Combo: c + c.

Ejemplo:

Si tuviéramos el siguiente código:

p
    color white
    margin 0

Si situamos el cursor sobre margin 0 al aplicar el combo cc, obtendríamos lo siguiente:

p
    color white

Y por ultimo escribiremos padding 0, obtendríamos lo siguiente:

p
    color white
    padding 0

Como podemos ver, al ejecutar el combo cc no se pierde la tabulación.


Ventanas

Dividir la ventana verticalmente

Combo: ctrl + w + v.

Dividir la ventana horizontalmente

Combo: ctrl + w + s.

Navegar entre ventanas divididas

Combo: ctrl + w.

Cerrar una ventana dividida

Combo: ctrl + w + q.