Artículos de la categoría "emacs":
Tablas para cálculos en org-mode
No es la primera vez que en este blog hablo sobre las tablas y todas
las cosas que nos proporcionan a los usuarios de org-mode
. Algunos,
al haberme referido a ellas como hojas de cálculo, esperaban tener
la suerte de que se utilizaran de la misma manera y se han topado con
un pequeño muro de dificultades. Me han preguntado por cómo funcionan
y cómo las pueden utilizar y por qué las he llamado en alguna ocasión
hojas de cálculo en texto plano si no lo son. Este artículo trata
esos temas e intentará dar ejemplos suficientes para aquellos que
habiendo manejado hojas de cálculo, quieran probar la potencia de las
tablas de org-mode
.
Publicar html con org-mode
En el artículo de hoy hablo de cómo exportar de org-mode
a html
para utilizarlo en un proyecto con varios ficheros org
interconectados entre sí. Al exportar, las referencias org
se
convierten en sus correspondientes enlaces html
guardando la misma
estructura de directorios que tengan los ficheros org
. Es la forma
en la que org-mode
publica. Si quieres ahorrarte el suplicio de
leer el artículo y como lo cuento, busca el apartado publishing en
la documentación de org-mode
... pero si prefieres leer un resumen en
español y saber cómo lo hago yo: sigue leyendo.
Rust por encima, comparando con erlang
Durante el 2020 he dedicado tiempo a aprender erlang
. Ya he dicho
muchas veces que me gustan los lenguajes veteranos y supongo que
alguien que lea sólo el título estará pensando que voy a traicionar
esos gustos. Sin embargo, estos días encontré en algún sitio un enlace
a un artículo que comparaba las características de erlang
con las de
Rust
, lo que me lleva a evaluarlo como próxima adquisición. En este
artículo hablaré de lo que he ido cotilleando sobre este lenguaje y
por qué me ha interesado. También he leído que es un poco puñetero y
que lanza errores constantemente que no te permiten compilar y tienes
que retocar el código, pero entiendo que eso forma parte de la
seguridad que maneja a la hora de crear los ejecutables, por tanto
¿eso es bueno o es malo?
Propósitos y despropósitos
Ya hice una declaración de intenciones para el año nuevo, y no utilizo el término propósitos en ese sentido en este artículo. Aunque este sea el primero del 2021, no va de eso. Hoy mi intención es hablar de otros temas, más relacionados con la ética, la informática y la toma de decisiones y también con las herramientas que utilizo. Quizá aclare algo o quizá lo enrede más, nunca es fácil expresar con palabras no sólo los pensamientos, ─lógicos o no─, sino también los sentimientos que llevan aparejados. Parece que cuando elegimos algo, aunque sea una herramienta informática, es como si eligieras bando en el Parlamento Español. Es este artículo intento explicar estas cosas con mi habitual torpeza.
(ver más...)lisp, slime y emacs
Este es otro artículo que intenta responder preguntas que me hace la gente. Concretamente hay alguien que me ha preguntado cómo tengo configurado mi entorno de trabajo para trabajar con lisp. Dicho así en genérico sin especificar ninguno de sus sabores. Por las dudas que me planteado, tampoco tiene muy claro si tirar por lisp o seguir por scheme, y para eso yo no tengo respuesta, porque depende de los gustos de cada quien. Él ya ha estado mirando algo de scheme, aunque se declara novato, pero le interesa también saber algo más sobre lisp para comparar y decidir. Intentaré contestar lo mejor que pueda.
(ver más...)Krei epub arĥivon
Mi hodiaŭ parolos pri la transformadon de dosiero pdf
al dosiero
epub
por pli bone legi esperante. Mi montros ilon, kiun mi faris,
kaj klarigos kiel ĝi funkcias por faciligi, ke iu ajn povos adapti ĝin
por si mem. Ni uzos Emacs kaj elisp por kontroli tiun OCR
procezon, kiun ni bezonas por tiuj dosieroj, kiuj enhavas bildajn
skanadojn de teksto. La celo estas konverti nian pdf
dosieron farita
de skanitaj bildoj al epub
dosieron por pli bone legi en nia
inklibro aŭ tabuleto. Mi laboras per Linukso sed la rezulto estas
sendependa de la operaciumo kiun ni uzas. Mi iomete parolos pri kiuj
programoj mi uzas por tiuj laboroj.
Organización del espacio de trabajo en Emacs
Hoy vengo a hablar de cómo organizar un poco el espacio de trabajo de
Emacs. Escribiré sobre las famosas tabs que se han incorporado en
las últimas versiones y sobre otras herramientas más viejunas pero
también válidas, que teníamos antes y que sigo utilizando, como
perspective
. Así pues, si no te organizas tus ventanas de aquí en
adelante, será porque no quieres.
Material difuso y corrección gamma
Pues aquí estoy de nuevo con otra entrega del raytracer y todo lo
que voy haciendo. Hoy voy a comenzar explicando cómo tengo configurado
Emacs para trabajar con erlang
, porque me lo habéis pedido y luego
continuaré con las propuestas del libro... el de escribir un
raytracer en un fin de semana. Concretamente hablaré sobre el primer
material (el difuso) que propone y la corrección gamma del color.
org-roam en modo servidor
Ya hablé en otro artículo sobre org-roam y hoy os lo traigo de nuevo.
Desde aquél artículo inicial han pasado algunos meses y el continuo
desarrollo que están poniendo en org-roam
hace que haya evolucionado
bastante, además de subsanar algunos problemas con los que me tropecé
cuando empecé a utilizarlo hace algunos meses.
Cambiando el blog a org-static-blog
Pues estoy de cambios en el blog y ya tengo algo visible que subir a la red para que se pueda ver. Me resistía al cambio, pues los sistemas son distintos y me arriesgaba a dejar por el camino muchos enlaces rotos, no sólo externos de otros blogs o redes sociales, sino también internos.
(ver más...)La calculadora de Emacs
A los que usan Emacs no les extraña que entre las muchas cosas que trae nuestro editor favorito, aparezca una calculadora: Calc. Sin embargo, y yo entre ellos, no es fácil encontrar a alguien que la utilice de forma asidua y se entretenga en explicar un poco cómo funciona. Sólo un poco, porque en un artículo como este es imposible abarcarlo todo. Al principio me tenía que forzar a usarla, me costó acostumbrarme a sus idiosincrasias, a la notación polaca inversa y a sus modos de funcionamiento. Ahora me parece una de esas herramientas imprescindibles para el día a día... bueno, imprescindibles es una palabra muy amplia, antes me apañaba sin Calc con una calculadora de escritorio como la de KDE (Kcalc), con una interfaz gráfica a la que estamos más acostumbrados, con pulsar los botones con el ratón, etc. Quiero decir que, puesto que tengo una sesión de Emacs abierta casi el 100% del tiempo, me cuesta muy poco acceder a ella. Aunque no funciona exactamente como esas otras calculadoras: Calc tiene una interface de texto y tienes que aprenderte palabros raros como Notación Polaca Inversa o Pila (para los amantes del guiri: Stack).
(ver más...)Problemas con Emacs 27 en OpenSuse Tumbleweed
Llevo unos días, desde que apareció la versión 27.1 de Emacs en el repositorio de OpenSuse Tumbleweed ─la distribución de GNU/Linux que utilizo─, con un problema persistente durante la ejecución de mi editor favorito: Emacs.
(ver más...)Las conchas de tu madre
Pues hoy vengo a hablar de conchas ─o shells, en inglés─ dentro del entorno de Emacs. No pude resistirme a la tentación de escribir el título así, ya me perdonará quien entienda otra cosa o piense que va leer algún tipo de artículo soez o socarrón, quizá campechano, sobre temas reproductivos humanos. Pero lamentablemente la cosa va de herramientas que vienen con nuestro editor favorito.
(ver más...)Tomar notas con org-roam
Si no conocéis org-roam
no os preocupéis, vamos a verlo en este
artículo. Hace poco que lo descubrí, gracias a Patricio (¿Maxxcan?,
soy muy malo para los nombres y si me los cambiáis más ;-). En todo
caso, por alguna desconocida razón que no llego a comprender, es uno
de los lectores de mi blog y participa en el grupo de Telegram que
creé para hacer comentarios. Creo que fue el día 9 (julio de 2020),
cuando por la tarde, así como sin querer la cosa, habló del paquete de
Emacs org-roam
. Enlazó el paquete y tuvimos una conversación en el
grupo sobre tomar notas y los distintos métodos de hacerlo.
Control de tiempos con org-mode
Estos días en que el teletrabajo ha tenido un impulso importante empezamos a necesitar controlar un poco más el tiempo de trabajo, el que dedicamos a nuestras tareas laborales que se nos está mezclando con el propio personal.
(ver más...)Programación y flujo de trabajo en Emacs
Llevo un tiempo ocupado en proyectos personales y apenas saco tiempo para escribir. He hablado ya sobre el proyecto de MUD que empecé aquellos aburridos días de confinamiento y que continúo con él. Como ya expliqué, lo comencé con otra persona sólo por el ánimo de aprender un poco de erlang y ahora lo estoy continuando yo solo. De hecho, me decidí a hablar sobre el proyecto porque cuando hablo de uno que tenga entre manos se convierte en vaporware casi automáticamente, dos o tres entradas de blog después. Sin embargo, el presente proyecto, de nombre provisional erlmud, continúa con buena salud y casi se ha convertido en una obsesión. Hay cien mil detalles que atar y mejorar, cada vez más comandos que soportar y parece no tener fin.
(ver más...)Formularios y datos con forms-mode de Emacs
A veces echaba de menos la forma sencilla y eficiente que tenía el
dbase
para proporcionar formularios que facilitaban la edición de
datos. Apenas cuatro comandos que disponían en la pantalla de texto
los campos de los registros y uno podía ponerse a introducir,
modificar y borrar datos de una base de datos.
Sobre Info y la ayuda de Emacs
Hace unos días me llevé un susto con la ayuda de Emacs. Al abrirla
me encontré que apenas había contenido, todo había desaparecido,
incluidos el manual del editor, el manual de elisp
, el de org
. Un
susto bastante grande, ya que utilizo la ayuda de forma habitual. Ya
he dicho por aquí que suelo olvidar de una vez para otra cómo utilizar
los comandos y las herramientas si no los uso todos los días. Tengo
que refrescar mi memoria y es bastante habitual que consulte la ayuda,
que entre otras cosas, para eso está.
Reaprendiendo a programar
Estos días ando un poco perdido y apenas tengo tiempo para escribir en el blog. Como me consta que hay quien lo sigue y lee casi cualquier cosa que escribo ─no entiendo muy bien las razones, pero alguna tendrán─, he decidido contar un poco qué ando haciendo estos días para estar tan ocupado... estos días de aislamiento y cuarentena, cuando se supone que tenemos tiempo hasta para hacer pan o repostería.
(ver más...)Utilizando ediff
Otra de las herramientas que viene de regalo con una instalación
básica de Emacs es ediff
. Supongo que a la mayoría de los que
puedan leer este artículo les suena el comando diff
y conocen varias
herramientas que lo manejan de forma más o menos gráfica.
Utilizando emacs para programar en erlang
Llevo unos días aprendiendo Erlang, leyendo libros y tutoriales, mirando y copiando código y haciendo alguna pequeña aplicación de ejemplo para aprender.
(ver más...)Edición de archivos remotos con Emacs
El paquete TRAMP
1 viene instalado por defecto en Emacs, no
hay que instalar nada y es el paquete que nos permite editar ficheros
que no se encuentran en nuestra máquina.
Escribir un correo electrónico
Sí, desde Emacs también se pueden escribir ─y enviar─ correos electrónicos. Y esto te puede venir bien en cualquier momento como me ha sucedido a mí estos días que he estado fuera de casa. Lo que sucedió es que estaba en un lugar donde las conexiones no eran muy buenas... y torpe de mí, me dio por actualizar el ordenador creyendo que contaba con 4G. Sin embargo, algo debió ir mal en la actualización, o quizá tampoco fuera culpa de la conexión, el caso es que el programa que suelo utilizar para el correo electrónico, Thunderbird, dejó de funcionar.
(ver más...)Listas de tareas
Una de las primeras cosas que me sorprendieron cuando conocí
org-mode
fue la facilidad de hacer listas de tareas, además de lo
completas que son. Pero para ver su potencia desde cero, vamos a ir
por partes.
Agenda, fechas y configuración de teclas
Cuando trabajamos con textos largos es conveniente tener configuradas algunas cosas que nos facilitarán la vida. En general, los modos de texto y los modos de programación difieren en cómo muestran las líneas en el editor. Normalmente, en un modo de programación suele ser adecuado el mostrar una instrucción por línea; aunque ésta sea larga y supere por la derecha cualquier margen, al programador suele darle igual, pues no suele imprimir en papel el código: donde este hecho sería un inconveniente.
(ver más...)Trabajo con ventanas y buffers
Hemos tenido ya dos entregas anteriores de este «minicurso» o tutorial de cómo empezar a utilizar Emacs. De momento hemos visto cómo podemos abrir, modificar y guardar ficheros. También cómo movernos por una ventana con el cursor.
(ver más...)Primeros pasos con el editor
El otro día vimos unos pocos conceptos para tener clara la terminología y aclararnos a la hora de trabajar. No te preocupes si no has entendido algo de lo que hablé allí, porque con el uso lo entenderás rápidamente.
(ver más...)Pasando de bbdb a org-contacts
Llevo años utilizando bbdb
como gestor de contactos y acumulo en esa
base de datos cientos de registros con las direcciones y teléfonos de
la gente con la que me cruzo en esta vida. Había una excepción y era
que los datos de mis clientes iban a otro lugar gestionándose para
interactuar con ellos desde org-mode
y tener juntos los datos
personales y las historias clínicas con las visitas, pruebas,
avances en el tratamiento y anotaciones necesarias para gestionar
correctamente mi trabajo.
Niveles de configuración en Emacs
Una de las primeras cosas que se ve cuando uno se acerca a emacs es
la pantalla de about-emacs
y poco más. De primera vista lo único que
destaca es el aspecto antiguo, algunos dirán: rancio, del diseño. A
quien diga lo de rancio, no le falta razón. Emacs es un editor con
mucho recorrido a la espalda y su diseño proviene de tiempos en los
que la interface más habitual era la consola de texto y no estaban
inventadas las teclas de cortar, copiar y pegar, ni tenían esos
nombres, cuando este editor ya contemplaba esas acciones.
El infierno del identado
Estos días he estado trabajando en un tema en Python. En otros lenguajes, el indentado del código es más una cuestión estética que funcional, pero ya sabéis que ese lenguaje utiliza, precisamente el indentado, para establecer los bloques de código. Es una forma elegante de obligar al programador a escribir código legible, quiera o no, pero viendo lo que suele ocurrir con ello, se convierte en el origen de muchas frustraciones. ¿Por qué? Pues básicamente porque a cada programador le gusta una forma de hacerlo y eso implica, también, que los editores de texto lo hagan por defecto a la manera que le guste a quien lo programó, que puede coincidir o no con el gusto del usuario, y/o con el gusto del programador del lenguaje, y/o con el de los que hicieran el estándar del mismo. Esto, básicamente, es lo que yo llamo el infierno del indentado.
(ver más...)Plegando el código
Cuando programo me gusta ver todo el código. A veces en ficheros
largos los desplazamientos pueden ser largos, pero me apaño bien
poniendo marcas donde saltar o utilizando M-g g
(goto-line
) para
saltar a la línea deseada, o M-g c
(goto-char
) para ir a un
carácter determinado --pero esto es más complicado de saber a
priori--. Se puede uno mover de forma directa a otros sitios (al
siguiente error, al error previo o a una posición determinada de la
línea actual. Pero como ya digo, lo que más utilizo es la función
goto-line
.
Una plantilla para exportar documentos desde Emacs
Hace un tiempo, a raíz de presentar unos documentos, me preguntaron cómo me las apaño para que queden tan bien hechos. El secreto se llama LaTeX, como muchos sabéis, pero ayer mismo un amigo me preguntó por detalles más técnicos y la respuesta en ese momento se me quedó realmente corta. Aquí traigo una explicación más detallada de las cosas que tengo ya pre-paradas a la espera de la generación de documentos.
(ver más...)Prueba de concepto para crear un asistente de voz
Llevo un tiempo dándole vueltas al tema de los asistentes de voz. Veo a algunos dándole órdenes a sus ordenadores de bolsillo muy contentos con la reacción de sus chismáticos. No voy a entrar en si son conscientes de lo barato que venden su alma, sino en si merece la pena uno de esos asistentes.
(ver más...)Estudiando org-page
Son varios los que me han preguntado por el hecho de que utilizo
org-page
para escribir este blog y el chismático se ha quedado
sin soporte. Es decir, que el autor no va a hacerle más casito al tema
y no habrá mantenimiento ni corrección de bugs, ni nada. ¿Eso
asusta? A mí no (es la respuesta fácil). Pero no porque sea yo
especialmente valiente o porque crea que soy mejor que otros que
corren a refugiarse en otras alternativas ante el caos y el abandono.
Simplemente el chismático funciona y si funciona ¿para qué
cambiarlo? Ahora bien, ¿esto implica que te recomiendo la herramienta?
Pues dicho así: no, pero un no con matices.
Convertir un pdf en imágenes a texto en org-mode
Llega el verano y estoy preparando mi lector de libros electrónicos y
mi tablet para la lectura estival. Normalmente leo mucho, pero en
verano aún más. Tengo toda una lista de libros para cargar en los
dispositivos, la mayoría en formato epub
, otros en pdf
. Aquí es
donde empiezan los problemas con los formatos: pdf
es un formato que
se inventó para imprimir en papel; si tienes una pantalla del tamaño
mínimo de una hoja de papel lo verás bien; si no, leer un libro en
pdf
se convertirá en un suplicio. De hecho, en la tablet según qué
ficheros los puedo leer más o menos decentemente, pero otros no. El
contenido del archivo no se ajusta a la pantalla y se hace incómodo
leer, pasar página, etc. En el libro electrónico, ese cacharrito con
pantalla de «tinta electrónica» del tamaño de un móvil grande o de una
tablet pequeña, los pdf
se convierten en una tortura.
Gestionar bibliografía con Emacs
Llevo tiempo utilizando documentos en formato texto para todo. La
documentación, como ya he contado muchas veces en este blog, la
escribo utilizando LaTeX y como sabéis, la bibliografía de esos
documentos se guarda normalmente en ficheros .bib
. Hasta ahora
utilizaba la herramienta JabRef para gestionar esas bases de datos
y todo funcionaba perfectamente: es una gran aplicación. Pero de un
tiempo a esta parte, las versiones que van sacando de JabRef me han
dejado de funcionar. No tengo muy claro por qué, lo estoy achacando a
la versión de OpenJDK, --y todo su entorno--, que instala
Tumbleweed.
Presentaciones con org-beamer-mode
Ya hablé de cómo me apaño para tener todo en modo texto y uno de los apartados sobre el que pasé muy por encima fue el de hacer presentaciones en modo texto. Aprovechando que el día 12 tengo una charla para la Asociación con quien colaboro, me he decidido a escribir un poco y mostrar la presentación que he preparado para la ocasión.
(ver más...)Una hoja de cálculo con sus celdas en mi Emacs
He aprovechado la Semana Santa para desconectar en el pueblo, con su olor a campo y a leña quemada en el hogar. La intención era haberme movido algo más, salir a pasear al campo o a la anual recolecta de espárragos o cardillos. Sin embargo, la climatología tenía otros planes y me ha tenido en casa encerrado. Ya le hacía falta al campo un poco de agua, pero a mí no hacía falta regarme, no voy a crecer estando ya agostado... En fin, a lo que iba. Que como he tenido tiempo estuve cotilleando un modo de Emacs que me había comentado alguien a raíz de mi artículo sobre el uso del texto plano y que hasta ahora no había probado.
(ver más...)Cómo trabajar con SQLite3 desde Emacs
En mi último artículo hablé de cómo trabajo en formato texto con Emacs y son varios los que me han preguntado por el apartado de base de datos. ¿Cómo me las apaño para tener las bases de datos de SQLite en modo texto?
(ver más...)Ventajas del texto plano
Desde hace un buen tiempo me he ido pasando a tenerlo todo en fichero
de texto plano y utilizar toda una serie de programas para la gestión
de todo. La estrella de todo este sistema es sin duda Emacs, por su
org-mode
y por tener modos para casi todo. Y es que plantearse
utilizar algo en formato de texto pasa por poder editar el texto, y en
ese sentido Emacs tiene «pichorros» y «chismáticos» para todo.
Utilizando Dired para reemplazar cadenas en varios ficheros
Hasta ahora, le había echado pocas cuentas a dired
. Es un paquete de
emacs que se utiliza para trabajar con los ficheros del disco. Sin
embargo, estoy acostumbrado a hacerlo casi todo desde la línea de
comandos. Si necesito algo más visual en modo gráfico utilizo el
Dolphin de KDE-plasma y en modo texto utilizo el incombustible
mc.
Creación de un modo mayor para Emacs
Hacía que no me ponía a escribir en el blog, y no es por falta de ganas o por abandono, sino que he estado a otras cosas, que han acabado relacionándose también con el tema de la serie.
(ver más...)Reorganizar las capturas de la agenda con plantillas
Llevo tiempo oyendo hablar de GTD1 como una forma de organizarse las tareas y flujo de trabajo que consigue aumentar la productividad y reducir el estrés. Sin embargo, no ha sido hasta hace unas semanas que me he propuesto empezar a aplicarlo a mi caso. Mi vida se ha ido complicando ─complicándomela yo sólo, se entiende─ y necesito un mejor control de las cosas que debo hacer. Entiendo que GTD me servirá para eso ─y algunos ya me han dicho que o me sirve o no habrá nada que me sirva─. Llevo muy poco estudiado sobre el tema de cómo funciona el sistema, pero lo poco que llevo hace énfasis en la captura de tareas.
(ver más...)Variables de modo, keymaps y menús
Estamos acostumbrados a ajustar los paquetes que instalamos para que
se comporten de una u otra forma y eso es lo que vamos a hacer ahora
con nuestro modo de ejemplo datos-mode
. El código de ejemplo
utilizará dos variables para ello.
Creando un modo menor, sencillo y sin muchas pretensiones
Para seguir con el cursillo de elisp voy a crear un nuevo modo.
Va a ser un minor mode
, es decir, un modo que se puede activar como
secundario a otros modos generales. Lo primero que necesito es un
fichero que guarde el código en él y que se cargue desde la
configuración de Emacs.
Proyecto de ejemplo para seguir avanzando con elisp
Estoy en un punto muerto y no me decido en cómo continuar hablando sobre elisp. Creo que lo mejor sería hacer un pequeño ejemplo que implique un poco de programación y que sirva para repasar todo lo que hemos ido viendo hasta ahora.
(ver más...)Interacción con el usuario y widgets
Ya vimos cómo se podían hacer funciones que nos sirvieran de comandos y que se pudieran hacer de modo interactivo. Pero si la interacción se limita a llamar a una función, es posible que nos quedemos cortos, porque lo que necesitan los programas para funcionar son datos y la mayor fuente de datos es el propio usuario.
(ver más...)Comandos, módulos, marca, punto y otras zarandajas
Hasta ahora hemos venido trabajando directamente en el buffer
*scratch*
y todo ha ido funcionando bien, aunque nuestras funciones
y llamadas eran más bien efímeras. En este artículo vamos a guardar
el código, por primera vez, en un módulo, librería, fichero, o como lo
queráis llamar.
Funciones recursivas
En la entrega anterior hable sobre iteración, hoy hablaré sobre un mecanismo iterativo que se llama recursión. La recursión consiste en una función que se llama a sí misma para resolver la iteración. Normalmente la estructura recursiva implica que la función tenga una estructura similar a la siguiente:
(ver más...)Condicionales, bucles e iteración
Un programa es un proceso que ejecuta la máquina con la instrucción que toca en ese momento ─obviando el procesamiento paralelo que puede ejecutar varias cosas a la vez─. Si todo, el 100% del código, se ejecutara a la vez, el programa no funcionaría y seguramente la máquina no sobreviviría a tamaño calentón. Eso ocurre también con nuestro cerebro, que está activado sobre el 10% o 15% y hay quien piensa que sólo usamos eso de él. En realidad lo usamos todo, el 100%, pero sólo cuando toca. También existen personas que tienen episodios de una activación mayor y pueden llegar hasta el 40%. A esa activación extraordinaria la llamamos epilepsia y los síntomas son los propios de activaciones de conjuntos neuronales funcionando cuando no toca.
(ver más...)Tipos de datos
Cuando escribimos un programa es porque necesitamos tratar la información como nosotros necesitamos que sea tratada. Esa información es lo que llamamos datos.
(ver más...)Un poco más sobre funciones
Una de las bellezas de Lisp, o de Smalltalk, es que se basan en un concepto claro y lo llevan hasta sus últimas consecuencias. En Smalltalk todo el sistema se basa en objetos enviándose mensajes entre ellos. Así, por ejemplo, en Smalltalk la forma de ejecutar código de manera condicional no depende de una palabra clave del lenguaje, sino que es un mensaje que se manda a un objeto lógico. Otros lenguajes recurren en su sintaxis a expresiones definidas por el intérprete o el compilador con lo que se llaman palabras reservadas. No voy a darle muchas vueltas más al tema de las palabras reservadas.
(ver más...)Sobre listas y atoms
Hoy toca ver un poco más sobre la programación en elisp. Concretamente cómo funcionan las listas y los tipos de datos que pueden contener. Hablaré también un poco sobre algunas funciones básicas para procesar listas.
(ver más...)Elisp para no programadores
Uno de mis propósitos para año nuevo era escribir una introducción a elisp para no programadores como yo. El objetivo es aprender: tengo comprobado que aprendo más cuando explico las cosas que cuando me las explican. Además, la documentación que encuentro sobre el tema en español es escasa. Si alguien decide leer esta serie de posts le debo advertir primero de una serie de hechos que pueden resultarle extraños:
(ver más...)Personalizando Emacs a mi manera
Estoy escribiendo este artículo para comprobar cómo funcionan mis
ajustes personales de Emacs. Más adelante haré una captura de como
ha quedado todo, aunque supongo que esto de personalizarlo es un no
acabar nunca, siempre habrá un detalle que pulir o algo que cambiar.
Si algo distingue al auténtico friki es que no termina nunca de
cacharrear con sus juguetitos: hoy es el día de toquetear los
colorines de mi editor favorito. No sólo los colorines, también he
tocado algunas cosas más y he añadido algún paquete especial para
mejorar la «vista». Hay que recordar que los themes son ficheros de
código elisp
, es decir: para cambiar las características o el
comportamiento de las cosas, hay que ejecutar un programa. La mayor
parte de las veces se limitará a establecer el valor de algunas
variables para ajustar tipo de letra y/o color; pero hay que estar
atentos a lo que haga. De hecho, Emacs, cuando instalas un tema
externo pregunta si lo marca como seguro.
Nombres de días y meses en español en Emacs org-mode
Espero que esta entrada sea corta, es un tema sencillo que creo que ya
ha aparecido por algún sitio en este blog y que está perfectamente
documentada en multitud de sitios. Sin embargo, alguno de los
iniciandos en el mundo de Emacs y concretamente en el de
org-mode
, me hacen a veces una pregunta tal que: ¿Cómo haces para
que te aparezcan las fechas en español?.
Usando «magit»
Ya he hablado otras veces por aquí de git
y cómo, a estas alturas,
se ha convertido en una herramienta indispensable para mí. La verdad
es que ahora prácticamente no utilizo la línea de comandos para
usarlo. La mayor parte de las cosas que hago orbitan alrededor de
emacs y git
ha caído también en esa órbita.
Configuración de Jabber en Emacs
Este post va a ser muy corto. El tema es que estaba hablando ayer con Ángel de uGeek, un blog-podcast sobre tecnología. Estábamos hablando sobre Jabber o XMPP y los programas que lo soportan. Y apareció el comentario de «existe un paquete para emacs que soporta Jabber o XMPP. Y aquí he venido yo a cansinar otra vez con el emacs y esta vez va de comunicaciones y mensajería.
(ver más...)Correo electrónico con Emacs
Normalmente utilizo Mozilla Thunderbird como gestor de correo y como
mi agenda de contactos la gestiono con bbdb
, también desde emacs,
he tenido alguna vez la necesidad de enviar algún correo directamente
con emacs.
Prueba generando librojuego desde org-mode
Ayer estuve conversando sobre aventuras conversacionales y temas
similares y en un arrebato hice una especie de librojuego para la
web generando todo desde org-mode
. Desde que lo hice, he
modificado algunas cosas en los ficheros para dejarlos algo más
organizados y resultones, como quitar la numeración de los títulos y
cambiar el diseño de la página.
Ledger-cli y el ledger-mode de Emacs
Hace un tiempo ya hablé de ledger-cli
, una herramienta de gestión contable que funciona desde la línea de comandos y consiste
básicamente en guardar la información en texto plano en un fichero
ledger. Ledger se traduciría al «español contable» como libro
diario, diario o mayor. Por lo tanto, todo el trabajo consiste
básicamente en introducir los datos de forma ordenada con cualquier
editor y luego extraerlos con ledger-cli
de forma ordenada.
Ajuste del calendario y la visualización de documentos en emacs
Estos días me han preguntado cómo hacía para abrir los documentos que genero desde emacs y por qué a mí en el calendario me aparecen los meses y los días es español y a mi interlocutor no. Aunque son dos temas distintos los meto en el mismo artículo y añado otra respuesta que fue juzgada como menos urgente o importante, porque no dan una extensión que necesite el espacio de dos posts.
(ver más...)Sobre cómo utilizo org-page para hacer este blog
Este artículo va de cómo estoy utilizando org-page
para hacer éste
blog. Lo haré con pelos y señales, porque me lo ha pedido así Ángel,
del blog y podcast uGeek que se está planteando emplear el sistema
para sus proyectos. Sobre cómo ponerlo en marcha ya hablé en otra
ocasión y no voy a reincidir, aunque haré alguna puntualización.
Buscando cadenas de texto en emacs con grep
Cuando un proyecto se expande y comienza a crecer, como este blog, es
complicado encontrar dónde hablaste sobre algo. Los sistemas Unix, de
los que GNU/Linux es un heredero directo, proveen la herramienta
grep
que permite buscar texto dentro de un fichero, o de varios.
Usando emacsclient
Hace tiempo que vengo utilizando emacs para casi todo y eso hace que lo tenga abierto casi todo el rato. Algunas veces lo cierro, evidentemente. Pasados unos minutos tengo que hacer algo: repasar la agenda, actualizar la contabilidad, escribir un artículo en el blog... casi cualquier cosa, en mi actualidad, pasa por iniciar emacs.
(ver más...)Cifrado de archivos con emacs
En una conversación el otro día salió el tema de la seguridad en nuestros ficheros. Mi interlocutor se limitaba a poner una contraseña en un documento «güor» y se quejaba de que algunas veces se le olvidaba la clave y no podía abrir el archivo. Me contaba que había encontrado una herramienta que la averiguaba y que le venía fenomenal en esos casos: ya no había preocupación (¿?). Como psicólogo tengo la obligación de guardar confidencialidad de todos los datos de mis clientes. Horrorizado le pregunté por qué confiaba en un sistema que cualquiera podría descifrar teniendo la misma herramienta y no supo qué contestarme, salvo vaguedades sobre juaskers y que deberían hacer algo las autoridades con ellos. Le pregunté que si no había pensado si él «siendo un negado para la informática» ─como se definía a sí mismo─ era capaz de saltarse la protección con clave del «güor», es porque en definitiva no está protegiendo sus documentos. Y él contestó que, al fin y al cabo no es psicólogo clínico como yo, sólo profesor de primaria, como si los datos de los niños fueran menos importantes.
(ver más...)Un poco más sobre magit
Hace tiempo que vengo usando magit
como una de esas cosas que
proporciona Emacs para facilitarnos la vida. Aún hace más tiempo
que, también, vengo tropezando con git
y aunque lo uso para casi
todo, mi torpeza habitual evita que termine de entender exactamente
cómo funciona y cómo puedo aprovecharlo del todo. Por otro lado,
también he de confesar que desconozco muchos de sus comandos y
posibilidades. Sin embargo, con el uso normal que vengo haciendo
últimamente de git
he ido aprendiendo algunas pocas cosas. Con uso
normal me refiero a que últimamente lo estoy utilizando que para lo
que fue diseñado: para gestionar el código y sus versiones, con sus
ramas de desarrollo y demás chismáticos.
Tablas en org-mode: cómo tener una hoja de cálculo en modo texto
Una forma muy habitual de ordenar la información que nos llega es meterla en una tabla. Si cogemos datos al azar y podemos organizar una tabla con ellos nos facilitará el acceso a ellos en posteriores ocasiones. En esto se basan la mayoría de las aplicaciones que gestionan información, como las bases de datos --que se suelen ordenar en tablas--, o las hojas de cálculo --que realizan cálculos con información ordenada en filas y columnas: tablas--.
(ver más...)Explorando las posibilidades de Orgzly
Llevo tiempo viendo cómo podría sincronizar las notas y agenda de
org-mode
con el móvil. Hace un par de días encontré Orgzly.
Utilizando elfeed-mode de Emacs
Como más vale una imagen que mil palabras, pues ni mil palabras más:
(ver más...)Gráficos y org-mode (de nuevo)
Hace un tiempo que utilizo org-mode
para casi todo y también utilizo
ditaa, PlantUML y graphviz para realizar los gráficos que
necesito. Ditaa es un sistema que convierte un gráfico ASCII en un
fichero gráfico de diagramas.
Escribir con textos con un editor de código
Desde que descubrí LaTeX he venido abandonando los procesadores de texto. En general, los procesadores de texto son aplicaciones monolíticas que tienen muchas herramientas con el fin de trabajar con documentos, fundamentalmente de texto, pero no sólo de texto.
(ver más...)Esto es un desastre
Esto es un desastre. Mi blog se ha ido por el sumidero... bueno eso es una exageración, pero casi.
(ver más...)Creí haber terminado con el MiniMult
Hace unos días creí haber terminado el experimento con Emacs, la programación con Lisp (concretamente elisp), el MiniMult y todas esas cosas sobre las que hice una serie días atrás. Sin embargo, me surgió una pregunta que necesitaba contestar: ¿Todo ese trabajo servirá para android?
(ver más...)Gráfico de perfil en el MiniMult
El último paso de la corrección del test:
(ver más...)MiniMult corregido
He estado estos días trabajando un poco en el tema de corregir el MiniMult de forma automática con resultados irregulares. De momento me encuentro con ese regustillo a chapuza cuando no haces las cosas como piensas que se deberían hacer. Pero al final funciona, que era de momento el objetivo. Me voy a explicar por partes, comenzando por el final y luego dando saltos como es mi costumbre últimamente (es lo que tiene este cerebro que me ha tocado).
(ver más...)Escalas, plantillas y corrección
Para continuar con la serie del MiniMult, prueba que ya podemos pasar por pantalla, necesitamos primero hacer algunas reflexiones sobre cómo funciona la corrección manual.
(ver más...)Código para pasar prueba por pantalla
Bueno, para seguir con la serie sobre la corrección de pruebas
psicológicas por pantalla, ya tengo algunas cosillas hechas y lo muestro
por aquí. En las entradas anteriores solté un ladrillo sobre cómo iba a
hacer las cosas y bla, bla, bla. Todo mentira: realmente sabes cómo van
a ir las cosas cuando las haces, las pruebas, no funcionan, corriges y
las haces funcionar... En fin, de lo pensado a lo hecho hay algunos
cambios, así pues: voy a ver si me explico con claridad. El código
(casi) completo de lo que hay hecho hasta ahora en el proyecto está
guardado en un fichero minimult.el
y lo pondré al final de esta
entrada.
Pasar el MiniMult por pantalla
Cuando pensé los pasos que debería dar para corregir el MiniMult en esta entrada Especificaba que la primera parte sería la elección de ítem para la prueba. Algo que intenté explicar en la siguiente pero que creo que no me quedó suficientemente bien explicada. Como ya está publicada no sé si volver a ella y retocarla porque releyéndola me parece farragosa y confusa. Pero el caso es que allí podemos ver qué preguntas vamos a utilizar y cuáles son sus valores de plantilla (que aún no utilizamos). Con eso cumplimos el paso uno.
(ver más...)MiniMult 2
Unas pocas disquisiciones más que nos quedan antes de ponernos con el código. Quizá quede un post muy largo porque voy a poner todos los datos de los 71 ítem.
(ver más...)MiniMult
Estos últimos posts que he ido haciendo casi por completo han versado sobre Emacs. Éste sólo lo hará de manera tangencial. En realidad, el título avanza que va sobre un test: El MiniMult.
(ver más...)Utilizando org-mode para otras cosas
Una cosa que llevo tiempo buscando y/o pensando en que al final tendré que hacerlo yo es algo que me permita llevar una serie de registros a modo de historia clínica, de los casos que trabajo.
(ver más...)