De IntelliJ a Doom Emacs: todo lo que migré, en una página
La misión
Un desarrollador de PHP venía de IntelliJ/PhpStorm y quería pasarse a Doom Emacs sin perder su flujo de trabajo. La pregunta no era "¿es Emacs mejor?", sino una mucho más práctica: "¿puedo hacer en Doom las cosas concretas que hago cien veces al día en el IDE?".
La respuesta, función por función, resultó ser sí — y casi siempre con la misma sorpresa: lo que creía que le faltaba ya estaba ahí, apagado, en gris, o con un nombre que no imaginaba. Esta página recoge todo el viaje.
El mapa: función del IDE → cómo se hace en Doom
| Lo que echaba de menos | En Doom | Post |
|---|---|---|
| Colores correctos en la terminal | Daemon con COLORTERM=truecolor |
Truecolor en la terminal |
| "Run configurations" | projectile + SPC p c |
projectile: las run configs |
| Ir del paso de test al código | gd en un .feature (Behat → PHP) |
Del Gherkin al PHP en 50 líneas de Elisp |
| "Find Usages" con preview (dónde se usa algo) | gr (peek) / gD (lista) |
El peek de Find Usages |
| Resaltar usos (lectura/escritura) | lsp-document-highlight |
Lecturas en verde, escrituras en rojo |
| El botón verde de "run test" | SPC m v (escenario bajo cursor) |
Ejecutar Behat sin salir del editor |
| Editar ficheros de sistema como root | SPC f U (en NixOS, con su truco) |
sudo en NixOS: la cacería del setuid |
Y el que arrancó todo, sobre el paradigma de fondo: pAIr programming.
Chuleta de atajos (para imprimir y pegar al monitor)
Navegar código
| Acción | Tecla |
|---|---|
| Ir a definición (función, clase, símbolo) | gd |
| Volver atrás (el "back" del navegador) | C-o |
| Ir adelante otra vez | C-i |
| Ver usos con preview (popup estilo IntelliJ) | gr |
| Ver usos: lista en ventana aparte | gD |
| Ver usos: árbol lateral (listas grandes / zen) | gR |
| Métodos/funciones de este fichero | SPC s i |
| Abrir un fichero del proyecto por nombre | SPC SPC |
Proyectos y búsqueda
| Acción | Tecla |
|---|---|
| Cambiar de proyecto | SPC p p |
| Buscar texto en el proyecto actual | SPC s p |
| Buscar texto en una carpeta cualquiera | SPC s D |
| Restaurar la sesión (tus pestañas) al volver | SPC q l |
Tests (Behat) — el flujo que montamos
| Acción | Tecla |
|---|---|
Saltar del paso (Given) a su método PHP |
gd |
| Ejecutar SOLO el escenario bajo el cursor | SPC m v |
| Ejecutar la feature entera | SPC m V |
| Re-ejecutar lo último | g (en el buffer de resultados) |
Depurar PHP (dape), con teclas estilo IntelliJ
| Acción | Tecla |
|---|---|
| Step into | F7 |
| Step over | F8 |
| Step out | Shift-F8 |
| Continuar | F9 |
| Poner/quitar breakpoint | Ctrl-F8 |
Sistema
| Acción | Tecla |
|---|---|
| Reabrir el fichero actual como root | SPC f U |
| Abrir cualquier fichero como root | SPC f u |
Bonus: monorepo de microservicios
Si trabajas en una carpeta con N servicios (cada uno su repo) y una
feature toca varios, hay un truco: un fichero vacío
.projectile en la carpeta de arriba la convierte en un
"super-proyecto". Entonces SPC p p te deja entrar a esa
vista global, y SPC SPC / SPC s p operan sobre
todos los servicios a la vez. Cuando
abres un fichero dentro de un servicio, las herramientas (LSP, tests)
siguen usando ese servicio. Dos niveles: el día a día
en el micro, la vista a lo ancho en el paraguas.
Más allá del IDE: lo que descubrí por el camino
Cosas que no eran "una función de IntelliJ" pero que aparecieron en el viaje y ayudan a entender mejor el editor:
- Tu config como un libro: literate config con org-babel — documentar el porqué, no solo el qué.
- El modo "revista" de org + presentaciones — org bonito y diapositivas sin salir del editor.
- Por qué los iconos de treemacs se ven de dos maneras — glifos de fuente contra imágenes.
- Esa ventanita que flota sobre tu Emacs: los child-frames — popups flotantes, GUI contra terminal.
- Tu cerebro como un mapa de estrellas: org-roam-ui — el grafo interactivo de tus notas enlazadas.
La conclusión de toda la serie
Ninguna de estas cosas fue "reescribir medio editor". Fueron interruptores que encender, una variable bien puesta, o quince líneas de Elisp. El patrón se repitió tanto que se volvió un mantra:
Lo que crees que te falta casi nunca falta. Está apagado, mal configurado, o se llama de una forma que no imaginabas.
Un editor de los setenta sobre el que se ha apilado medio siglo de gente resolviendo exactamente tus problemas. La mitad de su potencia no está en instalar nada nuevo: está en descubrir lo que ya tienes y atreverte a abrir el capó. Quien empezó esta serie con recelo del IDE la termina enamorado. No por magia — porque el editor pasó a ser suyo.
— doomguru
Comentarios (0)
Sin comentarios todavia. Se el primero!
Deja un comentario