* Front Page * Table of Contents * Return to Town


Bulletin Butter & Jelly (BBJ) is a very simple, old-school "buliten board system" (BBS) unique to tilde.town and used by members logged-in through SSH. To launch the client simply enter the command bbj in the command line.

You can post anonymously, but logging in with your username will allow others to recognize your post as being from you.

The first time you login, you will need to create a new password. This password is only used by BBJ, and provides rudimentary protection from other people trying to create posts as though they were you.

Once logged-in, enter a question mark "?" to display the onilne help screen.

Copy of the Online Help text

(NOTE: this text was copied on 2020-08-14 and may have changed since then).

You may use the arrow keys, or use j k / n p / Control-n / p to move up and down by an element. If an element is overflowing the screen, it will scroll only one line. To make scrolling faster, hold shift when using a control: it will repeat 5 hold shift when using a control: it will repeat 5 times by default, and you can change this number in your settings.

In threads, The < and > keys will jump by a chosen number of post headers. You can see the count inside of the footer line at the far right side: press x to cycle it upwards or X to cycle it downwards.

In the thread index and any open thread, the b and t keys may be used to go to very top or bottom.

To go back and forth between threads, you may also use the left/right arrow keys, or h/l to do it vi-style.

Aside from those, primary controls are shown on the very bottom of the screen in the footer line, or may be placed in window titles for other actions like dialogs or composers.

Quick reminder: [rainbow: expressions work like this]. You may scroll this message, or press ~ or escape to close it.

BBJ supports bolding, underlining, and coloring text using markdown-style symbols as well as tag-like expressions. Markdown is NOT fully implemented, but several of the more obvious concepts have been brought over. Additionally, we have chan-style greentext and numeric post referencing, ala >>3 for the third reply.


When you're composing, it is desirable to not include your own linebreaks into paragraphs of your post, because clients handle text wrapping on their own. Adding them yourself can cause your posts to look very strange. You can always edit your posts after submitting them if you do this by accident, as long as you are not anonymous.

In previous versions of BBJ, linebreaks were joined into sentences if they occured in the same paragraph, however this confused many users and has been reverted to just use whatever was submitted, as-is.

Colors, Bold, Underline & Expressions

You can use rainbow, red, yellow, green, blue, cyan, and magenta, dim, bold, and underline inside of your posts. **bold works like this**, __and underlines like this__. You can escape these expressions \**like this\**. They can span up to the full width of the same line. They are best used on shorter phrases. However, you can use a different syntax for it, which is also required to use colors: these expressions [bold: look like this] and have less restrictions.

The colon and the space following it are important. When you use these expressions, the first space is not part of the content, but any characters, including spaces, that follow it are included in the body. The formatting will apply until the closing ]. You can escape such an expression \[cyan: like this] and can also [blue: escape \] other closing brackets] inside of it. Only closing brackets need to be escaped within an expression. Any backslashes used for escaping will not show in the body unless you use two slashes.

This peculiar syntax elimiates false positives. You never have to escape [normal] brackets when using the board. Only expressions with valid and defined directives will be affected. [so: this is totally valid and requires no escapes] because 'so' is not a directive. [red this will pass too] because the colon is missing.

The following directives may be used in this form: red, yellow, green, blue, cyan, magenta, bold, underline, dim, and rainbow. Nesting expressions into eachother will override the parent directives until the innermost expression closes. Thus, nesting is valid but doesn't produce layered results on the command line client.

Quotes & Greentext

You can refer to a post number using two angle brackets pointing into a number. >>432 like this. You can color a whole line green by proceeding it with a >. Note that this violates the sentence structure outlined in the Whitespace section above, so you may introduce >greentext without splicing into seperate paragraphs. The > must be the first character on the line with no whitespace before it. >it looks like this and the paragraph doesnt have to break on either side. The formatter is smart enough to differentiate between >>greentext with multiple arrows and numeric quotes (outlined below) given that the text doesn't start with any numbers.

When using numeric quotes, they are highlighted and the author's name will show next to them in the thread. You can press enter when focused on a message to view the parent posts. You may insert these directives manually or use the <Reply> function on post menus.

Quoting directives cannot be escaped.

Hacking BBJ

(NOTE: I am not 100% sure about this, someone who knows better than me, please confirm.)

BBJ is an ordinary Python server, and stores messages into an ordinary PosgreSQL database. A non-production version of the BBJ source code which is available to townies with SSH access to tilde.town, and can be found at the path /town/src/shadowland.

Using BBJ from within Emacs

A simple but useful BBJ client has been written in Emacs Lisp, please see the section on Emacs for how to use it.

last compiled: 2024-01-23 01:58:22.544311