diff --git a/changes.txt b/changes.txt index 6fa850a..958d1da 100644 --- a/changes.txt +++ b/changes.txt @@ -1,5 +1,31 @@ -0.8.5.1 (2017-04-14) Latest Version +0.8.6 (2017-05-27) Latest Version + +### General +- Added new Notification system +- Added support for new sub messages +- Added button to sort some setting lists alphabetically +- Changed Emote Context Menu entry "Twitch Profile" to "Twitch Stream" +- Some other Settings Dialog and GUI improvements +- Made Addressbook mod commands channel setting case-insensitive +- Some debug output improvements +- Updated help + +### Custom Commands +- Added custom replacements +- Added $ifeq function +- Added feature to add channel-specific Custom Commands +- Made identifiers case-insensitive +- Allow absolute positioning of Custom Menu Items + +### Bugfixes +- Fixed word wrapping issues (hopefully) +- Fixed selection in chat window moving around +- Added workaround for error occuring in Java 1.8.0_131 (the actual cause of the + error is still unclear, but hopefully this works well enough) + + +0.8.5.1 (2017-04-14) - Fixed Whispering that didn't work due to changed Twitch behaviour - Fixed bug related to Custom Commands which would prevent startup diff --git a/help/Notifications_example.jpg b/help/Notifications_example.jpg new file mode 100644 index 0000000..d5783a0 Binary files /dev/null and b/help/Notifications_example.jpg differ diff --git a/help/help-custom_commands.html b/help/help-custom_commands.html index 917e7c5..43fea0c 100644 --- a/help/help-custom_commands.html +++ b/help/help-custom_commands.html @@ -17,6 +17,7 @@
Hello World!
to chat, just as if you would have written it
yourself and pressed Enter.
+ Adding a #
and a channel name you can restrict the command
+ to that channel:
/hello#joshimuz Hello Joshimuz Chat!
This /hello
command would only be executed in #joshimuz,
+ however if you still have the version without a channel in the Custom
+ Commands list as well, it will fallback to that in other channels. This
+ way to can add variations of commands for specific channels.
Anything starting with $
in the <what the command
should do>
section is treated as some sort of replacement.
@@ -205,15 +217,24 @@
replacements, however they have a function name before the identifier (there
is no short notation for functions):
$<functionName>(<identifier>,<some parameters>)
$<functionName>(<identifier>,<some parameters>,[optional parameters])
The following functions are available:
$if(<identifier>,<replacement if exists>,<replacement if doesn't exist>)
$if(<identifier>,<output if exists>,[output if not])
$if(1,$1,nope)
with parameters cheese cake
turns into cheese
,
- with no parameters turns into nope
$if(1,$1,nope)
with command parameters cheese cake
turns into cheese
,
+ with no parameters turns into nope
, the optional [output if not]
function parameter.$ifeq(<identifier>,<comparison>,<output if equal>,[output if not])
$if
, but instead of just checking fot the
+ existence of a parameter it compares it to a given value
+ (<comparison>
).$ifeq(1,cheesecake,yummy)
with parameters
+ cheesecake
turns into yummy
, with parameters
+ cheese cake
turns into an an empty string, since the
+ optional [output if not]
has not been specified.$join(<identifier>,<separator>)
n/a
has to be
escaped, because the opening one doesn't have a special meaning in this
context and the ones around streamuptime
have a special
- meaning that takes precedence (closing the replacement).
+ meaning that takes precedence (opening/closing the replacement).
+
+ You can create your own identifiers for replacements by adding an entry + to the Custom Commands list starting with an underscore:
+ +_m $ifeq(1,$(chan),,$$1: )
Instead of a command, this creates an identifier that can be used in a + replacement:
+ +/faq $(_m)FAQ: https://pastebin.com/KySx3KDu
When the /faq
command is run, the $(_m)
gets
+ replaced with whatever is defined in _m
, in this case it
+ creates a mention if the first parameter isn't equal to the current
+ channel.
Note: Custom identifiers always start with an + underscore and can themselves not contain replacements with custom + identifiers (well they technicially can, but they won't get replaced).
+Under Settings - Commands
there are several settings that
@@ -285,7 +327,12 @@ Spoiler[S]=/timeout $$1 600 No spoilers
./Message /Report
.Warn User=$$1: Plz no spammerino
-
Note: Command Names/Labels may not contain the
+ characters [ ] { }
except for their special meaning of
+ Shortcuts and Positioning.
You can list the name of several Custom Commands in one line, for example:
/Slap /Permit
Slap
command.
+
You can add a shortcut to the end of a label or command name by enclosing
- it with [ ]
:
[ ]
(square brackets):
/Ban[B]
or Spoiler[S]=/timeout $$1 ..
You can define an absolute position in the menu the entry should appear
+ at by enclosing it with { }
(curly brackets) at the end of
+ the label or command name (but before a shortcut if there is any):
Mention{1}=/insertword $$1: \
This will put the Mention
menu entry at the second
+ position in the menu (counting starts from 0).
Another example:
+ ++@Twitch Stream[s] +.Videos{2}[v]=/openUrlPrompt https://www.twitch.tv/$$1/videos/past-broadcasts +@Important{0} +.Slap=/me slaps $$1 around a bit with a large trout +@Really Important{0} +.FAQ=FAQ: https://pastebin.com/KySx3KDu +
This puts the Videos
entry into the pre-defined
+ Twitch Stream
submenu at the third position in the submenu
+ (also adding the accelerator key s
to the menu and
+ v
to the entry).
It also adds the Important
submenu at the first position
+ (since it hasn't been added yet) and after that adds the
+ Really Important
submenu at the first position as well,
+ moving down Important
. This demonstrates that the
+ positioning is based on the current state of the menu, so it can matter
+ when you add entries with absolute positioning.