This repository has been archived on 2021-04-17. You can view files and clone it, but cannot push or open issues or pull requests.
uIRC/include/ctcp.h

167 lines
5.6 KiB
C

/*
* This file is part of uIRC. (https://git.redxen.eu/caskd/uIRC)
* Copyright (c) 2019, 2020 Alex-David Denes
*
* uIRC is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* any later version.
*
* uIRC is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with uIRC. If not, see <https://www.gnu.org/licenses/>.
*/
/*! \file */
#ifndef UIRC_GUARD_PUBLIC_CTCP
#define UIRC_GUARD_PUBLIC_CTCP
#ifdef UIRC_FEATURE_CTCP
enum formatting {
IRC_CTCP_BOLD = 0x02,
IRC_CTCP_COLOR = 0x03,
IRC_CTCP_COLOR_HEX = 0x04,
IRC_CTCP_RESET = 0x0F,
IRC_CTCP_MONOSPACE = 0x11,
IRC_CTCP_REVERSE = 0x16,
IRC_CTCP_ITALICS = 0x1D,
IRC_CTCP_STRIKETHROUGH = 0x1E,
IRC_CTCP_UNDERLINE = 0x1F,
};
enum colors {
IRC_CTCP_COLORS_WHITE = 0,
IRC_CTCP_COLORS_BLACK = 1,
IRC_CTCP_COLORS_BLUE,
IRC_CTCP_COLORS_GREEN,
IRC_CTCP_COLORS_RED,
IRC_CTCP_COLORS_BROWN,
IRC_CTCP_COLORS_MAGENTA,
IRC_CTCP_COLORS_ORANGE,
IRC_CTCP_COLORS_YELLOW,
IRC_CTCP_COLORS_LIGHT_GREEN,
IRC_CTCP_COLORS_CYAN,
IRC_CTCP_COLORS_LIGHT_CYAN,
IRC_CTCP_COLORS_LIGHT_BLUE,
IRC_CTCP_COLORS_PINK,
IRC_CTCP_COLORS_GREY,
IRC_CTCP_COLORS_LIGHT_GREY,
IRC_CTCP_COLORS_DEFAULT = 99,
};
short UIRC_FORMAT_ANSI[] = {
[IRC_CTCP_COLORS_WHITE] = 97,
[IRC_CTCP_COLORS_BLACK] = 30,
[IRC_CTCP_COLORS_BLUE] = 34,
[IRC_CTCP_COLORS_GREEN] = 32,
[IRC_CTCP_COLORS_RED] = 31,
[IRC_CTCP_COLORS_BROWN] = 94,
[IRC_CTCP_COLORS_MAGENTA] = 35,
[IRC_CTCP_COLORS_ORANGE] = 166,
[IRC_CTCP_COLORS_YELLOW] = 33,
[IRC_CTCP_COLORS_LIGHT_GREEN] = 92,
[IRC_CTCP_COLORS_CYAN] = 36,
[IRC_CTCP_COLORS_LIGHT_CYAN] = 96,
[IRC_CTCP_COLORS_LIGHT_BLUE] = 94,
[IRC_CTCP_COLORS_PINK] = 127,
[IRC_CTCP_COLORS_GREY] = 90,
[IRC_CTCP_COLORS_LIGHT_GREY] = 37,
[IRC_CTCP_COLORS_DEFAULT] = 39,
[IRC_CTCP_BOLD] = 1,
[IRC_CTCP_RESET] = 0,
[IRC_CTCP_REVERSE] = 7,
[IRC_CTCP_ITALICS] = 3,
[IRC_CTCP_STRIKETHROUGH] = 9,
[IRC_CTCP_UNDERLINE] = 4,
[16] = 52, /* See https://modern.ircdocs.horse/formatting.html */
[17] = 94,
[18] = 100,
[19] = 58,
[20] = 22,
[21] = 29,
[22] = 23,
[23] = 24,
[24] = 17,
[25] = 54,
[26] = 53,
[27] = 89,
[28] = 88,
[29] = 130,
[30] = 142,
[31] = 64,
[32] = 28,
[33] = 35,
[34] = 30,
[35] = 25,
[36] = 18,
[37] = 91,
[38] = 90,
[39] = 125,
[40] = 124,
[41] = 166,
[42] = 184,
[43] = 106,
[44] = 34,
[45] = 49,
[46] = 37,
[47] = 33,
[48] = 19,
[49] = 129,
[50] = 127,
[51] = 161,
[52] = 196,
[53] = 208,
[54] = 226,
[55] = 154,
[56] = 46,
[57] = 86,
[58] = 51,
[59] = 75,
[60] = 21,
[61] = 171,
[62] = 201,
[63] = 198,
[64] = 203,
[65] = 215,
[66] = 227,
[67] = 191,
[68] = 83,
[69] = 122,
[70] = 87,
[71] = 111,
[72] = 63,
[73] = 177,
[74] = 207,
[75] = 205,
[76] = 217,
[77] = 223,
[78] = 229,
[79] = 193,
[80] = 157,
[81] = 158,
[82] = 159,
[83] = 153,
[84] = 147,
[85] = 183,
[86] = 219,
[87] = 212,
[88] = 16,
[89] = 233,
[90] = 235,
[91] = 237,
[92] = 239,
[93] = 241,
[94] = 244,
[95] = 247,
[96] = 250,
[97] = 254,
[98] = 231,
};
#endif /* UIRC_FEATURE_CTCP */
#endif /* UIRC_GUARD_PUBLIC_CTCP */