[Back to the Floodgap main page] Return to Floodgap Software

Texapp for Perl (Somewhat Early Alpha)

Texapp is a port of the highly arcane and inexplicably beloved TTYtter text mode client for Twitter to App.net. If you knew/loved/hated/wanted to smash @doctorlinguist in the face because of/felt strange rumblings of passion towards/used TTYtter, now you can use the same interface, most of the same commands, and pretty much all of the same awesome power for ADN.

During the Super Early Alpha-Alpha, As of 0.5.0, Texapp has progressed from Super Early Alpha-Alpha to Somewhat Early Alpha. During this time, Texapp will be offered mostly for those already familiar with TTYtter along with the freaks of nature and the typically incautious and those who love them. This document will not be a lot of help to you if you find the command line totally alien. Get used to TTYtter on that "other service" and then come back here. Most of the same stuff applies; these docs are just for the differences right now.

If you are an existing Texapp user, go to the changelog and download for What's New. If you're interested in writing Texapp extensions and ADN bots, go to our Texapp API documentation.


Running Texapp

What works in Texapp

Texapp was originally descended from TTYtter 2.1, and using many of the same TTYtter commands you used before, you can (see /help also):

In general, TTYtter commands still work as synonyms (so /faves is a synonym for /stars; /block is a synonym for /mute; etc.).

Channels and private messages

Texapp also supports channels with private messages, including multi-way channels. These are mixed into your timeline as if they were part of your stream. Texapp will monitor up to 200 subscribed channels. (Technical note: the only supported channel type is net.app.core.pm -- other kinds of channels are not supported by Texapp.) When you start Texapp, the last two messages received in any channel are displayed automatically. PMs appear in green with the sender and all recipients.

PMs have their own menu codes starting with p which are either pxx for the background or pzxx for the foreground. You reference a channel simply by referring to any post in it; Texapp will figure out "what you mean." The following commands accept PM menu codes too, and work analogously to how they work for posts:

The count (+xx) argument and before (<menucode) argument both work for most PM commands (e.g., /th <pa0 +40 displays up to 40 posts in the PM thread specified by pa0 prior to pa0). When done with a channel, /pmclose will "put it away" -- it will not appear in /pmscan, but it will immediately be reactivated if there is any activity on it or you create a "new" channel to the same people.

new in 0.6.2 PMs may be up to 2048 characters in length, unlike posts, which are limited to 256 for the ADN API.

Full screen editing with your editor

new in 0.6.0 If you end a PM or post with the magic substitution variable %ED% (or the post only consists of %ED%), Texapp pauses the background and opens the post in your editor (as specified by the $EDITOR environment variable). This lets you make and edit multi-line posts, though you are still limited to 256 characters for posts and 2048 characters for PMs<< new in 0.6.2.

For best results, you should enable newline parsing with /set newline (or -newline on the command line or newline=1 in your .texapprc, see below). In this mode Texapp does not do any further parsing of your post, such as collapsing spaces and filtering characters. UTF-8 support is entirely a function of your editor. Be advised that a long editing session may unleash a pent-up flood of posts when you finish.

%ED% by itself allows you to compose a new post in the editor, but you can also /re a5 %ED% or /ra a5 %ED%, etc., and the person(s) indicated will appear in the editor and be editable as text. You can use %ED% anywhere you would put a message to be posted and with any such command, including /pm and /me.

If you used /erp to load a repost for editing, you can edit that by using %EDRP% instead of just %RP% where you normally would.

Geolocation support

Texapp can detect geolocation annotations and posts with geolocation information have a + prepended to them. You can display the actual coordinates of that post with the /dump command.

new in 0.6.0 You can set a location to be appended to your posts using the lat and long variables (e.g., /set lat 38.8977 followed by /set long -77.0366 sets your coordinates to the White House in Washington DC). However, your posts are not actually encoded until you also /set location to enable doing so, so that you can set a default location but not transmit it until you want to (and /unset location when you want to turn it off).

From the command line, specify -lat -long -location, or place them in your .texapprc (see below).

Running commands from your shell (using Texapp as a command line tool)

Texapp can also be used as a CLI tool. The -runcommand option lets you pass a command to it, which is dumped to standard output. Almost any command is supported. Examples:

To make a post, you can either pass it as an argument, or pipe a line of text:

If you use -status="%ED%" from the command line, then your default editor opens; the post is sent when you write the file. A blank file cancels. (See notes above on full screen editing for more information.) << new in 0.6.0

For commands that would ordinarily need a menu code, you can just use an ID (you need to know what it is, of course):

You can refer to PMs by ID if you have permission to the channel they existed in; simply use P plus the PMID. (This is supported by all PM capable commands except /pmclose for technical reasons.)

Texapp-specific command line options

Here is (finally) a complete list of all command-line options supported by Texapp. The vast majority of TTYtter command line options still apply, though the semantics may slightly vary. Texapp supports ANSI colour, readline, notification, and integrated URL and avatar viewing in the same way TTYtter did, as well as version checking.

Here are some common and useful options; see the full list of command-line options for more:

Texapp also changes behaviour a bit from TTYtter:

Configuration notes

What's under construction in Texapp

The following features are still in Texapp (as code holdovers), but do not work yet and you should not use these commands or command line options related to them until they are rewritten for ADN:

Writing your own bots and extensions in Texapp

See our amazing Texapp API documentation! << updated for 0.6.0

What's coming to Texapp

Known issues

Changelog and download

Download 0.6.10 here. Comments to @doctorlinguist on ADN. Read our totally serious privacy policy and terms of service. Old versions here.

What's new in 0.6.10:

What's new in 0.6.9:

What's new in 0.6.8:

What's new in 0.6.7:

What's new in 0.6.6:

What's new in 0.6.5:

What's new in 0.6.4:

What's new in 0.6.3:

What's new in 0.6.2:

What's new in 0.6.1:

What's new in 0.6.0:

What's new in 0.5.4:

What's new in 0.5.3:

What's new in 0.5.2:

What's new in 0.5.1:

What's new in 0.5.0:

What's new in 0.4.4:

What's new in 0.4.3:

What's new in 0.4.2:

What's new in 0.4.1:

What's new in 0.4.0:

What's new in 0.3.2:

What's new in 0.3.1:

What's new in 0.3.0:

What's new in 0.2.4:

What's new in 0.2.3:

What's new in 0.2.2:

What's new in 0.2.1:

What's new in 0.2.0:

Cameron Kaiser