triptico.com

Angel Ortega's Site
Ángel Ortega is a programmer, writer, composer and illustrator based in El Casar (Guadalajara, Spain). Author of the award-winning Minimum Profit text editor for programmers, main musician of the Ann Hell band and many other things.

News

«Terra Incognita», a la venta como libro electrónico en Amazon.com

Además del libro en papel, Amazon también vende mi mininovela Terra Incognita (1997) como libro electrónico para el Kindle:

http://www.amazon.com/dp/B0041D8X5G

ó

http://www.amazon.co.uk/dp/B0041D8X5G

Minimum Profit 5.1.4 released

I've just released version 5.1.4 of the Minimum Profit Text Editor. It features the following:

  • If a block is selected, any keystroke substitutes it.
  • Support for Alt + keys (ASCII and movement) has been added, and mostly left unbound to be used by the user for his own keybindings.
  • A new tab mode, which uses the previous line as a template for tab columns.
  • Fixed action open_under_cursor.
  • The mp.paste() function returns the clipboard content as a string if called without arguments.
  • New Grutatxt syntax highlighter.
  • Fix F10 in Win32.
  • Fix a bug when calculating the drawing position in the selected block, that were leading to crashes.

Full source code and MS Windows binaries are available as always.

Antichthon Universalis, available for purchase

Finally I became the editor of Antichthon Universalis and made it available to the world. I wrote a foreword and included all data we have about it.

The book can be bought from my shop at Lulu.com. We (Pavel Kolsinski and me) preferred to publish it at a low cost to pay the expenses we had on the investigation of the text.

We still welcome any additional information you could have on the subject, please follow the Antichthon Universalis main page for details on how we can be contacted.

Space Plumber 1.1.0-rc3 released

I've released a new version of the vintage game Space Plumber. In itself it just includes a new command line argument to execute in a 3x window size, but the main purpose of this release is that it includes last version of the QDGDF support library, which main new feature is that it includes a new windowed mode for Windows. A new Windows binary has been released as well.

QDGDF 0.9.2 released

Version 0.9.2 of QDGDF (the Quick and Dirty Game Development Framework) has been released. It features the following:

  • A new windowed mode for Win32.
  • A new library libqdgdf.a is created (historical libqdgdfv.a and libqdgdfa.a are also still created).
  • KTL fonts are now automatically converted to proportional width if the new _qdgdfv_convert_ktl_to_proportional variable is set.
  • New variable _qdgdfv_full_screen, settable before startup to suggest the desired behaviour (full screen or windowed). Also filled after startup.
  • New array _qdgdfv_extended_palette, filled with RGB values for each palette entry.
  • New functions qdgdfv_path_find() and qdgdfa_path_find(), to return the full path to a file search in the configured paths.
  • A new (very basic) information program (qdgdf_i) is included.
  • New functions qdgdfv_scale2x_p() and qdgdfv_scale3x_p(), implementing the scale2x and scale3x algorithms.
  • Shadows in fonts are painted in black color, not just color 0.

Youtube videos of Space Plumber's last level

Someone called StormSpirit86, armed with infinite patience, has finished last level of Space Plumber and recorded it on video. This proves that, unlike what many people thought in 1998, this level can be solved.

Space Plumber (1998) Last level (1st part)

Space Plumber (1998) Last level + Ending (2d Part)

Gruta version 2.3.0 released

Version 2.3.0 of Gruta (the Web Content Management System), codenamed "Lucca", has been released. The following changes were made:

  • Stories can now include comments from visitors. Comments are disabled by default (it can be enabled by setting cfg_disable_comments in the config template to 0) and can also be enabled or disabled on a per story basis. Comments are never automatically published: they require approval one by one, unless it's posted by an identified user that also has section editor capabilities.
  • Support for the new 5.x version of Artemus has been added. This version is now the recommended one and upgrading of existing installations to it is encouraged, as new features are only implemented on 5.x (as, for example, the new "comments from visitors" feature).
  • If a story pseudo-url points to a non-existent story, it shows a link to create it (ala Wikis).
  • Date formatting is done using strftime(), so its full set of percent-prefixed commands is available.
  • A new field in stories allow a Table of Contents to be created for each story.
  • A new template status has been added to set the HTTP status.
  • A security bug that allowed to bypass a story's publication date by using the STORY_PRINTABLE template has been fixed.
  • Improved cookie parsing.
  • The gruta_mksite helper scripts has been renamed to gruta-mksite and it's also installed in /usr/local/bin.
  • Many new commands to the gruta command line tool.
  • All image pseudo-urls include the image's width and height in the img tag if the Image::Size Perl module is detected and installed.
  • A timeout watchdog now exists to avoid the CGI hanging for too much with a default of 20 seconds. It can be changed in the creation of the Gruta::CGI object by setting the query_timeout argument.

Artemus 5.0.0 released

This is a new Artemus milestone release. The Artemus language has been completely rewritten to be a LISP-like, compiled machine. No backward compatibility is provided (other than including the old 4.x module in the distribution). The new 5.x language is faster, more flexible, less cumbersome (for example, there's no need for escaping inner blocks that should execute only conditionally) and include support for translateable strings.

Ann Hell on the net (III)

All Ann Hell things on the net seems to be happening on Youtube these days.

Minimum Profit 5.1.3 released

A new version of the Minimum Profit text editor has been released, including the following features:

  • A new Qt4 driver (adapted from the KDE4 driver).
  • A new hexadecimal viewer.
  • New action 'open_dropped_files', to open files dropped from the underlying system GUI.
  • Improved file encoding autodetection by looking at the UTF BOM marks.
  • New configuration option keep_eol, to keep the original end of line sequence each document had.
  • Fixed some clipboard issues, as replacing the selected block when pasting and some crashes.
  • win32 executable has been renamed to mp-5.exe.
  • The status line format string can also include the %e token to show the encoding used by the document.
  • Fixed win32 input processing in non-latin environments.
  • Setting an empty encoding (to fall back to system defaults) always work.

Gruta version 2.2.1 released

Version 2.2.1 of the Gruta CMS, codenamed "Montecatini", has been released. The following changes were made:

  • Templates are now stored inside source backends instead of having a special directory of plain files. So, it's no longer necessary to prepend the writable directory to the template path in Gruta::Template::Artemus creation.
  • The TT template toolkit has been officially deprecated.
  • New global CGI variable set_date, to force a date to be assumed as today, to be used to take a look at how would a page be shown in the given date. Only usable by a logged-in admin user.
  • A new script gruta_mksite, to help in the creation of a new site.
  • A new command, set_story_date, has been added to bin/gruta.
  • The full set of mod_rewrite keywords to be used if static_urls is set has been expanded.

 RewriteRule ^/([0-9]+)\.html$		/?t=INDEX&offset=$1		[PT,L]
 RewriteRule ^/([0-9]+)-([0-9]+)\.html$	/?t=SEARCH_BY_DATE&from=$1&to=$2 [PT,L]
 RewriteRule ^/tag/(.+)\.html$		/?t=SEARCH_BY_TAG&tag=$1	[PT,L]
 RewriteRule ^/tag/$			/?t=TAGS			[PT,L]
 RewriteRule ^/top/$			/?t=TOP_TEN			[PT,L]
 RewriteRule ^/(.+)/$			/?t=TOPIC&topic=$1		[PT,L]
 RewriteRule ^/(.+)/index\.html$		/?t=TOPIC&topic=$1		[PT,L]
 RewriteRule ^/(.+)/([0-9]+)\.html$	/?t=TOPIC&topic=$1&offset=$2	[PT,L]
 RewriteRule ^/(.+)/(.+)\.html$		/?t=STORY&topic=$1&id=$2	[PT,L]
 RewriteRule ^/rss\.xml$			/?t=RSS				[PT,L]
 RewriteRule ^/sitemap\.xml$		/?t=SITEMAP			[PT,L]
 RewriteRule ^/style\.css$		/?t=CSS				[PT,L]

New Minimum Profit 5.1.3 preliminary release for testers

I'm in the process of releasing version 5.1.3, that will include significant changes to the way character encodings are autodetected. I would like to know if there are any regressions for locales and encodings I could overlooked.

The downloadable tarball is the following:

http://triptico.com/download/mp-5.1.3-dev.tar.gz

I plan to release a Windows binary version really soon, probably this evening. This is specially important as Windows has its own set of potential problems regarding character encodings.

I've also written a document describing the new behaviour regarding encodings (the document is also included in the tarball):

Minimum Profit character encoding support

If you find any issue, please mail me to angel@triptico.com or subscribe to the Minimum Profit mailing list by writing to mp-subscribe@lists.triptico.com and say it there.

Update: Here it's the MS Windows binary:

http://triptico.com/download/mp-5.1.3-dev.exe

«Terra Incognita», a la venta en Amazon.com

Mi libro Terra Incognita (1997) ya se vende en Amazon.com.

http://www.amazon.com/gp/product/B002ADC3ZU/sr=8-11/qid=1243405490/ref=olp_produ...

Minimum Profit 5.1.2 released

A new version of the Minimum Profit text editor has been released. It includes the following features:

  • The grep action can now be recursive.
  • New syntax color for special documentation blocks.
  • Fix searching into empty selected blocks (this was bug #1269).
  • New action section_list, that shows a list of sections in the current document to jump to. Sections are usually function definitions and special marks in programming languages.
  • New action seek_misspelled, to search the next misspelled word. It has been assigned to keycode f5.
  • New action ignore_last_misspell, to add the last misspelled word found by seek_misspelled to a whitelist so it won't be found again.
  • New action seek_repeated_word, to search for words starting or ending with the same number of letters up to a maximum distance. It's controlled by the new configuration directives mp.config.rw_num_chars and mp.config.rw_max_dist. It has been assigned to keycode f6 (this keycode was previously assigned to join_paragraph, which has no keybinding now).
  • The action open_templates_file has been fixed.
  • Several GTK interface updates by fellow developer Sebastian Vöcking.
  • New command line option -d, to change the working directory.
  • Several fixes to the win32 driver; word wrapping, combobox drop-down sizes, underlined text.
  • Avoid hanging if the external ispell program is broken.
  • The dump() function now dumps its argument as MPSL code.

Semana de monstruos

Igual que hice en enero y febrero con Las Tijeras del Viajero (1996), hoy queda inaugurada la semana monstruosa: desde hoy hasta el sábado publicaré diariamente un minirelato del libro Las Tijeras del Viajero. Monstruos (1997).

Basta con suscribirse al siguiente RSS:

http://triptico.com/?t=RSS;tag=las%20tijeras%20del%20viajero.%20monstruos

Gruta version 2.2.0 released

Version 2.2.0 of the Gruta CMS, codenamed "Osmannoro", has been released. This release needs Artemus version 4.1.2. The following changes were made:

  • Story rendering is cached, resulting in faster page loading.
  • An existing story can be copied to another topic from the story edition form.
  • The template stories_by_date has changed the order of their output values; now they are topic_id, id and date.
  • The RSS template now accepts an optional CGI argument tag, to get feeds on stories by tag.
  • Multiple sources are no longer supported; it never really worked well, made the code cumbersome and had no real advantage after all. The cgi caller needs not to be changed, as the sources argument is still supported (only the first one is used, though), but the scalar source is preferred now.
  • The file format in the FS source has changed; the .META extension has been changed to .M, and .TAGS to .T. Also, new files appear in the stories directory with the .A and .B extensions, holding the rendered abstract and story body, respectively. The transition is made automatically on the first run, no manual operation is needed.
  • New argument hard_top_ten_limit to Gruta::Source::FS, to set the maximum number of stories to be tested when generating the top read stories index (previously hardcoded to 100).
  • New argument min_size_for_gzip to Gruta::CGI, to set the minimum size for the output body to be Gzip compressed (previously hardcoded to 10000).
  • If a story pointed by a story:// pseudo-url has a publication date in the future, only the title is shown (i.e., it's not clickable).
  • The Mbox source is officially deprecated.
  • Static URLs are also generated for the CSS, RSS and SITEMAP pages. The following mod_rewrite rule must be added to the ones suggested in the previous version:

 RewriteRule ^/style\.css$     /?t=CSS              [PT]

Artemus 4.1.2 released

Version 4.1.2 of the Artemus template toolkit has been released. The following changes were made:

  • New template function sort.
  • New template function reverse.
  • Templates can be loaded from external sources by using the new loader_func argument to new().
  • The Perl module Artemus is now an alias for the Artemus4 module, as a way to smooth the future transition to version 5. No changes need to be done.

Nueva edición impresa de «Terra Incognita»

La segunda edición en papel de mi libro Terra Incognita (1997) está lista para comprarla en la tienda Lulu.com.

El texto incluye algunas correcciones de fallos tipográficos y estilo. Pero lo más interesante es la nueva presentación y diseño hecho por Marisa Ortega, gran profesional que además es mi hermana.

Una vez más, se demuestra que el aspecto es fundamental y lo que antes parecía un panfleto sin el menor interés ahora parece un libro de verdad.

Grutatxt 2.0.15 released

Version 2.0.15 of the Grutatxt text conversion package has been released. The following changes were made:

  • New parameter url-label-max to the HTML driver to set a maximum size for URLs.
  • New script pod2grutatxt, to convert Perl documentation in POD format to Grutatxt.
  • The pre mode is really verbatim, so bold / italic markup is not processed.

Traducción: Una amistosa introdución a la codificación de vídeo, parte 3: sonido con pérdida

Una amistosa introdución a la codificación de vídeo, parte 3: sonido con pérdida, por Mark Pilgrim.

Traducción de Linux Weekly News: Btrfs apunta a su inclusión

LWN: Btrfs apunta a su inclusión, por Jonathan Corbet.

Las Tijeras del Viajero, una al día

Desde hoy hasta mediados de febrero de 2009, y sin ninguna razón en especial, he decidido publicar cada día uno de los relatos o poemas de mi libro Las Tijeras del Viajero (1996).

La forma más cómoda de leerlos es mediante un lector RSS. Están por todas partes: Mozilla Firefox, Google Reader ó KDE Akregator. Tan sólo hay que usar el siguiente URL:

http://triptico.com/?t=RSS;tag=las%20tijeras%20del%20viajero

Traducción: Una amistosa introdución a la codificación de vídeo, parte 1: contenedores

Una amistosa introdución a la codificación de vídeo, parte 1: contenedores, por Mark Pilgrim.

Traducción: Una amistosa introdución a la codificación de vídeo, parte 2: vídeo con pérdida

Una amistosa introdución a la codificación de vídeo, parte 2: vídeo con pérdida, por Mark Pilgrim.

Traducción de Linux Weekly News: Btrfs, ¿incorporarlo al núcleo principal?

LWN: Btrfs, ¿incorporarlo al núcleo principal?, por Jake Edge.

Nuevo artículo: sobre el algoritmo Diffie-Hellman

He escrito el siguiente artículo: El algoritmo Diffie-Hellman, una breve descripción del mecanismo en el que se basa el cifrado de clave pública.

Minimum Profit package in Debian has been orphaned

It seems that Minimum Profit has been orphaned in Debian due to its maintainer (Roberto Suarez Soto) being missing in action:

http://bugs.debian.org/508228

MP's package (called mped there) was certainly very abandoned and outdated.

So, if you are a Debian developer and have any interest in having the best text editor in the universe working in the best Linux distribution of the world, please adopt it.

Noticias del mundo de las sombras: Obviedades

El otro día un cirujano pediátrico, en un examen de rutina, observó algo extraño en el cerebro de un recién nacido. Echó mano de bisturí y resultó ser un pie:

http://www.thedenverchannel.com/health/18297954/detail.html

Escarbando más, no sólo encontró el pie, sino lo que parecían ser los intestinos, una mano, un muslo y otro pie de alguien más. Parece ser que esto es otro caso de siameses parásitos o de «fetus in fetu».

En estos momentos de congoja uno suele ampararse en la obviedad, como en el comentario «this is completely abnormal» del doctor, o en el también obvio pero no por ello menos cierto «This is our baby» de la madre.

No obstante, hay cosas que pueden parecer obvias, pero no lo deben ser tanto, como es la reacción de esta mastuerza de Lake Forest (EEUU) que, habiendo quedado atrapada con su coche en un paso a nivel sin barreras del tren y viendo a éste acercarse, no se bajó del mismo, sino que llamó al teléfono de emergencias pidiendo auxilio, consuelo o ambas cosas.

http://www.msnbc.msn.com/id/28278606

El final es presumible; el tren la pilló y lamentablemente ha muerto a la edad de 68 años. La noticia no explica cómo esa mujer ha podido sobrevivir tanto tiempo.

Y, de nuevo, otra noticia nos hace ver que no todo debe ser tan obvio como parece: Brian May, guitarrista de Queen, afirma que él «No sabía de Freddie Mercury era gay»:

http://www.europapress.es/gente/noticia-brian-may-guitarrista-queen-no-sabia-fre...

Al menos, sí reconoce que había «algo sospechoso».

Y la última noticia de esta entrega: unos arqueólogos han encontrado, en una tumba china que fue sellada hace 400 años, un reloj suizo de hace 100. Atención a la foto: no se menciona el hecho de que el reloj de pulsera es minúsculo:

http://www.express.co.uk/posts/view/76140/Tomb-raiders-baffled-by-Swiss-watch-fo...

De nuevo refugiándose en lo obvio, uno de ellos nos deja la siguiente perla:

"Watches weren't around in the Ming dynasty and Switzerland as a country didn't even exist then"

Es un mundo extraño.

Estas noticias han sido patrocinadas por el verdadero significado de la letra "O" en Roger O. Thornill.

Anteriormente

Gruta 2.1.0 released

Version 2.1.0 of the Gruta CMS, codenamed "Calenzano", has been released. Gruta Release Notes.

Reuploaded Space Plumber Win32 install binary

The Space Plumber win32 install package was somehow corrupted and has been rebuilt again.