Blog sobre software libre
04 ago 2026

Teclados divididos

Hace un tiempo descubrí que había teclados que estaban "rotos" en dos mitades. Al principio no me fijé mucho en ellos porque parecía una cuestión de ergonomía y yo no paso tanto tiempo escribiendo como para necesitar un teclado mejor, además suelo usar portátiles y ni siquiera me había comprado nunca un teclado mecánico.

Pero tras ver varios vídeos de Protesilaos y gente a mi alrededor que usaba teclados mecánicos decidí probar a usar un teclado mecánico 60%. Tras varios meses usándolo habiendo remapeado algunas teclas (por software, porque el teclado no era programable), el siguiente paso natural era un teclado programable con QMK, así que decidí comprarme el más barato que había, el Silakka54.

Sólo llevo un día y medio usándolo, y todavía tengo que adaptarme y pensar cómo voy a refinar la distribución de teclas pero me está gustando mucho por ahora.

El cambio más importante para mi ha sido poder reprogramar cada tecla con lo que yo quiera, incluso macros si me hacen falta. El software QMK permite total libertad. Se suele usar un modelo de capas, en las que cada tecla del teclado hace algo diferente, y se cambia entre las distintas capas con teclas especiales, o manteniendo pulsada alguna tecla o combinación de ellas.

Además, aunque en lo que más me había fijado al mirar teclados divididos es que prácticamente todos son programables, la mayoría de estos teclados suelen ser orto lineares, es decir, están organizados en una especie de matriz cuadrada en lugar de tener las filas desplazadas como los teclados tradicionales.

Sorprendentemente para mi el hecho de que el teclado esté dividido no me ha supuesto ningún problema de adaptación, pero la distribución orto linear sí que me está resultando difícil de aprender. Por otro lado está el hecho de que la barra espaciadora desaparezca y en su lugar los dedos pulgares tengan 3 teclas cada uno, lo cual obviamente requiere de una adaptación.

Por último, dado que es mi segundo teclado mecánico, todavía no tengo muy clara la diferencia entre los distintos tipos de switches y keycaps, pero de momento me va bien con los switches rojos y las keycaps por defecto que traía el teclado al comprarlo en Aliexpress.

Todavía no sé si conseguiré adaptarme y usaré un teclado dividido en el futuro, pero de momento está resultando una experiencia interesante y muy divertida.

Tags: teclados,silakka54,gnulinux
30 jun 2026

Limpiando Elfeed

Continuando mi camino en el aprendizaje de Emacs Lisp, se me ocurrió hacer una función que marcara como leídos todas las entradas de mi feed de Elfeed que provinieran de una fuente específica.

En concreto, el feed de Richard Stallman tiene un volumen muchísimo mayor que el resto de feeds que sigo, así que quería poder marcar como leídas todas las noticias de RMS sin tener que ir una a una, ya que hay centenares.

Una opción sería usar una macro de teclado, pero para mejorar mi Elisp decidí pensar en una manera de hacerlo con código. Como me sonaba que la función re-search-forward hacía justo lo que yo quería, la combiné con la función que marca un feed como leído (gracias a C-h k m dentro de Elfeed conseguí saber el nombre de la función) y con dos líneas ya tenía todo listo.

  (while (re-search-forward "Richard")
(elfeed-search-untag-all-unread))

Ejecutando el código con M-: solucioné el problema instantáneamente.

Tags: emacs, elisp, gnu/linux
02 may 2026

May Emacs Carnival

May I recommend… / En mayo recomiendo…

Nota: Este post tiene una versión en inglés para participar en el Emacs Carnival. La versión en castellano está tras la inglesa.

May I recommend

For this month Emacs Carnival I've thought of two types of recommendations. First some amusements inside Emacs, and then some things I liked when skimming through the Emacs 31 NEWS file.

En mayo recomiendo

Para el Emacs Carnival de este mes he pensado en dos tipos de recomendaciones. Primero algunas para pasatiempos dentro de Emacs y luego otras relacionadas con el archivo NEWS de Emacs 31.

Tags: emacs, carnival
13 abr 2026

Starter kits (kits de inicio)

Nota: Este post tiene una versión en inglés para participar en el Emacs Carnival. La versión en castellano está tras la inglesa.

Starter kits

Emacs Prelude

I started my Emacs config file from scratch because I didn't know that starter kits existed. But a couple of years after using Emacs I found Emacs Prelude and migrated my configuration to use Prelude.

With Prelude I learnt a lot of things (avy, completion frameworks, flymake…). Emacs Prelude was like a different editor compared to my orginal configuration.

Eventually, I stopped using Prelude because there were a lot of things I didn't understand at the moment (like the whitespace-mode or flymake) and wanted to learn using them one by one in my own configuration. But it was wonderful to rediscover Emacs through Prelude, and it improved my Emacs knowledge a lot.

Kits de inicio

Emacs Prelude

Cuando empecé a usar Emacs, partí de un fichero de configuración vacío, porque no sabía ni que existían distintas "distros" de Emacs preconfiguradas.

Pero tras unos dos años de usar Emacs descubrí Emacs Prelude, y migré mi configuración para usarlo. Gracias a Prelude descubrí un montón de cosas que desconocía (como avy, los motores de búsqueda, flymake etc.). Con Prelude, Emacs parecía un editor completamente distinto al Emacs que tenía con mi propia configuración.

Con el paso del tiempo dejé de usar Prelude porque había demasiadas cosas que no entendía (como los colores de whitespace-mode o flymake), y prefería ir probándolas poco a poco en mi propia configuración para entederlas mejor. Pero fue realmente increíble redescubrir Emacs gracias a Prelude. Gracias a eso conseguí pasar de ser un novato a ser un usuario con bastante conocimiento de Emacs.

Tags: emacs, carnival, gnu/linux, english
28 mar 2026

Hola mundo en Emacs Lisp

Llevo mucho tiempo queriendo mejorar mi conocimiento de Emacs Lisp, pero al final nunca tengo hueco para aprenderlo en profundidad.

De momento he hecho una especie de "Hola mundo" un poco más complejo, usando la función let de Elisp para declarar variables.

Es una función muy sencilla, que pide al usuario el nombre, y luego le da los buenos días y la fecha. Con esta función he usado por primera vez let, y además he descubierto la distintas formas en las que se puede conseguir una fecha con la función format-time-string.

A continuación dejo el código y un ejemplo de uso cuando el usuario introduce la cadena "Carlos" por teclado.

  (defun holamundo()
  (interactive)
  "Hola mundo interactivo que pide el nombre del usuario y dice la fecha de hoy."
  (let ((nombre (read-string "Introduce tu nombre: "))
    (diasem (format-time-string "%A"))
    (dia (format-time-string "%d"))
    (mes (format-time-string "%B")))
    (message "Buenos días %s, hoy es %s %s de %s" nombre diasem dia mes)))

(holamundo)

  "Buenos días Carlos, hoy es domingo 22 de marzo" 

Tags: emacs,gnulinux
Other posts
Other posts
Creative Commons License
www.finaprosadigital.com by Carlos Pajuelo is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.