Old Computer Challenge. Día 1. Ajustes y arranque de Emacs. El objetivo del OCC en 2025 será usar Emacs como interfaz para todo en OpenBSD en un Atom n270 con 1GB de RAM y una gráfica intel integrada con GL 2.1. Todo en Emacs salvo el gestor de ventanas, que es cwm modificado para que ninguna combinación de teclas haga conflcto con las de Emacs. Emacs lo tengo en modo demonio; así puedo lanzar un Emacs de terminal o gráfico según conveniencia. El uso de memoria y CPU se reduce mucho usando emacsclient -nw -c Para empezar, bajé el TGZ de ports de OpenBSD 7.7 y compilé la versión Athena de Emacs para obtener un Emacs X11 con las dependencias mínimas. Tras configurar Lucid Emacs con sus fuentes hechas para un Netbook de 10 pulgadas, ~/.Xdefaults queda así: emacs.geometry: 100x40 emacs.pane.menubar.font: Go 9 emacs.font: Go 9 En ~/.xinitrc, tengo estos programas: export LANG=es_ES.UTF-8 export LC_CTYPE=es_ES.UTF-8 export LC_MESSAGE=es_ES.UTF-8 export LC_COLLATE=C xset +fp /usr/local/share/fonts/terminus/ xset +fp $HOME/.fonts/uw xset fp rehash xclock -render -fa spleen:size=8 -digital -bg black -fg yellow -geometry -0-0 -brief & xload -geometry -0+0 -bg black -fg yellow & xbacklight -set 30 xsct 5000 xset r rate 300 15 xsetroot -solid gray20 setxkbmap us -option compose:menu (sleep 5 && xmodmap ~/.Xmodmap ) & xbanish & dunst & exec cwm No es una maravilla de la configuración precisamente, es parco y funcional. Un reloj en la esquina inferior derecha, la carga del sistema en la superior derecha y Emacs se carga con win+a emacs [enter]. Emacs me carga con una ventana con fuente Terminus a 100x40 caracteres. Ideal para tener casi todo el área del netbook usable con éste entorno. Sobre la carga, es ligeramente superior a una configuración que tengo con tmux y varios programas que usan teclas de vi como slrn y mutt, pero no me puedo quejar. Como reseña, tengo Telega en Emacs. Para ello, instalé tdlib desde los paquetes de OpenBSD y luego metí telega de Melpa en Emacs, teniendo esta config en ~/.emacs (require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) ;; Comment/uncomment this line to enable MELPA Stable if desired. See `package-archive-priorities` ;; and `package-pinned-packages`. Most users will not need or want to do this. ;;(add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/") t) (package-initialize) para luego lanzar con Alt-x (Meta-X) package-refresh-contents y package-install(RET) telega. No es difícil de usar, usa muchos menos recursos que un Telegram con GUI pero lo noto bastante más 'pegajoso' que cuando podía usar Telegram vía Bitlbee con un cliente IRC. Si lanzo Emacs sin X, se nota bastante más fluído, pero pierdo la capacidad de ver imágenes. Supongo que con un poco de Elisp podría simular la capacidad de ver imágenes para lanzar sxiv en cada enlace, pero eso es otra historia. De momento, para editar este artículo en texto-plano he usado el modo TRAMP de Emacs, eso me gusta bastante, puedo editar todo lo remoto como si estuviera localmente. También me gusta eshell; no es una shell POSIX, pero se puede mezclar un lenguahje sh-like con Elisp. Para aprender Emacs, tengo el tutorial en castellano, donde se lanza con Ctrl-U Ctrl-h t. C-h t lo lanza en inglés, pero anteponiendo Ctrl-U a una combinación de teclas se suelen dar argumentos extra. Por ejemplo, C-h i lanza el visor Info de ayuda para Emacs y otros paquetes en su vista general, pero con Ctrl-U Ctrl-h i me deja abrir un archivo Info a mano, donde me es útil para abrir el SICP en dicho formato con total comodidad. Como referencia rápida: Ctrl-v avanza una página Alt-v retrocode. Ctrl-n avanza una línea Ctrl-p retrocede otra. Ctrl-f avanza el cursor Ctrl-b retrocede otro. Alt-f avanza por palabras. Alt-b retrocede igual. Ctrl-a va a inicio de línea. Ctrl-e va al final. Alt-a va a inicio de palabras saltando por párrafos. Alt-e va al final saltando entre párrafos. Ctrl-g cancela una órden. Es muy raro respecto a vi, pero la ventaja es que *todo* se va a comportar igual, estes hablando o editando ficheros o jugando con Malyon. Mañana más de éste entorno marciano.