Saltar al contenido principal

102. Instalación y configuración inicial 🛠️

¿Por qué Vim clásico?

Vim es el editor que está disponible en prácticamente cualquier sistema Unix/Linux por defecto. Es estable, maduro y tiene décadas de desarrollo detrás. Aunque existen variantes modernas, Vim clásico sigue siendo la opción más universal y confiable para trabajar en cualquier entorno.

🐧 Instalación en Linux

Ubuntu/Debian

sudo apt update && sudo apt install vim

Arch Linux

sudo pacman -S vim

CentOS/RHEL/Fedora

sudo dnf install vim

🍎 Instalación en macOS

Con Homebrew (recomendado)

brew install vim

Con MacPorts

sudo port install vim

🪟 Instalación en Windows

Windows Subsystem for Linux (WSL) - Recomendado

# Instala WSL primero, luego:
sudo apt update && sudo apt install vim

PowerShell/Chocolatey

choco install vim

Git for Windows

Vim viene incluido con Git for Windows, accesible desde Git Bash.

🐳 En contenedores Docker

# Alpine con Vim
FROM alpine:latest
RUN apk add --no-cache vim git curl

# Ubuntu con Vim
FROM ubuntu:22.04
RUN apt update && apt install -y vim git curl

✅ Verificar la instalación

vim --version

# Verificar que tienes una versión reciente
# Vim: 8.0+ (recomendado 8.2+)

Deberías ver algo como:

VIM - Vi IMproved 8.2 (2019 Dec 12, compiled ...)

📁 Estructura de configuración

Vim

~/.vimrc                 # Archivo principal de configuración
~/.vim/ # Directorio de configuración
├── autoload/ # Scripts de carga automática
├── colors/ # Esquemas de color
├── ftplugin/ # Configuración por tipo de archivo
├── plugin/ # Plugins
├── syntax/ # Archivos de sintaxis
└── after/ # Configuraciones que se cargan después

En Windows: %USERPROFILE%\_vimrc y %USERPROFILE%\vimfiles\

🎨 Tu primera configuración

Configuración básica (~/.vimrc)

" ===================================================================
" CONFIGURACIÓN BÁSICA DE VIM PARA PRINCIPIANTES
" ===================================================================
" Copia este contenido a ~/.vimrc

" Números de línea
set number " Mostrar números de línea
set relativenumber " Números relativos (útil para movimientos)

" Indentación y tabs
set tabstop=4 " Tamaño visual de tab
set softtabstop=4 " Tamaño de tab al editar
set shiftwidth=4 " Tamaño de indentación
set expandtab " Convertir tabs a espacios
set autoindent " Auto-indentación
set smartindent " Indentación inteligente

" Búsqueda
set ignorecase " Ignorar mayúsculas en búsqueda
set smartcase " Ser inteligente con mayúsculas
set hlsearch " Highlight búsquedas
set incsearch " Búsqueda incremental

" Interfaz
set wrap " Wrapping de líneas largas
set linebreak " Break en palabras, no caracteres
set showmatch " Mostrar paréntesis/corchetes coincidentes
set cursorline " Highlight línea actual

" Comportamiento
set mouse=a " Soporte de mouse
set clipboard=unnamedplus " Usar clipboard del sistema (Linux)
" set clipboard=unnamed " Para macOS
set splitbelow " Splits horizontales hacia abajo
set splitright " Splits verticales hacia la derecha
set scrolloff=8 " Mantener 8 líneas de contexto

" Archivos
set nobackup " No crear archivos de backup
set nowritebackup " No crear backup al escribir
set noswapfile " No crear archivos swap

" Esquema de colores
colorscheme desert

" Leader key (tecla líder para comandos personalizados)
let mapleader = " "

" Mapeos básicos útiles
" Limpiar highlight de búsqueda
nnoremap <leader>h :nohlsearch<CR>

" Guardar rápido
nnoremap <leader>w :w<CR>

" Salir rápido
nnoremap <leader>q :q<CR>

" Navegación entre ventanas
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l

" Splits
nnoremap <leader>sv :vsplit<CR>
nnoremap <leader>sh :split<CR>

" Redimensionar ventanas
nnoremap <leader>= <C-w>=

" Mejor navegación en líneas wrapeadas
nnoremap j gj
nnoremap k gk

" Mensaje de bienvenida
echo "🚀 Configuración básica de Vim cargada!"

🔧 Configuración del terminal

Fuentes con iconos (opcional)

Para mejor experiencia visual con plugins que usan iconos:

# Instalar una fuente con iconos
# Opción 1: Manual desde https://nerdfonts.com
# Opción 2: Con Homebrew en macOS
brew tap homebrew/cask-fonts
brew install font-hack-nerd-font

# Configura tu terminal para usar la fuente instalada

Terminal con colores

Añade a tu ~/.bashrc o ~/.zshrc:

export TERM=xterm-256color

🚀 Alias útiles

Añade a tu ~/.bashrc, ~/.zshrc, o ~/.config/fish/config.fish:

# Bash/Zsh
alias v='vim'
alias vi='vim'

# Para editar configuración rápido
alias vimconfig='vim ~/.vimrc'
# Fish shell
alias v='vim'
alias vi='vim'
alias vimconfig='vim ~/.vimrc'

✨ Primeros pasos después de la instalación

  1. Ejecuta el tutorial:

    vimtutor
  2. Crea tu configuración:

    vim ~/.vimrc
    # Copia la configuración básica de arriba
  3. Prueba algunos comandos básicos:

    • :help - Sistema de ayuda
    • :version - Información de versión
    • :set - Ver configuración actual

🧪 Test de funcionalidad

Crea un archivo de prueba:

vim test.txt

Prueba que funcionen:

  • Números de línea visibles
  • Escribir en modo Insert (tecla i)
  • Copiar/pegar desde clipboard del sistema
  • Búsqueda con /
  • Guardar con :w
  • Salir con :q

🔜 ¿Qué sigue?

En el próximo capítulo exploraremos los modos de Vim - la base fundamental para entender cómo funciona todo en Vim.


💡 Tip pro: No modifiques demasiado la configuración al principio. Aprende primero los fundamentos con configuración mínima.

🎯 Objetivo del capítulo: Tener Vim/Neovim instalado y funcionando con una configuración básica.