User Tools

Site Tools



textcommandhelper

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
textcommandhelper [2023/08/01 23:11] – [What it does] mistahmikeytextcommandhelper [2023/08/23 16:27] (current) mistahmikey
Line 6: Line 6:
 TCH allows you to create aliases for long FFXIV text commands that you can subsequently indirectly execute from within FFXIV macros or via the chat window by referencing the aliases.  The FFXIV text command arguments associated with an alias can be up to 1022 characters in length - a substantial increase in what is typically allowed within the game for both the chat window and macro lines.  TCH allows you to pack more FFXIV text commands into your macros or more easily execute long chat FFXIV text command sequences from the chat window. TCH allows you to create aliases for long FFXIV text commands that you can subsequently indirectly execute from within FFXIV macros or via the chat window by referencing the aliases.  The FFXIV text command arguments associated with an alias can be up to 1022 characters in length - a substantial increase in what is typically allowed within the game for both the chat window and macro lines.  TCH allows you to pack more FFXIV text commands into your macros or more easily execute long chat FFXIV text command sequences from the chat window.
  
-TCH provides this capability by leveraging the FFXIV 'echo' text command to submit aliases for execution. Using the TCH "exec" command (/e /exec), multiple aliases can be executed with a single exec command.  Additional features provided are: 1) the ability to specify fine-grained waits between alias executions, effectively providing a concise mini-macro capability, 2) the ability to add color to arbitrary sections of an FFXIV text command, and 3) the ability to paste FFXIV text commands into TCH from the clipboard that contain FFXIV special characters.  The latter two features are useful for the various chat commands like /say, /shout, etc.+TCH provides this capability by leveraging the FFXIV 'echo' text command to submit aliases for execution. Using the TCH "exec" command (/e /exec), multiple aliases can be executed with a single exec command.  Additional features provided are: 
 + 
 +   * The ability to specify fine-grained waits between alias executions, effectively providing a concise mini-macro capability 
 +   * The ability to add color to arbitrary sections of an FFXIV text command 
 +   * The ability to embed hexadecimal character strings that encode FFXIV UTF8 characters or FFXIV message tokens (for fancy characters like the die from the /random FFXIV text command) 
 +   * The ability to paste FFXIV text commands into TCH from the clipboard that contain FFXIV UTF8 characters.  
 + 
 + 
 +The latter three features are useful for the various chat commands like /say, /shout, etc.
  
 ===== Requirements ===== ===== Requirements =====
Line 39: Line 47:
 where 'color', which is case insensitive, can currently be white, black, red, orange, lime, blue, purple, yellow, aqua, fuchsia, gray, green, maroon, navy, olive, silver, teal, brown, pink, and gold. If you specify an unrecognized 'color', it defaults to white. The characters used to specify the color tag do not directly figure into the FFXIV text command arguments' length limitation.  However, before the final FFXIV text command can be executed, TCH encodes all the color tags using FFXIV color frames, and characters required to create the frame do figure into the command arguments length limitation.  This feature was provided primary for use with the FFXIV chat text commands, like /say, /shout, /party, etc. where 'color', which is case insensitive, can currently be white, black, red, orange, lime, blue, purple, yellow, aqua, fuchsia, gray, green, maroon, navy, olive, silver, teal, brown, pink, and gold. If you specify an unrecognized 'color', it defaults to white. The characters used to specify the color tag do not directly figure into the FFXIV text command arguments' length limitation.  However, before the final FFXIV text command can be executed, TCH encodes all the color tags using FFXIV color frames, and characters required to create the frame do figure into the command arguments length limitation.  This feature was provided primary for use with the FFXIV chat text commands, like /say, /shout, /party, etc.
  
-Since the < character is used to introduce color tags, the ability to escape it (or any character) is provided by the \ character.  So to include < in an exec command, you'd type \<.+You may also embed hexadecimal character strings that encode FFXIV UTF8 characters or FFXIV message tokens into your FFXIV command text. The embedded hexadecimal strings have the format: 
 + 
 +[<hexadecimal digits>
 + 
 +where 
 + 
 +<hexadecimal digits> is the desired encoding, and must contain an EVEN number of hexadecimal digits.  For example, to embed the fancy die character that results from a /random FFXIV command, you would enter the FFXIV message token [0212024a03], or to embed the UTF8 die character, you would enter [ee80be].  A decent level of technical skill is required to figure out what the proper sequences are, but for those that have such skill, this allows you to create all manner of fancy messages. In the future I hope to add a tool to TCH that you can use to automatically format selected lines from the chat log to contain the proper embedded hexadecimal strings that correspond to the contained UTF8 characters and FFXIV message tokens. That will allow you to more easily create your own private catalog of encodings that you can cut/paste into commands as you please. 
 + 
 +Since the < character is used to introduce color tags, and the [ character is used to introduce an embedded hexadecimal string, the ability to escape them (or any character) is provided by the \ character.  So to include < in and FFXIV text command, you'd type \<.
  
 ** Note: You must enable TCH in order for it to process the exec command. ** ** Note: You must enable TCH in order for it to process the exec command. **
Line 76: Line 92:
 This control is self-explanatory for the most part; if you enter something wrong, TCH will provide an error popup.  This control is self-explanatory for the most part; if you enter something wrong, TCH will provide an error popup. 
  
-Because the product Minion provides developers to create a UI, IMGui, is a very old version and is quite buggy, there isn't currently an easy way to enter the potentially long text strings you might want to associate with an alias via the Command text field.  I developed a kludge to at least provide for such entry, but it requires you to click in the Command text field to activate it (it cannot be automatically focused via keyboard navigation), and the text field is displayed on a single line in the UI (IMGui does not provide automatic text wrapping.To somewhat mitigate this inconvenience, I also provide a view directly below that the Command text field that shows you a wrapped version of your complete command, and also displays the current lengths of both the FFXIV text command "verb" and it's arguments.  After some testing, I determined that the total length of all arguments can be no more than 1022 characters, and that includes any characters needed to encode color tags into FFXIV color frames, or any FFXIV special characters you paste in, if they are included.  The verb length does not appear to have any impact on the arguments length limitation.+Because the product Minion provides developers to create a UI, IMGui, is a very old version, there isn't currently an easy way to enter the potentially long text strings you might want to associate with an alias via the Command text field.  I developed a kludge to at least provide for such entry, but the input text field can only be displayed on a single line in the UI. To somewhat mitigate this inconvenience, I also provide a view directly below that the Command text field that shows you a wrapped version of your complete command, and also displays the current lengths of both the FFXIV text command "verb" and it's arguments.  After some testing, I determined that the total length of all arguments can be no more than 1022 characters, and that includes any characters needed to encode color tags into FFXIV color frames, or any FFXIV special characters you encode or paste in.  The verb length does not appear to have any impact on the arguments length limitation.
  
-Another quirk of the Command text field is that it is not possible to use Ctrl-V to paste certain UTF8 characters into it, especially the FFXIV special character codes, because IMGui filters them out.  As another kludge workaround, I allow you to do this by using the Paste button that appears below the Command text field.  When you click the Paste button, the contents of the clipboard are appended to the current Command text field contents, and in this case, no characters from the clipboard are filtered out. The Command text field will lose focus when you do this, which is necessary for the kludge to work. This obviously isn't very user friendly, but it's the only way to get those special UTF8 characters into the Command text field.+Another quirk of the Command text field is that it is not possible to use Ctrl-V to paste certain FFXIV UTF8 characters into it because IMGui filters them out.  As another kludge workaround, I allow you to do this by using the Paste button that appears below the Command text field.  When you click the Paste button, the contents of the clipboard are appended to the current Command text field contents, and in this case, no characters from the clipboard are filtered out. This obviously isn't very user friendly, but it's the only way to get those special UTF8 characters into the Command text field.
  
-I realize this method to enter a FFXIV text command is sub-optimal at best, but hopefully is better than nothing.  Be aware that as you edit the command, it will be dimmed to indicate you have changed it from the original, but unfortunately, entering Return or Tab cannot be detected for this control.  So to enter what you have typed in the command control, you must hit the OK button at the bottom of the control.  I apologize for the clunkiness of the Command text field, but it is the best I could come up with at this time.  As a result, I suggest that you use an outside text editor to create the text you want, copy it to the clipboard, then use the Paste button to put it into the Command control.+I realize this method to enter a FFXIV text command is sub-optimal at best, but hopefully is better than nothing.  Be aware that as you edit the command, it will be dimmed to indicate you have changed it from the original, so be sure to hit the enter key before you try to exit the control.   
 + 
 + 
 +To enter what you have typed in the command control, you must hit the OK button at the bottom of the control.  I apologize for the clunkiness of the Command text field, but it is the best I could come up with at this time.  As a result, I suggest that you use an outside text editor to create the text you want, copy it to the clipboard, then use the Paste button to put it into the Command control
 + 
 +Finally, if you have the requisite technical skill, you can use the hexadecimal string embedding feature to encode any fancy character you desire.
  
 Here is the result of executing this particular alias. Here is the result of executing this particular alias.
Line 86: Line 107:
 {{:mistahmikey:textcommandhelper:command_execution_example.png?400|}} {{:mistahmikey:textcommandhelper:command_execution_example.png?400|}}
  
-As you can see, TCH uses the echo command to send the /exec command to the chat window. TCH sees this, and executes the command.  The result:  my multicolored carnival barker shout touting the virtues of TCH; the name has been blanked out to protect the guilty.+As you can see, TCH uses the echo command to send the /exec command to the chat window. TCH sees this, and executes the command.  The result:  my multicolored carnival barker shout with embedded die characters touting the virtues of TCH; the name has been blanked out to protect the guilty.
  
 Theoretically, you should be able to execute any FFXIV text command using TCH. However, as I am but one person, and rarely use FFXIV text commands myself, I have not tested this theory even remotely rigorously. As always, if anything odd pops up, just refer to the support section in this wiki and submit your issue. Theoretically, you should be able to execute any FFXIV text command using TCH. However, as I am but one person, and rarely use FFXIV text commands myself, I have not tested this theory even remotely rigorously. As always, if anything odd pops up, just refer to the support section in this wiki and submit your issue.
- 
- 
- 
- 
  
  
textcommandhelper.1690931514.txt.gz · Last modified: 2023/08/01 23:11 by mistahmikey