2583: Chorded Keyboard

Explain xkcd: It's 'cause you're dumb.
Jump to: navigation, search
Chorded Keyboard
And even though it all went wrong / I'll stand before the lord of song / with nothing on my tongue but 'I don't understand, I swear I backed up my keyboard config before messing with it'
Title text: And even though it all went wrong / I'll stand before the lord of song / with nothing on my tongue but 'I don't understand, I swear I backed up my keyboard config before messing with it'


This strip is a parody of the first verse (and in the title text, the end of the last verse) of Leonard Cohen's "Hallelujah", which has become a distinctive and popular song of which covers and versions exist. Written as a ballad, it is partly based upon the allegory of a mystical musical chord of several musical notes, that the words and tune both describe and illustrate by example.

Here is the verse from the song (see the lyrics here):

Now I've heard there was a secret chord
That David played, and it pleased the Lord
But you don't really care for music, do ya?
It goes like this, the fourth, the fifth
The minor fall, the major lift
The baffled king composing "Hallelujah"

Cueball is filking upon this theme, but in his case he has somehow set up his computer so that, upon pressing a certain combination of multiple keys on his keyboard, the system will automatically type out the word "hallelujah" (xkcd's all-caps lettering makes it unclear how the word is capitalized). In his description of the process, in both the comic proper and the title text, he uses adapted lyrics that again both describe and illustrate by example. Most of the initial lyrics are floating 'thoughts'. The punchline "hallelujah", however, is 'spoken' out of his computer monitor - typical of how on-screen text is indirectly shown in this comic series. It partially continues as a song parody through the title text but then trails off into a typical computer-complaint that he perhaps may often have cause to make.

The original lyrics rely upon typically nuanced rhymes, such as "do you" (or "do ya'") with "Hallelujah", and "fifth" with "lift", but fairly reliably rhymes "chord" with "Lord". In Randall's version, it starts with "chord" and "word" which look like they should rhyme, but would be /kɔɹd/ vs. /wɝd/ in a typical US accent. Similarly "shift" and "left" might be considered not a perfect rhyme when read as prose, but should still be possible to meaningfully sing.

Technically, a chorded keyboard is one in which (nearly) all inputs are made by simultaneous pressing of a given combination of a limited number of keys, such as a literal handful of non-alphabetic keys, that the user learns to combine to represent the key-presses of more standard keyboards or (in some cases) signify entire phonemes or words. The workings of such a keyboard tends to be handled internally, sending to the computer the signal(s) that would have been sent from its larger cousin.

A big thing among Xennial hackers like Randall and his original audience was customising keyboard uses. The linux operating system was originally designed and used for personal customisation, and people move their configurations from system to system, often customising how things respond to such a degree that other users struggle to make use of their system at all. The first two major text editors, vim and emacs, were composed of different camps of how to efficiently type. The emacs camp believed it was more effective to hit many keys at once to accomplish a large task, but both editors were designed to be highly customisable. It's erroneously believed that the traditional qwerty keyboard was specifically designed to make typing inefficient so as to reduce engineering burden in making old typewriters responsive and reliable. Given the prevalence of them, it has been common among hackers to remap a keyboard to something they may personally consider more efficient, such as to use a dvorak layout layout rather than a qwerty layout. Chorded configurations are an order of magnitude more efficient than the dvorak layout, but are more complex to configure because the result is not at all a one-to-one mapping. The traditional court reporting device is a chorded keyboard, to keep up with human speech.

Using a combination of normally single-use keys (the 'H' and a cursor) with others, including modifiers ('shift' and 'control'), i.e. 'chording' with his keyboard, is a kind of key combination found traditionally in emacs and operating system commands (such as pressing ctrl+alt+c, to copy a selection to clipboard). The ballad then comes across as an ode to system customisation and the practice of user-interface hacking, wherein a computer user knows how to rebuild their interface in almost any way they desire.

The chording example goes beyond mainstream use (shift and an alphabetic character changes the character case, whilst ctrl and a character may initiate an editing command) or mainstream multi-modifier combinations (ctrl, alt and the 'e' may result in the 'é', where the keyboard does not otherwise support it) and even goes beyond emacs-like command sequences which are generally software-specific. It seems likely that a setup such as that depicted in this comic is handled within the computer, either defined within the OS (all mainstream desktop operating systems support alternative keyboard mapping and customisable key-combinations, often for accessibility and international keyboard support), or (as is often the case with specialist configurable gaming keyboards) via the driver installed to mediate such esoteric keyboard combinations as the user has predefined for themselves.

Cueball's combination-keypress may in fact be better termed a 'macro', in some contexts. The single event, somehow triggered by this particular simultaneous multi-key input, invokes the injection of a pre-specified sequence of standard characters into the appropriate text-buffer/-stream, in lieu of manual per-character input.

The title text spoofs the last verse of the (original) song, with "Hallelujah" being replaced by Cueball trailing off musing about having apparently lost the backup of his keyboard configuration, implying that he ended up in a position where he would want to restore said backup (for instance, having tampered with it to the point he is no longer capable of operating the keyboard efficiently, if at all).

Here is the original verse, where the title text spoofs the last three lines:

I did my best, it wasn't much
I couldn't feel, so I tried to touch
I've told the truth, I didn't come to fool ya
And even though it all went wrong
I'll stand before the lord of song
With nothing on my tongue but hallelujah

As added irony, while in the original that verse is hopeful, with the singer being thankful for experiencing joy even from a relationship that ultimately failed, contrarily in the title text Cueball is apparently expressing regret. Or, if taken literally, it could instead imply that God himself is questioning Cueball about his tampering with software, which could fit with the running gag of Cueball's (often self-inflicted) computer problems being hyperbolically atrocious.

When one modifies one's keyboard config, it can make the system seem unusable (or at least highly unexpected) to things like a boss, a spouse, or an automated maintenance system. When an error is made somewhere in the process, it can make the system seem unusable to the very person who made the changes, making it hard to change them back.


[Cueball is sitting in an office chair at his desk, typing on his keyboard as shown by small lines over one hand, while looking at the screen of his stationary computer. The screen is on a raised platform on his desk. Lyrical text is written upon each scene, presumably what Cueball is typing.]
I heard there was a secret chord
That David pressed and it typed a word
[A closeup on Cueball in a slim panel. We see him from the waist up, with his hands on the keyboard just beneath the panels frame.]
But you don't use a chorded keyboard, do you
[Same setting as in the first panel, except Cueball's arms have moved and there are movement lines above and below his arms.]
It goes like this, <control> and <shift>
The other hand hits H and <left>
[Slimmer panel but same setting as in the first panel, again the arms have moved a bit, with movement lines above them. The final written word of text is marked as arising directly from the computer.]
And all at once it types out
Computer: Hallelujah

comment.png add a comment! ⋅ comment.png add a topic (use sparingly)! ⋅ Icons-mini-action refresh blue.gif refresh comments!


Why is it H+<Left> rather than H+<Right>? JohnHawkinson (talk) 03:22, 19 February 2022 (UTC)

Probably for the rhyme with "Shift" in the previous verse. In terms of practicality, though, I agree — <Right> would make more sense for a real keychord. (talk) (please sign your comments with ~~~~)
A pity Shift and Left don't rhyme very well. But then neither do Chord and Word. 03:41, 19 February 2022 (UTC)
It works if you're from New Zealand. 10:37, 19 February 2022 (UTC)
Wow, I totally missed that near rhyme. It's not quite so bad if you sing it, though. JohnHawkinson (talk) 03:46, 19 February 2022 (UTC)
Eh, Tom Lehrer's certainly done much worse slant rhymes. -- KarMann (talk) 03:55, 19 February 2022 (UTC)
Sadly, too, there was the opportunity for "The other hand, hits H and lift." Alas. JohnHawkinson (talk) 04:23, 19 February 2022 (UTC)
I don't know about other people, but I can reach H+<Left> on my keyboard with the index finger and pinky of my right hand, but H+<Right> requires thumb and pinky and doing something terribly awkward with my wrist. 06:51, 19 February 2022 (UTC)
Interesting to note that in vi, the H key is left. Dansiman (talk) 23:38, 8 March 2022 (UTC)
I added some (necessary?) additional contextualising of how it mirrors the original song, consider it a bridge/middle-eight, so that those who still don't quite get that bit of popular culture get a bit more of the idea than before.
In the process I made an executive decision to comment about the rhyming (or not) along the way.
...but I strayed into 'Cueball's Computer Problems' territory, and then noticed (sorry, missed it before diving in) that it's mentioned again (but chronologically before!) at the the end of the explanation. I'm not quite sure how to remove the redundancy. The lyrical trailing-off really needs to mention this, I feel, but removing repetitions from the other person's text will need extra thought too. If someone gets in there before I do and modifies either/both of the sections nicely then that'll be Ok, but I'll try to revisit it myself (and 'kill my darlings' if necessary) if nobody else sees fit to in my stead. 19:02, 19 February 2022 (UTC)
presumably he programmed his keyboard to use chord-logic for ALL common words.... if he has ctrl, alt, shift, and at least two special function keys, such as win and alt-gr.... that's 2^5=32 possible signal combinations from function keys. if he uses the 8 direction keys on the numeric keypad, that's 32*8= 256 possibilities for command modifiers to each letter. So, in theory, he could program in an unique combination of key strokes that chooses between the 256 most common words that begin with each letter, totaling 6656 possible words that can by typed using chording. The combination that results in "hallelujah" just happens to be ctrl-shift-h-left. hopefully there's a graphical prompt which shows you the 8 possible current words to choose from, given the most recent combination of function keys and a given letter.
I happen to know that if you're typing in Japanese phonetic letters using MS Word, there are actually so many homonym words which have different logographic symbols, and different meanings, but which all SOUND the same, and thus are phonetically TYPED the same, that's it actually NORMAL for Word to list a pop-up context menu with the top-8 word choices you might have just meant to enter, and require you to select one before continuing. and then it swaps out the correct logograph symbol for the phonetic symbols you just typed. I don't think it uses the numpad directional arrows to make the choice, but honestly, it would be a lot more user-friendly if it did.... 05:38, 20 February 2022 (UTC)

Is it steganography? 04:03, 19 February 2022 (UTC)

Stenography* 19:09, 19 February 2022 (UTC)
Stenotype actually (though they use special typing machines, but there's software to use any keyboard for stenotype). It's been a cornerstone of court reporting and live captioning for over a century, and it doesn't seem to be replaced anytime soon by transcription "AI", given how horrible it still is. I'm surprised it's not been mentioned in the article. 12:53, 20 February 2022 (UTC)

Ironically, having considerable knowledge of one of those covers of the song can lead to more confusion than less familiarity with any of them. My wife was recently moderately obsessed with Rufus Wainwright, including his cover of 'Hallelujah'. So when I read this comic, I didn't catch on until most of the way through what other Randall was up to. But when she read it, she caught on in the first line, and yet, didn't get the title text at all until I explained it to her (having compared some versions overnight before then), since that line isn't included in Rufus' version. No particular point here, just, well, 'Talk'. -- KarMann (talk) 01:55, 20 February 2022 (UTC)

Has anyone recorded a cover with these lyrics yet? I had kind of assumed that would happen soon after this was posted. --Sensorfire (talk) 04:14, 20 February 2022 (UTC)

Kind of disappointed that the explanation isn't itself written in verse form after Hallelujah. 11:51, 21 February 2022 (UTC)

Control Shift H

https://defkey.com/what-means/ctrl-shift-h shows the shortcut action in 113 programs. (Who knew there was a website devoted to keyboard shortcuts?) In Firefox, it shows your history as soon has you hit the H. (I like to think that Randall uses good ol' open source Firefox.) Your history will show the current XKCD page first, of course, but that listing does not include the word "HALLELUJAH." The next keydown is interpreted as a separate keystroke. Nothing interesting happens with the 8 permutations of Ctrl-Shift (up or down) and (left arrow, numpad left, left tab, backspace). I was kinda hoping that Mozilla had secretly conspired to tweak this keystroke combination in the last update. In short, I have nothing to add to the explanation, but not for lack of trying. 23:52, 19 February 2022 (UTC) (This is my first explainxkcd comment. I'll properly sign up before I comment again.)

We can add a javascript snippet that captures this keychord and shows "Hallelujah" on this website, right :P 04:46, 20 February 2022 (UTC)

It's interesting that the strip is "technically incorrect" in two ways, in order to make the song work. Firstly, while key-combos are often referred to as "chords", when they are user-configured they are typically called "macros" instead... but that would break the joke. Secondly, *Corded keyboards* (https://en.wikipedia.org/wiki/Chorded_keyboard) are a very, very different thing to "perfectly normal keyboard hardware connected to a system where someone has set up macros". A corded keyboard would not typically have any of the keys described in the strip: they normally have a half-dozen keys or less, though some exist with two or three rows of about four keys.

Also, the current explanation is incorrect both in that macroing is in any way a thing of the past, and also that it is always application-level. Things like AutoHotKey (windows), BetterTouchTool (mac), AutoKey and IronAHK (Linux) etc permit system-level macroing, so that the key-combo can inject the word hallelujah into whichever application currently has keyboard focus, typos can be automatically fixed, etc. -- 16:33, 21 February 2022 (UTC)

To be clear, the closest thing that exists to any kind of special keyboard hardware required to support chords/macros is a keyboard with *N-key rollover* (Rollover (keyboard)) ... but this would not be required for the chord described in the strip. There are also gaming keyboards which have additional keys (eg Logitech's with extra "G keys") which allow you to map macros to those extra keys using custom keyboard driver software... but this is explicitly there to prevent you needing to chord to fire a macro. Neither of these are called "chorded keyboards", either. Fairly sure Randal would know all this and was just stretching facts to fit the joke. It'll be interesting to see if his alternative meaning for "chorded keyboard" becomes popular after this strip. 16:58, 21 February 2022 (UTC)

Randall is not a millennial (& popularization of the interface hacks described, pre-dates millennials), so I have changed the first occurrence to read "gen-X", & corrected the past-tense phrasing farther down, to allow for modern usage (especially since alternative keyboards are more widely known\used now, than in the past). Randall has even done comics about this obnoxiously persistent & utility-reducing shift in terminology around "millennials": Not everyone born after the "baby boom" generation is a millennial! There were two generations in between. Regardless, common usage persistently shifts toward calling everyone since the Baby Boomers a "Millennial". In point of fact, many (or most?) of the social phenomena commonly associated with millenials, were well established over a decade before the millennium ("meme" image captions, digital nativism, eschewing traditional career & transportation modes, et cetera). Unfortunately, because the generation subsequent to the baby boom was comparatively so small, they are largely insignificant in terms of marketing & finance. (Gen-X also happen to have the lowest average income of any living generation.) Hence, everything post-BabyBoom tends to be attributed to "millennials", because actual millennials are the first generations since the baby boom, to comprise a population segment too large to be marginalized.
ProphetZarquon (talk) 21:21, 21 February 2022 (UTC)

In reality, increased interaction between age groups has largely erased any clear "generational" segmentation in behavior, rendering useless the entire concept of distinctly divided "generations": Age is an increasingly poor indicator of social set, & there is no globally consistent swell & decay cycle in birth rates, to produce meaningful points of demarcation between clusters. In other words, while age may sometimes still provide statistically useful clues toward an individual's behavior, there is no longer any clear dividing line between age groups over time. More practical & applicable to any year, are terms such as "teens" (13-19), "young adults" (<35), "middle aged", & "geriatric". Terms defining a "generation" by arbitrary decade rollovers, are increasingly disinformative & constitute poor set optimization.
ProphetZarquon (talk) 21:26, 21 February 2022 (UTC)
Actually... Randall is a millennial. I won't revert the change as I find these generational categories silly and don't see how mentioning it adds anything to the (already very bloated) explanation but general consensus (i.e. wikipedia) is, that the term "Millennial" describes those born between 1981 and 1996. https://en.wikipedia.org/wiki/Millennials Randall was born in 1984. Elektrizikekswerk (talk) 07:42, 22 February 2022 (UTC)

Thanks for fixing the phrase "millenial". I meant like the 80s and 90s but didn't know the right term. I'm surprised that the link to the section of the wikipedia showing open source hacker keyboards like the one randall depicts was changed back, dunno. It would be cool to link the image in from that article ( https://en.wikipedia.org/wiki/Chorded_keyboard#/media/File:Chording_Keyboard.png ) or any other image. The current wording of the article added some inclusion around GUI operating systems, maybe like Windows, which is great, but do they have the level of customisation that linux and emacs hackers enjoy? When you code it yourself you can make arbitrarily large chords. It's been a long time since I've customised a GUI OS, so I'm imagining things have changed and you could somehow set up a homebrew chorded keyboard on windows or osx as well nowadays. It's certainly gotten _harder_ on linux, where things are much less barebones than they used to be. Probably a software package for all the environments somewhere. 22:37, 21 February 2022 (UTC)

"I'm surprised that the link to the section of the wikipedia showing open source hacker keyboards like the one randall depicts was changed back"... I did that. The link was for Chorded Keyboards, not for specificall the open-source ones. The reader who follows your link would have to scroll up to find out what a chorded keyboard was, and might be excused for imaginging there was no relevence to the next section down about Commercial Devices was also not being possibly referenced.
As pointed out, it appears that it was a lyrical thing, and it was a standard keyboard with various settings, but at the point of the link it was explaining the principle of any chorded keyboard, like a Braille-writer...
...which, incidentally, does not do "whole words" with a combination, except if set up that way through optional configuration, much as Cueball has done for his regular-seeming non-chorded keyboard, but is calling a "chord".
(I personally often set up many shortcuts on my Windows machines. I seem to be able to use Ctrl-Shift-Alt-<character> with impunity to launch many programmes or other features, because there are virtually no situations in which my four-fingered-salute would be something another program with keyboard-focus is likely to misinterpret as being an instruction built into it. Generally that's a mnemonic <character> to the thing I want to speed-launch, but I have occasionally used a cursor. I must admit I have never tried to hack a two-meta-two-'normal' key thing, so not sure whether I need to use something a bit more interesting than inbuilt Windows functionality for that. Will check next time I'm back on an MS OS. And I've never used it to speed-type things, which would need me to call something I've written/appropriated that does a configurable buffer-dump.)
Anyway, I see in you a fellow verbose individual, like I'm striving (and failing) not to be. Welcome, if you're new to this site! 01:02, 22 February 2022 (UTC)

Based on prior discussion about Milennial vs Generation-X, I think the solution is to go with the Xennial term https://en.wikipedia.org/wiki/Xennials. 23:00, 24 February 2022 (UTC)

I already thought, when the whole age-group-of-Randall was first brought up, that it was an unnecessary commentary. It's Cueball, who could be anybody of whatever age you want across a whole swathe of Gen-X and onwards. If I were of a mood to editorialise it to my own tastes I'd just put it back to "this is something that certain technically-minded people do" (to paraphrase, without looking up if it was written as hackers/geeks/whatever).
The bit about "and his original audience" just confuses me. Is this a message to the far future when people like me (not a customised-keyboard user, but been reading xkcd almost from the beginning, so 'original' to that extent) are dead and gone? Or out virtually picketting the Metaverse so we no longer have time to keep up with CyberRandall 2.0's output anymore? It's a messy paragraph that seems to have something of an agenda behind it, not just simple explanation. 00:05, 25 February 2022 (UTC)
Agree. Elektrizikekswerk (talk) 13:13, 25 February 2022 (UTC)

New user here, apologies if formatting inadequate - just wanted to observe that this is not the first XKCD to reference Cohen's secret chord song, it's also in the background of XKCD 1234 "Douglas Engelbart 1925-2013. Chris 08:09, 22 February 2022 (UTC)

This comic seems to have sparked a brief but bloody editing war over the efficiency of dvorak and qwerty, that issue raising its hoary head once more. It was funny to watch in real time. Requiscant (talk) 09:53, 22 February 2022 (UTC)

Does the title text imply that a fatal accident occured due to a misconfigured keyboard? 14:40, 2 March 2022 (UTC)

If I remembered correctly, then the "1" key is supposed to type an entire word on a standard Cherokee keyboard, which can also be considered "Chorded". ColorfulGalaxy (talk) 10:58, 26 March 2023 (UTC)

Nowadays it's possible that all the keyboard config is happening on the board. Modern firmware like qmk allows you to remap keys, program macros, do chords, have different layers and modifier keys, and more. Especially if you code it all custom, you can have your "keyboard config" be compatible with any system, any OS, and even with limited or no permissions. 05:14, 21 May 2024 (UTC)