TabbyChat

From MinecraftOnline
Jump to navigation Jump to search

TabbyChat 2 is a client modification for 1.12.2 by killjoy1221 that allows for splitting chat messages into multiple tabs using filters. It requires the LiteLoader mod API.

Interface

A large chat window on the top of the screen with a bar of tabs up top and a diagonal arrow button in the top-right corner.
The chat window can be moved with the top bar and resized with the top-right arrow.

Once you have installed TabbyChat and opened the chat window, there will be a tab bar up the top and a diagonal arrow in the top-right corner. You can drag on the tab bar to move the chat window around. Dragging the arrow will resize the window. At first, you will only see a * tab, which has all chat messages in it. Right-click it to open TabbyChat's setting menu.

Click a tab to switch to it, displaying only the messages in that tab. For tabs other than the all (*) tab, right click it to quickly configure it and middle click to dismiss it.

General settings

The general settings page.
  • Log Chat
    • Whether chat messages should be logged by TabbyChat at /<instance_folder>/logs/chat.
    • Does not impact the logs made by Minecraft itself.
  • Split Log
    • Whether TabbyChat's logs (if any) should be split by channel.
  • Timestamp Chat
    • Whether a timestamp should be added to chat messages.
  • Style
    • The time format of the timestamps:
      • Short 24 hour [2359]
      • Short 24 hour with colon [23:59]
      • Short 12 hour [12:00]
      • Short 12 hour with AM/PM designation [12:00PM)
      • Full 24 hour [23:59:01]
      • Full 24 hour [12:00:01]
      • Full 24 hour with AM/PM designation [12:00:01PM]
  • Color
    • The colour of timestamps (Note: Tabbychat always uses American spellings.):
      • White
      • Black
      • Dark Blue
      • Dark Green
      • Dark Aqua
      • Dark Red
      • Dark Purple
      • Gold
      • Grey
      • Dark Grey
      • Blue
      • Green
      • Aqua
      • Red
      • Light Purple
      • Yellow
  • Anti-Spam
    • Filter messages that are identical to the previous one.
    • Does not work if there is another message between the duplicate messages.
    • Notes how many times the message was sent.
  • Prejudice
    • How much messages can differ while still being filtered as spam.
    • Not very useful.
  • Unread Flashing
    • getplayerhead.sh?Ratrun&16.png Ratrun doesn't know what this does.
  • Check for Updates
    • Unimportant, as TabbyChat is no longer maintained.

Server settings

The server settings page.
  • Enable Channels
    • Parse for new channels automatically, using the Channel Pattern.
  • Enable Messages
    • Parse for new private messages, using the Message Pattern.
    • A bit janky; a message you send to another is in a different channel to one that they send to you. The channel names are also quite long.
  • Default Channel checkbox
    • Use default channels
  • Channel Pattern
    • The pattern that TabbyChat uses to find new channels when channels are enabled.
      • [Brackets]
      • (Parenthesis)
      • <(Combo)Pl.>
      • <[Combo]Pl.>
      • <Angles>
      • {Braces}
  • Message Pattern
    • The pattern used to find private messages
      • Whispers
      • Disabled
      • S -> R - this is the format that MinecraftOnline uses
      • To/From
  • Ignored Channels
    • Which channels are ignored.
  • Channel Command
    • Tooltip says "The command to run when the a channel is activated"
    • Command to prefix in front of any messages sent from this tab, such as **/msg** or **/staff**
  • Default channel
    • List of default channels that should be shown (even if there is no filter match yet).

Filters

The edit filter dialogue.

Filters allows you to define custom channels, notify you of certain messages or hide some messages.

The selected filter is shown the the right of the buttons. Use the left and right arrow buttons to select different filters. Use the 'Edit' button to edit the filter. The 'New' button creates a new filter, but does not open the Edit Filter dialogue. The delete button deletes the currently selected filter. Deletion is irreversible and there is no confirmation box.

Once you decide to edit a filter, the Edit Filter dialogue will open:

  • Name
    • The name of the filter in the filters list.
  • Destinations
    • "A comma separated list of channels."
    • You can send matched messages to one, multiple or no channels.
  • '.*' button (Regular Expression)
    • When green, the pattern will use regular expression to match messages.
    • Use regex101.com to learn about and test regular expression.
    • If red, the message must contain a section that matches the filter literally.
  • 'Aa' button (Ignore Case)
    • When green, ignores the casing of letters. 'a' will match both 'a' and 'A'.
    • When red, the pattern is case-sensitive. 'a' will only match 'a'.
  • '&0' button (Raw input)
    • When green, the pattern will look at the raw chat message, including formatting codes.
    • When red, will use the chat message as seen by the player.
    • As there's no way to input the section character, it is best to turn this off.
  • Hide Matches
    • Hides any matched messages from chat.
    • Good for ignoring players.
  • Audio Notification
    • Plays a sound when a message matches.
    • Type the full name of the sound (e.g "minecraft:enitity.experience_orb.pickup") into the box below.
    • Suggestions will be listed above, but you cannot autocomplete.
    • Use the play button to preview the sound.
  • Expression
    • The expression used to match messages.
    • Defaults to ".*". When regular expression is enabled, this will select all.
      • Remove it before typing or pasting anything else in.

Channels

Click a channel to select it.

  • Alias
    • The name of the chat tab for that channel.
  • Prefix
    • A set of characters added to the create message section when you select that channel's tab
  • Hide Prefix
    • Disables the prefix
  • Cmd
    • The command that is executed when you select that tab.
    • Does not activate when a messages is added to the channel.
  • Done
    • Saves the changes that you made.
  • Forget
    • Forgets the channel.

Advanced settings

The advanced settings page.
  • Fade time
    • How long, in ticks, a message should stay for.
    • These are client ticks, so 20 ticks is always 1 second.
  • Chat visibility
    • NORMAL - shows chat normally
    • HIDDEN - does not show chat unless you open the chat window.
    • Always - always shows the full chat window, even when it isn't open.
  • Hide channel delimiters
    • Notes that the feature may not work right
  • Enable spellcheck
    • Checks your spelling when typing, underlining misspells.
    • Annoyingly, it only recognises American spellings; British spellings are marked as misspellings.

Custom filters

See the filters section for how to use these. Do not paste them into chat. getplayerhead.sh?Ratrun&16.png Ratrun still feels silly for trying that. Feel free to add more filters.

^\[\w+->you]

^\[you->\w+]

These two work to match private messages without the jank of the native method. The first one detects inbound messages while the second does ones that you send. This is done so that you can set an audio notification only for inbound messages. You can map both to the same destination channel. This relies on regular expression.

^(\[(IRC(-TR)?|DSC|TG|TR(->(\w+))?)] )?(\[BOT] <CanaryBot> (<McObot> \(MCS\) |<MCO_(Discord|Telegram)> )?)?(<|\[|\* )(\*)*(FOO)\b

By replacing 'FOO' with a list of names separated by pipe | characters (e.g. Foo|Bar|Baz), you can block other people's chat messages. While /ignore can hide ingame messages and ads, this filter can still hide message from people on IRC, Discord or Telegram that staff have not kicked or banned. You have to use the player's nick for each relay that they use.

Note: /ignore is now an easier alternative.