Archivo: Software Libre | Picando Código
Grupos y capturas reemplazando texto con expresiones regulares
Las expresiones regulares nos permiten agrupar patrones y "capturarlos". Luego podemos usar el valor de esos grupos con "back references" (¿referencias posteriores?). Últimamente vengo usando cada vez más replace-regexp en Emacs y aprovechando que tuve que hacer uso de estas características, lo comparto por acá. Estaba editando código Ruby y dado un Array de Hashes, quería reemplazar todas las llaves en los Hashes del tipo String a Symbol: { "nombre": "Fernando" } => { nombre: "Fernando" } En Emacs, al presionar Alt x - replace-regexp Enter entramos a un mini-buffer donde tenemos que ingresar una expresión regular. Lo que quería […]
Jugando con Garuda Linux
Hace poco instalé Garuda Linux. Quería tener un sistema y una partición exclusivos para jugar, usar Steam, GOG o lo que fuera. Ahora que Linux es un sistema tan popular y fácil de usar para videojuegos (comparado con hace unos pocos años), me decidí probar una distribución creada específicamente para esto. La investigación no me llevó mucho tiempo, entre las opciones más comentadas están los sospechosos de siempre, y Drauger OS. La idea en mi cabeza arrancó de Steam OS, pero tengo entendido que sólo la vienen desarrollando para Steam Deck éstos días. De todas formas quería jugar algo más […]
SeaMonkey como alternativa a Chromium
Hoy necesité hacer un trámite en línea para un servicio gubernamental. Mi navegador por defecto es Mozilla Firefox Nightly (que ya vengo considerando seriamente pasarme al canal estable). Tengo instaladas un montón de extensiones que en una Internet ideal no serían necesarias: bloqueadores de anuncios, de cookies, de trackers, uBlock, AdBlock, Privacy Badger, Ghostery, GhostBusters, The Real Ghostbusters, Let's Go Ghostbusters, AdBlocker, etc. Además, Firefox tiene configuradas varias de las opciones de protección contra el rastreo. Porque la privacidad es un derecho humano... En fin, desde hace un tiempo la web está tan hecha mierda que muchas veces si no […]
Después de varios años, arreglé un problema en mi instalación de KDE neon
Mi laptop Dell Precision 3530 ya tiene unos añitos arriba. Desde hace un buen tiempo vengo usando KDE neon en esta computadora. Es una distribución basada en Debian/Ubuntu que incluye el software más reciente de la comunidad KDE, prácticamente ni bien se publica. El manejo de paquetes y configuraciones me es familiar por mi experiencia con Debian y Ubuntu. Así que es como una continuación de lo que venía usando, pero aprovechando lo último del entorno de escritorio Plasma y todo lo que ofrece el framework KDE. Buscando en mis correos de la época, veo que la laptop vino con […]
Simular botón del medio en mouse 8bitdo N30 en Linux
Desde hace un tiempo soy el feliz poseedor de un mouse N30 de 8BitDo, o "el mouse NES" como le digo yo. El mouse es un homenaje al Nintendo Entertainment System, y usa el mismo tipo de botones y paleta de colores. Sinceramente es más "lindo" que "cómodo", pero al final del día es un mouse, y no uso tanto el ratón a la hora de programar (para cosas como juegos o diseño, más vale usar otro más ergonómico). Cuenta con los dos botones tradicionales y la superficie entre medio sirve para hacer scroll, a pesar de no tener ninguna […]
10 años de emacs.sexy
Esta semana se cumplen 10 años desde que registré el dominio y publiqué el sitio web emacs.sexy. Se ve que 2014 fue un año bastante ocupado en cuanto a proyectos personales... En su momento escribí en el blog al respecto en Emacs es Sexy. Como comentaba originalmente, el sitio surgió como respuesta a vim.sexy, pero con un objetivo un poco más productivo: Con la disponibilidad de los nuevos TLD .sexy, hace poco salió en La Internet el sitio vim.sexy. Tiene pinta de ser una respuesta paródica al editor de texto hipster del momento Atom. Pero mi problema era: Si bien […]
Error: EDID block 0 (tag 0x00) checksum is invalid, remainder is N
Hace poco compré una Raspberry Pi 4. Estoy muy contento con ella, a pesar de que al poco tiempo saliera la versión 5 con hardware mucho mejor 😅 La tengo en su case muy prolija, con el sistema instalado en un disco duro SSD, conectada a mi televisor. Uno de sus usos es para mirar servicios de streaming, películas y series. Hace poco me empezó a pasar que dejaba de transmitir la imagen al televisor. Recomiendo de primera habilitar la conexión SSH en Raspbian (o el sistema que tengan instalado), para poder investigar cualquier problema desde otra computadora como es […]
Wing it! Nueva película animada de Blender Studio
Wing It! es el 15° proyecto de la iniciativa Open Movies de Blender, estrenada el pasado 12 de setiembre de 2023. La meta de estos proyectos es mejorar las posibilidades de Blender, el software libre de gráficos 3D, producción de video y más. Blender Studio es su plataforma de publicación de todo lo producido por el equipo en cuanto a películas y capacitación. Usan Blender rigurosamente y trabajan en conjunto con el equipo de desarrolladores de Blender, ayudando a planear, diseñar y testear características nuevas del software. En este proyecto se concentraron específicamente en desafiar los límites de producción de […]
Controlar la computadora con un Gamepad o Joystick en Linux
Para controlar la computadora con un Gamepad funcionando como el mouse, me alcanzó con instalar el paquete xserver-xorg-input-joystick. En mi caso usando KDE Neon (construido sobre Ubuntu): sudo apt-get install xserver-xorg-input-joystick Desde hace unos cuantos años uso un control de XBox 360 para jugar juegos en la computadora. Este fin de semana lo tenía conectado para tomarme un pequeño recreo de Zelda (Tears of the Kingdom) en el Nintendo Switch. Venía jugando algún título en Steam y MAME. Se me ocurrió que seguramente había una forma de usarlo para interactuar con la computadora. Me vino a la cabeza el recuerdo […]
Charge - Corto animado ciencia ficción hecho en Blender
Blender Studio, la parte creativa de Blender, presentó Charge, su nuevo corto animación. Se trata de un proyecto (antes conocido como "Project Heist") con alto impacto visual, lleno de acción, inspirado en cinemáticas de videojuegos y formatos de demo en tiempo real. Es la decimocuarta Película Abierta de Blender Studio. Podemos encontrar los archivos fuente y más extras en el sitio web Blender Studio. El proyecto se presentó públicamente hoy a través de una transmisión en vivo con el equipo desde la sede de Blender HQ. La transmisión tuvo partes bastante interesantes, incluyendo detalles de desarrollo, animación y demás. Hay […]
Donando a proyectos de software libre: Thunderbird
Hoy doné a Thunderbird, mi cliente de correo favorito. El desarrollo de Thunderbird es financiado por menos del 1% de los usuarios que lo usan. Hace unos años, Thunderbrid estuvo a punto de desaparecer, pero las donaciones de usuarios lo salvaron. Este año se ha movido bastante la cosa por el mundillo de Thunderbird. Por suerte la situación financiera les permitió contratar gente y sacar adelante varios nuevos desarrollos. Se empezó a trabajar en una versión Android de Thunderbird. Para ello, unieron esfuerzos con la aplicación móvil de código abierto que vengo usando en mi teléfono Android: K9. Por años […]
Piques Emacs: Usar Tramp para abrir un archivo con su/sudo
Cada tanto me olvido de la sintaxis exacta de este comando, así que lo publico acá. Emacs incluye TRAMP (Transparent Remote Access, Multiple Protocols), un paquete para editar archivos remotos. TRAMP nos permite también abrir archivos en nuestra computadora usando su o sudo. La sintaxis: C-x C-f /sudo:: Al ejecutar esto, Tramp nos presenta un diálogo en el mini-buffer para ingresar password: Y de ahí podemos empezar a navegar nuestro sistema y abrir cualquier archivo bajo sudo (o su). Tramp permite conectarnos a otros protocolos como ssh o ftp. Más información sobre TRAMP.
Mini pique - Emacs: ver la diferencia entre el buffer abierto y el archivo correspondiente
A veces al editar un archivo en Emacs, éste cambia en el disco (por ejemplo porque hicimos git pull o cambiamos de rama de desarrollo). Emacs nos avisa y nos pregunta si queremos editarlo a pesar de los cambios. Una forma de ver los cambios entre el buffer que estamos editando y el archivo en sí, es ejecutar: M-x diff-buffer-with-file El comando diff-buffer-with-file compara un buffer especificado con su archivo correspondiente. Es una función interactiva auto cargada de Lisp en diff.el. Requiere el programa diff instalado en nuestro path de ejecución.
Mini Pique: Ejecutar Emacs sin cargar los archivos de inicialización
Cuando Emacs inicia, intenta cargar un programa Lisp de un archivo de inicialización (o archivos init). Generalmente se usa ~/.emacs.d/init.el o el directorio ~/.emacs. A veces metiendo mano en este archivo podemos romper algo, y al iniciar Emacs nuevamente alguna cosa puede no funcionar como antes. En esos casos puede resultar conveniente ejecutar Emacs sin cargar nuestros archivos de inicialización. Para eso podemos usar el parámetro -q o --no-init-file: $ emacs -q Más información: Emacs Initial Options
Crux - una colección de extensiones ridículamente útiles para Emacs
CRUX, la colección de extensiones ridículamente útiles para Emacs empezó como una serie de blog posts en Emacs Redux, Emacs Redux es un blog dedicado a Emacs escrito por Bozhidar Batsov (también conocido por Rubocop y más proyectos open source). En él, publica trucos y recomendaciones sobre Emacs, lectura recomendada. Más adelante éstas funciones fueron incluidas en Emacs Prelude, distribución de Emacs de la que escribí en este post. y eventualmente extraídas a crux. Crux está disponible en los repositorios MELPA Stable y MELPA, se recomienda usar MELPA Stable que contiene la versión estable más nueva. La versión de MELPA […]
Comentarios recientes