mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-09 18:49:03 -04:00
Improve support for MOTD escape codes.
- Implement escapes for italic, monospace, and strikethrough. - Use the escape codes in the example MOTDs to demonstrate their formatting effects. - Remove support for octal escape codes. In modern computing octal is rarely used and is confusing for users who might confuse it for decimal.
This commit is contained in:
parent
6d1c1cb517
commit
506344a903
@ -313,6 +313,18 @@
|
||||
|
||||
# Alternate MOTD file for this connect class. The contents of this file are
|
||||
# specified using <files secretmotd="filename"> or <execfiles ...>
|
||||
#
|
||||
# NOTE: the following escape sequences for IRC formatting characters can be
|
||||
# used in your MOTD:
|
||||
# Bold: \b
|
||||
# Color: \c<fg>[,<bg>]
|
||||
# Italic: \i
|
||||
# Monospace: \m (not widely supported)
|
||||
# Reset: \x
|
||||
# Strikethrough: \s (not widely supported)
|
||||
# Underline: \u
|
||||
# See https://defs.ircdocs.horse/info/formatting.html for more information
|
||||
# on client support for formatting characters.
|
||||
motd="secretmotd"
|
||||
|
||||
# port: What port range this user is allowed to connect on. (optional)
|
||||
|
@ -146,19 +146,20 @@ void InspIRCd::ProcessColors(file_cache& input)
|
||||
{
|
||||
std::string character;
|
||||
std::string replace;
|
||||
special_chars(const std::string &c, const std::string &r) : character(c), replace(r) { }
|
||||
}
|
||||
|
||||
special[] = {
|
||||
special_chars("\\002", "\002"), // Bold
|
||||
special_chars("\\037", "\037"), // underline
|
||||
special_chars("\\003", "\003"), // Color
|
||||
special_chars("\\017", "\017"), // Stop colors
|
||||
special_chars("\\u", "\037"), // Alias for underline
|
||||
special_chars("\\b", "\002"), // Alias for Bold
|
||||
special_chars("\\x", "\017"), // Alias for stop
|
||||
special_chars("\\c", "\003"), // Alias for color
|
||||
special_chars("", "")
|
||||
special_chars(const std::string& c, const std::string& r)
|
||||
: character(c)
|
||||
, replace(r)
|
||||
{
|
||||
}
|
||||
} special[] = {
|
||||
special_chars("\\b", "\x02"), // Bold
|
||||
special_chars("\\c", "\x03"), // Color
|
||||
special_chars("\\i", "\x1D"), // Italic
|
||||
special_chars("\\m", "\x11"), // Monospace
|
||||
special_chars("\\s", "\x1E"), // Strikethrough
|
||||
special_chars("\\u", "\x1F"), // Underline
|
||||
special_chars("\\x", "\x0F"), // Reset
|
||||
special_chars("\\", "")
|
||||
};
|
||||
|
||||
for(file_cache::iterator it = input.begin(), it_end = input.end(); it != it_end; it++)
|
||||
|
Loading…
x
Reference in New Issue
Block a user