MRC: Session stats, mentions, themes, indenting, buffer display, and more
mrc-client:
-
A separate set of stats is now shown for displaying local session info, including chatters (count of users in the current room), latency (as calculated by mrc-connector; see below), and mentions. This set of stats is shown by default, with global MRC stats (BBSES, Users, Rooms, and Activity Level) available by using /toggle_stats.
-
Basic mention handling. Messages from others containing the user's alias are highlighted during chat, and the number of times mentioned shows on the status bar.
-
Long chat messages are indented to the width of the time stamp. This is achieved by pre-wrapping the text and inserting spaces after the carriage- returns before passing the msg object to the frame to be displayed.
-
Configurable theme options. User selects a theme by typing /theme . A set of pre-configured theme ini files are included, and the sysop may add or edit them as desired. mrc-client will automatically detect any available theme files matching the pattern "mrc-theme-<theme_name>.ini". The user's selected theme is saved to settings for future sessions.
-
Buffer/MaxBuffer is now shown in the status bar.
-
inputline.max_buffer is now a flat 140, rather than calculated to 140 minus the alias length. This is because the message portion of the message packet is allowed to be 140 characters.
-
PgUp, PgDn, Home, and End all now work in scroll mode.
-
nicklist.transparent property now gets set based on the show_nicks value, in order to get an extra column's worth of width.
-
The user's nicklist preference (toggle_nicks) is saved in settings for future sessions.
-
Added a save_setting function for convenience. Used by both the set_alias and set_theme functions.
mrc-session:
-
mention_count and latency added to state properties.
-
The room_topic session state property now holds the room topic string (previously it wasn't used).
-
Added afk, register, identify, update, and trust commands, so now they can be called directly instead without using /quote.
mrc-connector:
-
Latency is now calculated and passed to mrc-client for display on the status bar. It's the number of milliseconds elapsed between the time the last message was sent and acknowledged by the server.
-
The FROM_SITE constant is now the more descriptive system.name (spaces replaced with underscores) instead of the less descriptive system.qwk_id. This is what gets shown in the /whoon list, as well as whenever a user enters or exits MRC.
-
Stats weren't truly being requested "every 20 seconds" like they're supposed to be. This is fixed.
(this 20-second frequency is hard-coded in Mystic's multiplexer, but maybe this could/should be configurable in the mrc-connector.ini file.)
Things to consider for future revisions (?):
- Let user review history of mentions with option to reset mention counter.
- Banners display; server periodically sends points of interest, and sysop may opt to display local banners.
- Make the top bar 2 rows high; the added row could be used by themes and/or the aforementioned banner display.
- Twit filter.
- Let user change text color using left/right arrows.