From 82499ddf7b209da31812f5892fa475487285bdd4 Mon Sep 17 00:00:00 2001
From: KJ <webmaster@outcontrol.net>
Date: Wed, 15 May 2024 21:21:54 -0400
Subject: [PATCH] Remake readme.

---
 readme.md  | 67 ------------------------------------------------------
 readme.org | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 63 insertions(+), 67 deletions(-)
 delete mode 100644 readme.md
 create mode 100644 readme.org

diff --git a/readme.md b/readme.md
deleted file mode 100644
index 37d0ede..0000000
--- a/readme.md
+++ /dev/null
@@ -1,67 +0,0 @@
-# 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-<arrow keys> 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)
diff --git a/readme.org b/readme.org
new file mode 100644
index 0000000..1652d2b
--- /dev/null
+++ b/readme.org
@@ -0,0 +1,63 @@
+#+TITLE: Configuración Emacs
+#+AUTHOR: KJ
+#+OPTIONS: toc:nil
+
+Esta es mi configuración de Emacs personal y está hecha principalmente para funcionar con *Emacs compilado desde el código*, ya que es así como yo lo uso.
+
+* Instalación
+
+Si deseas clonar mi configuración, puedes clonar este repositorio:
+
+#+begin_src bash
+git clone --depth 1 https://git.kj2.me/kj/confi-emacs-actual.git ~/.emacs.d
+#+end_src
+
+Si no ves los íconos bien dentro de Emacs, puedes ejecutar el comando dentro de Emacs (M-x)
+
+#+begin_src elisp
+nerd-icons-install-fonts
+#+end_src
+
+* Compilación de Emacs
+
+Si quieres instalar Emacs tal cual lo tengo yo, esta es la configuración de compilación que actualmente uso:
+
+#+begin_src bash
+git clone https://git.savannah.gnu.org/git/emacs.git
+cd emacs
+./autogen.sh
+./configure  --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib --localstatedir=/var    --mandir=/usr/share/man --with-gameuser=:games --with-modules --without-libotf --without-m17n-flt --without-gconf --with-native-compilation=yes --with-native-compilation=aot --with-xinput2 --with-pgtk --with-tree-sitter --without-compress-install --with-mailutils
+
+make -j16
+make check
+sudo make install
+#+end_src
+
+Las dependencias para compilar pueden cambiar según tu distribución, por lo que queda en tus manos el ajustar lo que sea necesario.
+
+Como ayuda lo más que puedo dar es que en las distros basadas en Debian puedes usar =apt build-dep emacs= mientras que en las basadas en RHEL (solo lo he probado en Fedora) puedes usar =dnf builddep emacs=. En el caso de las basadas Arch puedes usar AUR.
+
+* Dependencias
+
+Normalmente no es usual el tener dependencias reales para que emacs funcione, pero para el funcionamiendo adecuado y sin errores, lo mejor es tener instalado:
+
+- El font de firacode
+- cmake
+- libvterm
+
+** Languaje Server Protocol (LSP)
+
+Esta configuración por defecto utiliza [[https://github.com/joaotavora/eglot][eglot]] para LSP con los servidores por defecto. Puedes revisar su documentación para ver lo que necesitas instalar para usar el LSP del lenguaje que necesites.
+
+Finalmente, recomiendo instalar [[https://github.com/blahgeek/emacs-lsp-booster][emacs-lsp-booster]], la mejora es nimia en general, pero en proyectos grandes esa pequeña mejora es bastante notoria.
+
+* Atajos de teclas personalizados
+
+Tengo varios atajos reconfigurados, por lo que recomiento revisar primero que nada el archivo [[./configs/init-keys.el][init-keys.el]] el resto de configuraciones está principalmente en los archivos [[./configs/init-minibuffer.el][init-minibuffer.el]] e [[./configs/init-packages.el][init-packages.el]], dudo que las uses todas y yo mismo no las uso, por lo que con el tiempo las voy eliminando y a veces agrego alguna extra. Con que revises el primer archivo y sepas que =consult-project= está en =C-x p= ya estás servido.
+
+* 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)