AsciiDoc – A friendly authoring format

I recently learned about AsciiDoc, a powerful yet intuitive, human readable and writable format for authoring books and similar kinds of structured documents:

  • Solid technology, first created in 2002
  • Plain-text format, requires no special editor
  • Cleanly separates document structure from layout details
  • Available for the JVM community since 2013
  • Simple and intuitive like Markdown
  • As powerful as DocBook, without the XML clutter
  • Syntax highlighting in vim and other editors
  • Generates DocBook, HTML, epub, PDF, …
  • AsciiDoctor toolkit generates HTML 5, DocBook 4.5
  • Renders inline on github (like markdown)
  • Maven and Gradle plugins for automation
  • Support for creating diagrams using plain-text
  • Happily used by teams at Redhat, Git, Spring, …

For example, the whole documentation for the JEE standard CDI is maintained in AsciiDoc and hosted on github as maven buildable projects.

Dan Allen, a known name in the JEE community and AsciiDoctor lead developer, says that AsciiDoc supports “the creation of reusable, human-readable, semantic content” so that we can better adapt to adaptive content and address the challenges of an electronic multi-device, multi-format world that is redefining what “book” means.

An authoring revolution?

As an author-friendly plain-text format AsciiDoc might become a catalyst in an ongoing electronic authoring revolution that treats book writing like software development with authors working directly on the book’s “source code” in git repositories, while rendering into various target formats is done using build automation tools and fast scriptable converters like AsciiDoctor.

The tech-savvy publishing house O’Reilly seems to be on the forefront of this trend and

Use xtrlock via XFCE 4.8 lock button

I currently use XFCE 4.8 on Debian Wheezy as my desktop system. Its panel supports so-called “action buttons” for hibernate, lock, shutdown, etc.

I use one of those buttons to lock the screen but I don’t like xscreensaver (too ugly, don’t need the screensaver stuff), gnome-screensaver (too many dependencies), xlock and its successor xlockmore (too ugly) or slock (just a black blank screen always confuses me).

Good thing is that I found xtrlock which does what I want: It just shows a lock symbol instead of the mouse cursor, all screen content is still visible but user interaction is blocked until the current user password has been typed in.

This is just enough to prevent my 2 and 5 year old children from messing around with my laptop. So I installed it:

sudo apt-get install xtrlock

Problem was that the XFCE lock button calls xflock4 which is a simple shell script that has hardcoded support for the afore-mentioned set of lock programs, but not for xtrlock.

My simple solution was to take advantage of /usr/local/bin being usually before /usr/bin in the PATH and create a script /usr/local/bin/xflock4 with this content:

#!/bin/sh
xtrlock

Make it executable with

sudo chmod a+x /usr/local/bin/xflock4

Now I can use the XFCE lock button and get what I want.

Alternatively, there are a couple of other light-weight lock programs for Linux:

Halifax PD summit will feature a presentation about this blog

On April 30th, I will give a presentation “Blogging in the Open about professional experience” at the 2014 Halifax PD summit.

I will show how I use this public web log to share structured knowledge with an international community and serve as online documentation of gained expertise at the same time.

The presentation will cover features like one-click Publicize (to LinkedIn, Twitter, Google+, etc.), site stats, categorization and tagging, publishing embedded source code, search engine optimization and easy cross- browser testing.

The session should be useful for anyone who wants to combine structured knowledge sharing with social and professional networking.