# Configuración de Emacs actual Esta configuración para emacs se podría decir que es la heredera de mi [configuración de emacs inicial](https://git.kj2.me/kj/confi-emacs-inicial), la cual ya llevaba tiempo necesitando una manita de gato para arreglar y mejorar algunas cosas que me resultan cómodas para el uso, ademas de comenzar a utilizar `evil-mode`. Esta configuración bien podría haber sido una rama de la inicial, pero he decidido hacer uno nuevo y si es neceario hacer aquí las ramas. ## Instalación Si deseas clonar mi configuración, puedes clonar este repositorio: `git clone --depth 1 https://git.kj2.me/kj/confi-emacs-actual.git ~/.emacs.d` Instalación de fonts y libvterm: `sudo apt install fonts-firacode fonts-cantarell libvterm-dev cmake` Al igual que la versión anterior, puede ser necesario ejecutar el siguiente comando en el minibuffer para tener bien los íconos de neotree: `nerd-icons-install-fonts` Y eso sería todo. ## Dependencias espefícicas Algunos lenguajes, pueden requerir que instales algunas cosas en específico. - *Javascript*: Necesita de al menos [deno](https://deno.land/) para LSP (eglot) y [node](https://nodejs.org/es/) para flycheck, aunque creo que con deno puede bastar para ambos. - *PHP*: Requiere instalar [phpactor](https://phpactor.readthedocs.io/en/master/usage/standalone.html) para el LSP. - *GO*: Necesita etener instalado [go](https://go.dev/) para linter (gofmt) y [gopls](https://github.com/golang/tools/tree/master/gopls) para LSP. - *Rust*: Necesita clippy para flycheck y LSP. Pare este útimo igual es posible usar [rust-analyzer](https://rust-analyzer.github.io). Otros: - Búsqueda: Requiere tener instalado ripgrep. - Capturas: Requiere silicon para las capturas con silico y que la compilación sea con cairo para las capturas SVG. ## Usar el modo daemon El modo daemon permite a emacs cargar mucho más rápido, puesto que con ello evitas volver a cargar la configuración cada vez que abres un nuevo archivo. Si quieres aprender mas sobre esto, puedes revisarlo en la [documentación de emacs](https://www.emacswiki.org/emacs/EmacsAsDaemon). Para iniciar el daemon, puedes hacerlo desde la terminal ejecutando: `sudo systemctl --user start emacs` Del mismo modo, igual es recomendable habilitar el autoinicio de este servicio junto con el sistema: `sudo systemctl --user enable emacs` Y abrir emacs mediante emacsclient. ## Consideraciones - Toda la configuración la he realizado en los archivos que están en los archivos de la carpeta config, el archivo `init.el` solo los llama y no guarda nada más aparte de eso. - Se puede activar/desactivar `cua-mode` (`configs/base.el`, línea 49) activado para poder copiar, cortar, pegar y deshacer cambios con las combinaciones típicas en lugar de las de emacs. - Con F9 puedes abrir y cerrar el panel lateral de archivos. - Con C-F11 puedes maximizar/restaurar. - Con C-S-c se puede comentar / descomentar un región. - Con C-S-d se duplica las líneas. - Con M- se mueven las líneas/palabras. - Por defecto he configurado que al presionar TAB se usen 2 espacios en su lugar. Recuerda que si alguna cosa no te gusta, puedes cambiarla a gusto. Esta configuración fue hecha para mi uso personal y puede que tenga cosas que solo a mi me parecen cómodas/útiles. ## Contacto Si se tiene alguna pregunta o quieres comentarme alguna corrección, puesto que este git no está abierto a registro, puedes contactarme mediante: E-mail: webmaster@outcontol.net Telegram: [https://t.me/keyjay](https://t.me/keyjay)