Symbols used to represent functions

I was looking for some standard symbols to represent the Control key and the Alt key, and couldn’t find one until I came across ISO/IEC 9995-7.

Because I had much trouble finding a free copy of the document on the ’Net, I have made a table of the symbols and their functions below. I have marked those not present in Unicode as �.

Some examples: copy is usually [⎈ + C] and close is usually [⎇ + F4].

Symbol Meaning/Summary
Select level 2 (AKA Shift)
Lock level 2 (AKA Shift-Lock)
Caps lock
Num lock
Select level 3
Lock level 3
Group select
Group lock
Space
No-break space
Insert
Underline (continuous)
Underline (discontinuous)
Emphasize
Compose characters
Center
Delete backwards
Delete
Clear screen
Scrolling (I assume this means Scroll lock)
Help
Print Screen
Return
Enter
Alternate (Alt key)
Control (Ctrl key)
Pause
Break/Interrupt
Escape
Undo
Cursor up
Cursor down
Cursor left
Cursor right
Fast cursor up
Fast cursor down
Fast cursor left
Fast cursor right
Home (Beginning)
End
Previous page
Next page
Tab left
Tab right
Line up
Line down
Backspace
Partial line up
Partial line down
Partial space left
Partial space right
Set margin left
Set margin right
Release margin left
Release margin right
Release both margins
+ Addition
Subtraction
× Multiplication
÷ Division
= Equals
Decimal separator

Pearls Before Piglets

While Googling my way through the interwebs, I came across the 2008 Western Australian Certificate of Education sample examination for Stage 2 Biological Sciences. It contains this diagram:

Diagram

If you’re wondering, the entire hierarchy is drawn from Umberto Eco’s novel Baudolino.

What can we fit in 140 characters?

This is in reference to the current ‘Twitter image encoding challenge’ running on StackOverflow.

If we want to restrict ourselves to assigned, non-control, non-private Unicode characters, then by my reckoning that gives us 129,775 available characters.

wget http://unicode.org/Public/UNIDATA/UnicodeData.txt
awk -F ';' UnicodeData.txt -f countUnichars.awk | bc

countUnichars.awk source:

BEGIN { print "ibase=16" } # set bc to hex mode
 
$2 ~ /Private/ { # skip any lines with "private" in the description
    getline;
}
 
n { # if n is set, then print the range for bc to calculate
    printf("(%s-%s+1)+",$1,n);
    n="";
}
 
$2 ~ /First>/ { # set n if the start of a range
    n=$1;
    getline;
}
 
$3 !~ "C." { # otherwise count anything that isn't some kind of a control character
    i++;
}
 
END { # print out the count of everything else
    printf("%X\n",i)
}

This means we can store exactly 2377 bits (297 bytes) per message (this is \lfloor\log_2(129775) \times 140\rfloor), so if we use a 16-colour palette we can store about 594 pixels (2377/\log_2(16)), which can almost reproduce the Mona Lisa thumbnail in the contest page.

Rhythmbox Plugin: Stop after current track

I have wanted this for a while, and my brother linking me to this post was the last straw.

So here is a very quick and simple plugin; it simply puts a button on the toolbar that you can click when you want to stop playback after the current song. I based the toolbar button code on Alexandre Rosenfeld’s lastfm-queue plugin, since I had no idea where to start with that

Download it here, and put it into ~/.gnome2/rhythmbox/plugins/stop_after_song/. Activate it in Rhythmbox’s plugin dialog.