open source

aprende neovim
desde cero

configuracion lista para usar. tutorial paso a paso. en espanol.

$ curl -fsSL https://raw.githubusercontent.com/kanazawa-dev/ronin-nvim/main/install.sh | bash
7modulos
50+atajos
100%en espanol
0complejidad
curso completo

de cero a productivo

01

introduccion y primeros pasos

que es neovim, instalacion, modos basicos

que es neovim?

neovim es un editor de texto basado en vim. se controla con el teclado, sin mouse. es rapido, liviano y altamente personalizable. la configuracion de ronin te da todo listo para empezar.

instalacion

brew install neovim

abrir un archivo

nvim archivo.py
nvim . # abre el directorio actual

los modos de neovim

teclamodopara que
iinsertarescribir texto
escnormalmoverse y comandos
vvisualseleccionar texto
:comandoejecutar comandos

guardar y salir

:w — guardar
:q — salir
:wq — guardar y salir

con ronin usas <space>w para guardar y <space>q para salir.

02

movimiento por el archivo

navegar sin flechas, saltar lineas, buscar

movimiento basico

teclaaccion
h j k lizquierda, abajo, arriba, derecha
wsalta al inicio de la siguiente palabra
bvuelve al inicio de la palabra anterior
eva al final de la palabra
0inicio de linea
$final de linea

movimiento rapido

teclaaccion
gginicio del archivo
Gfinal del archivo
ctrl+dbajar media pagina
ctrl+usubir media pagina
42Gir a la linea 42

buscar dentro del archivo

/texto — buscar hacia adelante
?texto — buscar hacia atras
n — siguiente resultado
N — resultado anterior
* — buscar palabra bajo cursor

abre un archivo largo y trata de moverte sin usar las flechas. al principio es lento, luego es automatico.

03

editar texto

insertar, eliminar, copiar, cambiar, deshacer

insertar texto

teclaaccion
iinsertar antes del cursor
ainsertar despues del cursor
Iinsertar al inicio de linea
Ainsertar al final de linea
onueva linea abajo
Onueva linea arriba

eliminar y copiar

teclaaccion
xeliminar caracter
ddcortar linea
yycopiar linea
ppegar despues
Ppegar antes
d$eliminar hasta final de linea
dweliminar palabra

cambiar texto

teclaaccion
cwcambiar palabra
cccambiar linea
Ccambiar hasta final de linea
rreemplazar un caracter
seliminar caracter e insertar

deshacer y rehacer

u — deshacer
ctrl+r — rehacer

regla: d elimina, c cambia (elimina + inserta), y copia. combinados con movimientos: d$ = eliminar hasta el final.

04

navegar multiples archivos

explorador, telescope, buffers, splits

explorador de archivos

<space>e — abrir/cerrar
enter — abrir archivo
a — crear archivo/carpeta
r — renombrar

telescope — busqueda rapida

atajoque hace
<space>ffbuscar archivos
<space>fgbuscar texto en el proyecto
<space>fbbuscar buffers abiertos
<space>fhbuscar ayuda

buffers (archivos abiertos)

<space>bn — siguiente buffer
<space>bp — buffer anterior
<space>bc — cerrar buffer

dividir pantalla

<space>sv — division vertical
<space>sh — division horizontal
ctrl+h/j/k/l — moverse entre ventanas
<space>se — igualar tamanos

flash — navegacion rapida

s — escribir caracteres y saltar directamente
05

codigo inteligente (lsp)

autocompletado, definiciones, renombrar, formatear

que es lsp?

el language server protocol le da inteligencia al editor. autocompletado, ir a definicion, renombrar, formatear, diagnosticos. todo en tiempo real.

navegar codigo

atajoque hace
gdir a la definicion
gdir a la declaracion
giir a la implementacion
gtir a la definicion de tipo
grbuscar todas las referencias

documentacion y edicion

atajoque hace
kver documentacion (hover)
ctrl+kver firma de funcion
<space>rnrenombrar simbolo (cambia en todos lados)
<space>caacciones de codigo (importar, extraer)
<space>cfformatear codigo

autocompletado

empieza a escribir y aparecen sugerencias automaticamente.

tab — siguiente sugerencia
shift+tab — sugerencia anterior
enter — confirmar
ctrl+space — forzar autocompletado

con <space>xx ves todos los errores y warnings del archivo. con <space>cf formateas todo el archivo automaticamente.

06

git y debugging

gitsigns, blame, diff, breakpoints, dap ui

git integrado

los cambios aparecen en el margen izquierdo. linea nueva = verde, modificada = azul, eliminada = roja.

atajoque hace
]gsiguiente cambio (hunk)
[gcambio anterior
<space>gspreparar cambio (stage)
<space>grrevertir cambio (reset)
<space>gpprevisualizar cambio
<space>gbver quien escribio la linea (blame)
<space>gddiff con staged

debugging con dap

ronin incluye debugging visual para rust y python. breakpoints, step-through, variables inline.

teclaaccion
f5continuar ejecucion
f9toggle breakpoint
f10step over (avanzar linea)
f11step into (entrar en funcion)
f12step out (salir de funcion)
<space>duabrir/cerrar panel de debugging

rust: <space>rr ejecuta, <space>rt corre tests, <space>rd abre debugging.

07

productividad y extras

sesiones, historial, todos, surrounds, emmet

sesiones

guarda tu workspace y restauralo despues.

<space>ss — guardar sesion
<space>sl — cargar sesion
<space>sd — eliminar sesion

historial de cambios

<space>uu — abrir undotree (historial visual)

volves a cualquier punto anterior del archivo.

todos y comentarios

<space>xt — buscar todos los todo, fixme, hack, etc.

comentar codigo

gcc — comentar/descomentar linea
gc + sel — comentar seleccion

surrounds

ysiw" — rodear palabra con comillas
ds" — quitar comillas
cs"' — cambiar comillas
s + sel — rodear seleccion

emmet (html)

ul>li*5>a — escribir
<space>xe — expandir a html

el camino sigue

estos son los fundamentos. la practica constante es lo que te va a hacer rapido. no intentes aprender todo de una vez. usa un atajo nuevo por dia.

instalá ronin, abre un archivo, y empeza a usar h j k l en vez de las flechas. de a poco, todo va a fluir.

instalar

curl -fsSL https://raw.githubusercontent.com/kanazawa-dev/ronin-nvim/main/install.sh | bash

requiere neovim 0.10+ y git