Let's talk about a little relic that's hiding in your PC since ~1870.

The 'Bell' (BEL) character is a special character that makes your computer beep.

In DOS/Windows (yes even 10) you can type it using CTRL-G. Try it in your command prompt: echo ^G

On Linux/Mac it'll be: echo -e "\a"

The Bell command used to be used by teletype operators to get the attention of remote operators by making their unit ring an actual bell. This special character remains with us to this very day!

🔔 :crt_w_prompt: :blobowo:

@polychrome on most terminals i've used this character does nothing- it didn't do anything just now in urxvt

I probably need to try it direclty on a tty, bc terminal emulators probably sanitize it

@melissasage it's really useful! I make long-running scripts beep to let me know they finished doing whatever.

@polychrome oh that's a great use case; honestly the times that i've needed that i've used notify-send, but that's much cleaner

@melissasage @polychrome on most terminal emulators the behaviour is configurable, it can beep or flash the window or set the "urgent" hint for the window manager, or do nothing.

In my ~/.URxvt.resources, which gets included via xrdb on startup, I have the two lines "URxvt.urgentOnBell true" and "URxvt.visualBell true", which flashes the window and sets the urgent hint. The manpage for urxvt has some more options, I think.

@polychrome I think this might also be a good time to talk about the #AntiqueASCII "separator" control characters (FS, GS, RS and US) and what a tragedy it is that despite their existence software people decided to use carriage return and/or linefeed to separate records and commas or tabs to separate units/fields.

Thus creating a whole mess of nonstandards and character escaping schemes that was entirely unnecessary.

@msh I'm also annoyed by the use of markdown that's relying on visible characters when control characters are most definitely a thing.

@gudenau try another one or switching to real TTY (not inside X).

I know that some X terminals sanitize control characters like Bell for some reason.

@polychrome Huh, it does work outside of X. I would have expected the X things to do it. Weird.

@gudenau yeah it's not X's fault, it's the terminal emulator program. Try another one of you can. Maybe xterm?

@polychrome I know it's not X'es fault, just easier to say that over xfce4-terminal.

Not a huge deal, probably a setting somewhere.

@gudenau @polychrome yeah, it's almost always a setting. Usually one with multiple options-- iTerm2 lets you actually beep, flash-invert the screen, and/or put an icon in the tab.

(And I gotta say, thank dog it's an option. If my MacBook were actually belling everytime I got the icon, me and my noise-sensitivity would've taken an axe to it by now. Some tool developers do not have the maturity to handle that character's power!)

@polychrome I have alias, 'bell echo -e '\a''. When i run some command i want to be notified of when it finishes I put ';bell' at the end, and it lights up the terminal, tmux tab, or workspace icon that terminal runs in. It is really cool thing.
BTW some hardware beepers can into different frequencies, and you can play 'music' with proper escape codes.

@polychrome @tbeckett If you hit Ctrl-G in the old ICQ chat program it would make an "awooga!" sound. Sadly I can't find a sample of this.

@polychrome I test it on OpenBSD an it's not making Beep. :( Using Current and xterm in TWM.

Sign in to participate in the conversation

Cybrespace is an instance of Mastodon, a social network based on open web protocols and free, open-source software. It is decentralized like e-mail.