View Single Post
Old 06-02-2013, 03:03 PM   #21
neutrak
Junior Member
neutrak has much to be proud ofneutrak has much to be proud ofneutrak has much to be proud ofneutrak has much to be proud ofneutrak has much to be proud ofneutrak has much to be proud ofneutrak has much to be proud ofneutrak has much to be proud ofneutrak has much to be proud ofneutrak has much to be proud ofneutrak has much to be proud of
 
Posts: 9
Karma: 27860
Join Date: May 2013
Device: kindle keyboard 3g
version 0.3 beta snapshot

Hey guys, hate to be relevant to the topic since you're all having such fun, but here is a build snapshot that includes some requested features (such as /alias and /time_format). New binary attached, new man page embedded.

This is not a final release; it should be considered a "beta"; after some additional testing/tweaking I'll release a stable version later this year.

One last note: whatever build chain twobob used didn't require libtinfo, but the version of ncurses I linked against here does. Also, I only tested this on my kindle (keyboard 3g); your mileage may vary.

MAN:
Spoiler:

ACCIRC
Section: User Commands (1)
Updated: 02 Jun 2013
Index
NAME
accirc - The accidental ncurses irc client
SYNOPSIS
accirc [ --help | --version ]
DESCRIPTION
accirc starts ncurses; functionality is available from there; config is read from ~/.config/accirc/config.rc ; logs are stored in ~/.local/share/accirc/logs/
Options

--help
tells you to read this man page
--version
outputs the version of this software, in the form <major int>.<minor int>; major counts redesigns, minor counts updates; for both, even numbers are stable, odd numbers are unstable/testing


Commands

\
escapes the first character of the input string (in case you want a literal : or /)
:
sends raw data to the current server (if there is one)
/connect host port
connects to an irc server at <host> on port <port>
/exit [ message ]
sends a QUIT to every irc server you're connected to
/cli_escape new
changes the client command escape character to <new>, if possible
/ser_escape new
changes the server raw data escape character to <new>, if possible
/alias trigger substitution
registers an alias; when the client escape is used with the trigger the trigger will be substituted for whatever substitution is specified; for example "/alias part :part" would allow you to use /part in place of :part, note this is a direct text substitution and does no additional handling
/time_format new_format
sets the time format for viewing (the clock and timestamps on messages in ncurses); note that logs always use unix timestamps, and ignore this formatting
/reconnect
reconnect to the currently selected server if connection is lost for any reason
/no_reconnect
don't reconnect to the currently selected server
/log
keep logs for the currently selected server (this is the default)
/no_log
don't keep logs for the currently selected server
/sl
sets active server one left of current server
/sr
sets active server one right of current server
/cl
sets active channel one left of current channel
/cr
sets active channel one right of current channel
/me
sends CTCP ACTION message
/r
replies (by privmsg) to the last user we recieved a PM from on the currently selected server; if we have never gotten a PM, the default nick to reply to is the null string ""; parsing in some server implementations may treat this strangely, but it's out of my hands, the client will act as intended and send a "privmsg nick :msg" to the server
/sleep seconds
sleeps a given number of seconds
/usleep microseconds
sleeps a given number of microseconds
/comment
ignore this line, a comment (for an rc file)
/autojoin channel
join this channel on the current server as soon as we can (for an rc file)
/autoident password
auth for this nick on the current server as soon as we can (for an rc file)
/fallback_nick nick
set this as the backup nick if the nick specified is taken; if this nick is also taken _ is appended until one is unclaimed or we run out of characters allowed in the nick (for an rc file)
/rejoin_on_kick
for channels on current server, rejoin when kicked
/no_rejoin_on_kick
for channels on current server, don't rejoin when kicked


Key Bindings

f1 or alt+left
channel left (see /cl)
f2 or alt+right
channel right (see /cr)
f3 or alt+up
server left (see /sl)
f4 or alt+down
server right (see /sr)
f5 or alt+tab
literal tab character (f5 left for backwards compatibility, alt+tab is recommended)
f6
0x01 character, since screen intercepts literal ^A (for manually sending CTCP messages other than ACTION); displays as a bold \ in input area
f7
0x03 character for sending MIRC colors (MIRC color support is still experimental, and requires compilation with -D MIRC_COLOR); displays as a bold in input area
<tab>
complete a nickname based on nicks in current channel
PgUp
scroll up one line in the channel scrollback, if possible
PgDn
scroll down one line in the channel scrollback, if possible
Up
scroll up one line in the input history, if possible
Down
scroll down one line in the input history, if possible


FILES

~/.config/accirc/config.rc
The startup file to run
~/.local/share/accirc/logs/
The location of all logs from all servers
~/.local/share/accirc/error_log.txt
A log of any errors that couldn't be output through ncurses


EXAMPLE RC FILE

~/.config/accirc/config.rc
/comment set aliases and time for common preference, then connect to a server and join a channel

/alias quit /exit

/time_format %Y-%m-%d %R:%S

/connect daemonic.foonetic.net 6667

:nick accirc_user

:user 1 2 3 4

/autojoin #faid3.0

/comment some error handling just in case the desired nick is unavailable or connection gets lost, etc.

/fallback_nick accirc_user

/reconnect

/rejoin_on_kick


SEE ALSO
ncurses(3) strftime(3)
BUGS
MIRC colors don't work under screen; auto-reconnecting on drop is unreliable; flicker occurs frequently, since the clock updates every second (this is less noticable in screen or tmux for some reason)
WWW
http://somegenericsite.dyndns.org/index.php?p=code
Attached Files
File Type: zip accidental_irc-0.3_2013_06_02-kindle-binary.zip (34.4 KB, 283 views)
neutrak is offline   Reply With Quote