no irssi
This commit is contained in:
parent
b8d1157dde
commit
6eb47c0992
393
.irssi/config
393
.irssi/config
|
@ -1,393 +0,0 @@
|
|||
servers = (
|
||||
{ address = "irc.dal.net"; chatnet = "DALnet"; port = "6667"; },
|
||||
{
|
||||
address = "ssl.efnet.org";
|
||||
chatnet = "EFNet";
|
||||
port = "9999";
|
||||
use_tls = "yes";
|
||||
},
|
||||
{
|
||||
address = "irc.esper.net";
|
||||
chatnet = "EsperNet";
|
||||
port = "6697";
|
||||
use_tls = "yes";
|
||||
tls_verify = "yes";
|
||||
},
|
||||
{
|
||||
address = "chat.freenode.net";
|
||||
chatnet = "Freenode";
|
||||
port = "6697";
|
||||
use_tls = "yes";
|
||||
tls_verify = "yes";
|
||||
},
|
||||
{
|
||||
address = "irc.gamesurge.net";
|
||||
chatnet = "GameSurge";
|
||||
port = "6667";
|
||||
},
|
||||
{
|
||||
address = "eu.irc6.net";
|
||||
chatnet = "IRCnet";
|
||||
port = "6667";
|
||||
use_tls = "yes";
|
||||
},
|
||||
{ address = "open.ircnet.net"; chatnet = "IRCnet"; port = "6667"; },
|
||||
{
|
||||
address = "irc.ircsource.net";
|
||||
chatnet = "IRCSource";
|
||||
port = "6667";
|
||||
},
|
||||
{ address = "irc.netfuze.net"; chatnet = "NetFuze"; port = "6667"; },
|
||||
{
|
||||
address = "irc.oftc.net";
|
||||
chatnet = "OFTC";
|
||||
port = "6697";
|
||||
use_tls = "yes";
|
||||
tls_verify = "yes";
|
||||
},
|
||||
{
|
||||
address = "irc.quakenet.org";
|
||||
chatnet = "QuakeNet";
|
||||
port = "6667";
|
||||
},
|
||||
{
|
||||
address = "irc.rizon.net";
|
||||
chatnet = "Rizon";
|
||||
port = "6697";
|
||||
use_tls = "yes";
|
||||
tls_verify = "yes";
|
||||
},
|
||||
{ address = "silc.silcnet.org"; chatnet = "SILC"; port = "706"; },
|
||||
{
|
||||
address = "irc.undernet.org";
|
||||
chatnet = "Undernet";
|
||||
port = "6667";
|
||||
},
|
||||
{
|
||||
address = "tilde.chat";
|
||||
chatnet = "tc";
|
||||
port = "6697";
|
||||
use_tls = "yes";
|
||||
tls_verify = "no";
|
||||
autoconnect = "no";
|
||||
}
|
||||
);
|
||||
|
||||
chatnets = {
|
||||
DALnet = {
|
||||
type = "IRC";
|
||||
max_kicks = "4";
|
||||
max_msgs = "20";
|
||||
max_whois = "30";
|
||||
};
|
||||
EFNet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "4";
|
||||
max_whois = "1";
|
||||
};
|
||||
EsperNet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "4";
|
||||
max_whois = "1";
|
||||
};
|
||||
Freenode = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "4";
|
||||
max_whois = "1";
|
||||
};
|
||||
GameSurge = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
IRCnet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
IRCSource = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "4";
|
||||
max_whois = "1";
|
||||
};
|
||||
NetFuze = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
OFTC = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; };
|
||||
QuakeNet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
Rizon = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
SILC = { type = "SILC"; };
|
||||
Undernet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
tc = { type = "IRC"; };
|
||||
};
|
||||
|
||||
channels = (
|
||||
{ name = "#meta"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#team"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#bots"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#share"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#radiofreqs"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#hamradio"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#rscmakerspace"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#tildetel"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#wilde"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#chaos"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#tilderadio"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#minecraft"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#archlinux"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#lickthecheese"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#cminecraft"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#casino"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#chaoss"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#tildenet"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#brendo"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#starlanes"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#tildecoin"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#tildepi"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#envs"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#one"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#windowsloser"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#pinebox"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#tildemesh"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#furry"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "##jan6"; chatnet = "freenode"; autojoin = "yes"; },
|
||||
{ name = "##share"; chatnet = "freenode"; autojoin = "yes"; },
|
||||
{ name = "##jesopo"; chatnet = "freenode"; autojoin = "yes"; },
|
||||
{ name = "##lickthecheese"; chatnet = "freenode"; autojoin = "yes"; }
|
||||
);
|
||||
|
||||
aliases = {
|
||||
ATAG = "WINDOW SERVER";
|
||||
ADDALLCHANS = "SCRIPT EXEC foreach my \\$channel (Irssi::channels()) { Irssi::command(\"CHANNEL ADD -auto \\$channel->{name} \\$channel->{server}->{tag} \\$channel->{key}\")\\;}";
|
||||
B = "BAN";
|
||||
BACK = "AWAY";
|
||||
BANS = "BAN";
|
||||
BYE = "QUIT";
|
||||
C = "CLEAR";
|
||||
CALC = "EXEC - if command -v bc >/dev/null 2>&1\\; then printf '%s=' '$*'\\; echo '$*' | bc -l\\; else echo bc was not found\\; fi";
|
||||
CHAT = "DCC CHAT";
|
||||
CUBES = "SCRIPT EXEC Irssi::active_win->print(\"%_bases\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { join '', map { \"%x0\\${_}0\\$_\" } '0'..'9','A'..'F' }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print(\"%_cubes\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { my \\$y = \\$_*6 \\; join '', map { my \\$x = \\$_ \\; map { \"%x\\$x\\$_\\$x\\$_\" } @{['0'..'9','A'..'Z']}[\\$y .. \\$y+5] } 1..6 }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) for 0..5 \\; Irssi::active_win->print(\"%_grays\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { join '', map { \"%x7\\${_}7\\$_\" } 'A'..'X' }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print(\"%_mIRC extended colours\", MSGLEVEL_CLIENTCRAP) \\; my \\$x \\; \\$x .= sprintf \"\00399,%02d%02d\",\\$_,\\$_ for 0..15 \\; Irssi::active_win->print(\\$x, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; for my \\$z (0..6) { my \\$x \\; \\$x .= sprintf \"\00399,%02d%02d\",\\$_,\\$_ for 16+(\\$z*12)..16+(\\$z*12)+11 \\; Irssi::active_win->print(\\$x, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) }";
|
||||
DATE = "TIME";
|
||||
DEHIGHLIGHT = "DEHILIGHT";
|
||||
DESCRIBE = "ACTION";
|
||||
DHL = "DEHILIGHT";
|
||||
EXEMPTLIST = "MODE $C +e";
|
||||
EXIT = "QUIT";
|
||||
GOTO = "SCROLLBACK GOTO";
|
||||
HIGHLIGHT = "HILIGHT";
|
||||
HL = "HILIGHT";
|
||||
HOST = "USERHOST";
|
||||
INVITELIST = "MODE $C +I";
|
||||
J = "JOIN";
|
||||
K = "KICK";
|
||||
KB = "KICKBAN";
|
||||
KN = "KNOCKOUT";
|
||||
LAST = "LASTLOG";
|
||||
LEAVE = "PART";
|
||||
M = "MSG";
|
||||
MUB = "UNBAN *";
|
||||
N = "NAMES";
|
||||
NMSG = "^MSG";
|
||||
P = "PART";
|
||||
Q = "QUERY";
|
||||
RESET = "SET -default";
|
||||
RUN = "SCRIPT LOAD";
|
||||
SAY = "MSG *";
|
||||
SB = "SCROLLBACK";
|
||||
SBAR = "STATUSBAR";
|
||||
SIGNOFF = "QUIT";
|
||||
SV = "MSG * Irssi $J ($V) - http://www.irssi.org";
|
||||
T = "TOPIC";
|
||||
UB = "UNBAN";
|
||||
UMODE = "MODE $N";
|
||||
UNSET = "SET -clear";
|
||||
W = "WHO";
|
||||
WC = "WINDOW CLOSE";
|
||||
WG = "WINDOW GOTO";
|
||||
WJOIN = "JOIN -window";
|
||||
WI = "WHOIS";
|
||||
WII = "WHOIS $0 $0";
|
||||
WL = "WINDOW LIST";
|
||||
WN = "WINDOW NEW HIDDEN";
|
||||
WQUERY = "QUERY -window";
|
||||
WW = "WHOWAS";
|
||||
1 = "WINDOW GOTO 1";
|
||||
2 = "WINDOW GOTO 2";
|
||||
3 = "WINDOW GOTO 3";
|
||||
4 = "WINDOW GOTO 4";
|
||||
5 = "WINDOW GOTO 5";
|
||||
6 = "WINDOW GOTO 6";
|
||||
7 = "WINDOW GOTO 7";
|
||||
8 = "WINDOW GOTO 8";
|
||||
9 = "WINDOW GOTO 9";
|
||||
10 = "WINDOW GOTO 10";
|
||||
11 = "WINDOW GOTO 11";
|
||||
12 = "WINDOW GOTO 12";
|
||||
13 = "WINDOW GOTO 13";
|
||||
14 = "WINDOW GOTO 14";
|
||||
15 = "WINDOW GOTO 15";
|
||||
16 = "WINDOW GOTO 16";
|
||||
17 = "WINDOW GOTO 17";
|
||||
18 = "WINDOW GOTO 18";
|
||||
19 = "WINDOW GOTO 19";
|
||||
20 = "WINDOW GOTO 20";
|
||||
21 = "WINDOW GOTO 21";
|
||||
22 = "WINDOW GOTO 22";
|
||||
23 = "WINDOW GOTO 23";
|
||||
24 = "WINDOW GOTO 24";
|
||||
25 = "WINDOW GOTO 25";
|
||||
26 = "WINDOW GOTO 26";
|
||||
27 = "WINDOW GOTO 27";
|
||||
28 = "WINDOW GOTO 28";
|
||||
29 = "WINDOW GOTO 29";
|
||||
30 = "WINDOW GOTO 30";
|
||||
31 = "WINDOW GOTO 31";
|
||||
32 = "WINDOW GOTO 32";
|
||||
33 = "WINDOW GOTO 33";
|
||||
34 = "WINDOW GOTO 34";
|
||||
35 = "WINDOW GOTO 35";
|
||||
36 = "WINDOW GOTO 36";
|
||||
37 = "WINDOW GOTO 37";
|
||||
38 = "WINDOW GOTO 38";
|
||||
39 = "WINDOW GOTO 39";
|
||||
40 = "WINDOW GOTO 40";
|
||||
41 = "WINDOW GOTO 41";
|
||||
42 = "WINDOW GOTO 42";
|
||||
43 = "WINDOW GOTO 43";
|
||||
44 = "WINDOW GOTO 44";
|
||||
45 = "WINDOW GOTO 45";
|
||||
46 = "WINDOW GOTO 46";
|
||||
47 = "WINDOW GOTO 47";
|
||||
48 = "WINDOW GOTO 48";
|
||||
49 = "WINDOW GOTO 49";
|
||||
50 = "WINDOW GOTO 50";
|
||||
51 = "WINDOW GOTO 51";
|
||||
52 = "WINDOW GOTO 52";
|
||||
53 = "WINDOW GOTO 53";
|
||||
54 = "WINDOW GOTO 54";
|
||||
55 = "WINDOW GOTO 55";
|
||||
56 = "WINDOW GOTO 56";
|
||||
57 = "WINDOW GOTO 57";
|
||||
58 = "WINDOW GOTO 58";
|
||||
59 = "WINDOW GOTO 59";
|
||||
60 = "WINDOW GOTO 60";
|
||||
61 = "WINDOW GOTO 61";
|
||||
62 = "WINDOW GOTO 62";
|
||||
63 = "WINDOW GOTO 63";
|
||||
64 = "WINDOW GOTO 64";
|
||||
65 = "WINDOW GOTO 65";
|
||||
66 = "WINDOW GOTO 66";
|
||||
67 = "WINDOW GOTO 67";
|
||||
68 = "WINDOW GOTO 68";
|
||||
69 = "WINDOW GOTO 69";
|
||||
70 = "WINDOW GOTO 70";
|
||||
71 = "WINDOW GOTO 71";
|
||||
72 = "WINDOW GOTO 72";
|
||||
73 = "WINDOW GOTO 73";
|
||||
74 = "WINDOW GOTO 74";
|
||||
75 = "WINDOW GOTO 75";
|
||||
76 = "WINDOW GOTO 76";
|
||||
77 = "WINDOW GOTO 77";
|
||||
78 = "WINDOW GOTO 78";
|
||||
79 = "WINDOW GOTO 79";
|
||||
80 = "WINDOW GOTO 80";
|
||||
81 = "WINDOW GOTO 81";
|
||||
82 = "WINDOW GOTO 82";
|
||||
83 = "WINDOW GOTO 83";
|
||||
84 = "WINDOW GOTO 84";
|
||||
85 = "WINDOW GOTO 85";
|
||||
86 = "WINDOW GOTO 86";
|
||||
87 = "WINDOW GOTO 87";
|
||||
88 = "WINDOW GOTO 88";
|
||||
89 = "WINDOW GOTO 89";
|
||||
90 = "WINDOW GOTO 90";
|
||||
91 = "WINDOW GOTO 91";
|
||||
92 = "WINDOW GOTO 92";
|
||||
93 = "WINDOW GOTO 93";
|
||||
94 = "WINDOW GOTO 94";
|
||||
95 = "WINDOW GOTO 95";
|
||||
96 = "WINDOW GOTO 96";
|
||||
97 = "WINDOW GOTO 97";
|
||||
98 = "WINDOW GOTO 98";
|
||||
99 = "WINDOW GOTO 99";
|
||||
rainbow = "exec -o toilet --irc --gay -f term -- $";
|
||||
gayforce = "exec -o gayforce";
|
||||
};
|
||||
|
||||
settings = {
|
||||
core = {
|
||||
real_name = "LickTheCheese";
|
||||
user_name = "lickthecheese";
|
||||
nick = "lickthecheese";
|
||||
};
|
||||
"fe-text" = { actlist_sort = "refnum"; };
|
||||
"fe-common/core" = { autolog = "yes"; theme = "furry"; };
|
||||
"perl/core/scripts" = {
|
||||
nickcolor_colors = "40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87";
|
||||
};
|
||||
};
|
||||
logs = { };
|
||||
windows = { 1 = { immortal = "yes"; name = "(status)"; level = "ALL"; }; };
|
||||
mainwindows = { 1 = { first_line = "1"; lines = "39"; }; };
|
||||
ignores = ( );
|
||||
statusbar = {
|
||||
default = {
|
||||
window = { placement = "top"; position = "0"; disabled = "yes"; };
|
||||
prompt = {
|
||||
placement = "bottom";
|
||||
items = { user = { }; input = { priority = "10"; }; act = { }; };
|
||||
};
|
||||
topic = {
|
||||
items = {
|
||||
topicbarstart = { priority = "100"; };
|
||||
window = { };
|
||||
window_empty = { };
|
||||
topic = { };
|
||||
topic_empty = { };
|
||||
topicbarend = { priority = "100"; alignment = "right"; };
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
hilights = (
|
||||
{
|
||||
text = "lickthecheese";
|
||||
color = "%G";
|
||||
act_color = "%Y";
|
||||
nick = "no";
|
||||
word = "no";
|
||||
regexp = "yes";
|
||||
},
|
||||
{
|
||||
text = "lick";
|
||||
color = "%G";
|
||||
act_color = "%Y";
|
||||
nick = "no";
|
||||
word = "no";
|
||||
regexp = "yes";
|
||||
}
|
||||
);
|
|
@ -1,509 +0,0 @@
|
|||
servers = (
|
||||
{ address = "irc.dal.net"; chatnet = "DALnet"; port = "6667"; },
|
||||
{
|
||||
address = "ssl.efnet.org";
|
||||
chatnet = "EFNet";
|
||||
port = "9999";
|
||||
use_tls = "yes";
|
||||
},
|
||||
{
|
||||
address = "irc.esper.net";
|
||||
chatnet = "EsperNet";
|
||||
port = "6697";
|
||||
use_tls = "yes";
|
||||
tls_verify = "yes";
|
||||
},
|
||||
{
|
||||
address = "chat.freenode.net";
|
||||
chatnet = "Freenode";
|
||||
port = "6697";
|
||||
use_tls = "yes";
|
||||
tls_verify = "yes";
|
||||
},
|
||||
{
|
||||
address = "irc.gamesurge.net";
|
||||
chatnet = "GameSurge";
|
||||
port = "6667";
|
||||
},
|
||||
{
|
||||
address = "eu.irc6.net";
|
||||
chatnet = "IRCnet";
|
||||
port = "6667";
|
||||
use_tls = "yes";
|
||||
},
|
||||
{ address = "open.ircnet.net"; chatnet = "IRCnet"; port = "6667"; },
|
||||
{
|
||||
address = "irc.ircsource.net";
|
||||
chatnet = "IRCSource";
|
||||
port = "6667";
|
||||
},
|
||||
{ address = "irc.netfuze.net"; chatnet = "NetFuze"; port = "6667"; },
|
||||
{
|
||||
address = "irc.oftc.net";
|
||||
chatnet = "OFTC";
|
||||
port = "6697";
|
||||
use_tls = "yes";
|
||||
tls_verify = "yes";
|
||||
},
|
||||
{
|
||||
address = "irc.quakenet.org";
|
||||
chatnet = "QuakeNet";
|
||||
port = "6667";
|
||||
},
|
||||
{
|
||||
address = "irc.rizon.net";
|
||||
chatnet = "Rizon";
|
||||
port = "6697";
|
||||
use_tls = "yes";
|
||||
tls_verify = "yes";
|
||||
},
|
||||
{ address = "silc.silcnet.org"; chatnet = "SILC"; port = "706"; },
|
||||
{
|
||||
address = "irc.undernet.org";
|
||||
chatnet = "Undernet";
|
||||
port = "6667";
|
||||
},
|
||||
{
|
||||
address = "localhost";
|
||||
chatnet = "tc";
|
||||
port = "6667";
|
||||
use_tls = "no";
|
||||
tls_verify = "no";
|
||||
autoconnect = "yes";
|
||||
}
|
||||
);
|
||||
|
||||
chatnets = {
|
||||
DALnet = {
|
||||
type = "IRC";
|
||||
max_kicks = "4";
|
||||
max_msgs = "20";
|
||||
max_whois = "30";
|
||||
};
|
||||
EFNet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "4";
|
||||
max_whois = "1";
|
||||
};
|
||||
EsperNet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "4";
|
||||
max_whois = "1";
|
||||
};
|
||||
Freenode = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "4";
|
||||
max_whois = "1";
|
||||
};
|
||||
GameSurge = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
IRCnet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
IRCSource = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "4";
|
||||
max_whois = "1";
|
||||
};
|
||||
NetFuze = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
OFTC = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; };
|
||||
QuakeNet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
Rizon = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
SILC = { type = "SILC"; };
|
||||
Undernet = {
|
||||
type = "IRC";
|
||||
max_kicks = "1";
|
||||
max_msgs = "1";
|
||||
max_whois = "1";
|
||||
};
|
||||
tc = {
|
||||
type = "IRC";
|
||||
autosendcmd = "/msg NickServ IDENTIFY varunIrcPassword";
|
||||
};
|
||||
};
|
||||
|
||||
channels = (
|
||||
{ name = "#lobby"; chatnet = "EsperNet"; autojoin = "No"; },
|
||||
{ name = "#freenode"; chatnet = "Freenode"; autojoin = "No"; },
|
||||
{ name = "#irssi"; chatnet = "Freenode"; autojoin = "No"; },
|
||||
{ name = "#gamesurge"; chatnet = "GameSurge"; autojoin = "No"; },
|
||||
{ name = "#irssi"; chatnet = "IRCNet"; autojoin = "No"; },
|
||||
{ name = "#ircsource"; chatnet = "IRCSource"; autojoin = "No"; },
|
||||
{ name = "#netfuze"; chatnet = "NetFuze"; autojoin = "No"; },
|
||||
{ name = "#oftc"; chatnet = "OFTC"; autojoin = "No"; },
|
||||
{ name = "silc"; chatnet = "SILC"; autojoin = "No"; },
|
||||
{ name = "#meta"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#team"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#bots"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#share"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#radiofreqs"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#hamradio"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#rscmakerspace"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#tildetel"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#wilde"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#chaos"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#tilderadio"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#minecraft"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#arch"; chatnet = "tc"; autojoin = "yes"; },
|
||||
{ name = "#lickthecheese"; chatnet = "tc"; autojoin = "yes"; }
|
||||
);
|
||||
|
||||
aliases = {
|
||||
ATAG = "WINDOW SERVER";
|
||||
ADDALLCHANS = "SCRIPT EXEC foreach my \\$channel (Irssi::channels()) { Irssi::command(\"CHANNEL ADD -auto \\$channel->{name} \\$channel->{server}->{tag} \\$channel->{key}\")\\;}";
|
||||
B = "BAN";
|
||||
BACK = "AWAY";
|
||||
BANS = "BAN";
|
||||
BYE = "QUIT";
|
||||
C = "CLEAR";
|
||||
CALC = "EXEC - if command -v bc >/dev/null 2>&1\\; then printf '%s=' '$*'\\; echo '$*' | bc -l\\; else echo bc was not found\\; fi";
|
||||
CHAT = "DCC CHAT";
|
||||
CUBES = "SCRIPT EXEC Irssi::active_win->print(\"%_bases\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { join '', map { \"%x0\\${_}0\\$_\" } '0'..'9','A'..'F' }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print(\"%_cubes\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { my \\$y = \\$_*6 \\; join '', map { my \\$x = \\$_ \\; map { \"%x\\$x\\$_\\$x\\$_\" } @{['0'..'9','A'..'Z']}[\\$y .. \\$y+5] } 1..6 }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) for 0..5 \\; Irssi::active_win->print(\"%_grays\", MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print( do { join '', map { \"%x7\\${_}7\\$_\" } 'A'..'X' }, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; Irssi::active_win->print(\"%_mIRC extended colours\", MSGLEVEL_CLIENTCRAP) \\; my \\$x \\; \\$x .= sprintf \"\00399,%02d%02d\",\\$_,\\$_ for 0..15 \\; Irssi::active_win->print(\\$x, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) \\; for my \\$z (0..6) { my \\$x \\; \\$x .= sprintf \"\00399,%02d%02d\",\\$_,\\$_ for 16+(\\$z*12)..16+(\\$z*12)+11 \\; Irssi::active_win->print(\\$x, MSGLEVEL_NEVER | MSGLEVEL_CLIENTCRAP) }";
|
||||
DATE = "TIME";
|
||||
DEHIGHLIGHT = "DEHILIGHT";
|
||||
DESCRIBE = "ACTION";
|
||||
DHL = "DEHILIGHT";
|
||||
EXEMPTLIST = "MODE $C +e";
|
||||
EXIT = "QUIT";
|
||||
GOTO = "SCROLLBACK GOTO";
|
||||
HIGHLIGHT = "HILIGHT";
|
||||
HL = "HILIGHT";
|
||||
HOST = "USERHOST";
|
||||
INVITELIST = "MODE $C +I";
|
||||
J = "JOIN";
|
||||
K = "KICK";
|
||||
KB = "KICKBAN";
|
||||
KN = "KNOCKOUT";
|
||||
LAST = "LASTLOG";
|
||||
LEAVE = "PART";
|
||||
M = "MSG";
|
||||
MUB = "UNBAN *";
|
||||
N = "NAMES";
|
||||
NMSG = "^MSG";
|
||||
P = "PART";
|
||||
Q = "QUERY";
|
||||
RESET = "SET -default";
|
||||
RUN = "SCRIPT LOAD";
|
||||
SAY = "MSG *";
|
||||
SB = "SCROLLBACK";
|
||||
SBAR = "STATUSBAR";
|
||||
SIGNOFF = "QUIT";
|
||||
SV = "MSG * Irssi $J ($V) - http://www.irssi.org";
|
||||
T = "TOPIC";
|
||||
UB = "UNBAN";
|
||||
UMODE = "MODE $N";
|
||||
UNSET = "SET -clear";
|
||||
W = "WHO";
|
||||
WC = "WINDOW CLOSE";
|
||||
WG = "WINDOW GOTO";
|
||||
WJOIN = "JOIN -window";
|
||||
WI = "WHOIS";
|
||||
WII = "WHOIS $0 $0";
|
||||
WL = "WINDOW LIST";
|
||||
WN = "WINDOW NEW HIDDEN";
|
||||
WQUERY = "QUERY -window";
|
||||
WW = "WHOWAS";
|
||||
1 = "WINDOW GOTO 1";
|
||||
2 = "WINDOW GOTO 2";
|
||||
3 = "WINDOW GOTO 3";
|
||||
4 = "WINDOW GOTO 4";
|
||||
5 = "WINDOW GOTO 5";
|
||||
6 = "WINDOW GOTO 6";
|
||||
7 = "WINDOW GOTO 7";
|
||||
8 = "WINDOW GOTO 8";
|
||||
9 = "WINDOW GOTO 9";
|
||||
10 = "WINDOW GOTO 10";
|
||||
11 = "WINDOW GOTO 11";
|
||||
12 = "WINDOW GOTO 12";
|
||||
13 = "WINDOW GOTO 13";
|
||||
14 = "WINDOW GOTO 14";
|
||||
15 = "WINDOW GOTO 15";
|
||||
16 = "WINDOW GOTO 16";
|
||||
17 = "WINDOW GOTO 17";
|
||||
18 = "WINDOW GOTO 18";
|
||||
19 = "WINDOW GOTO 19";
|
||||
20 = "WINDOW GOTO 20";
|
||||
21 = "WINDOW GOTO 21";
|
||||
22 = "WINDOW GOTO 22";
|
||||
23 = "WINDOW GOTO 23";
|
||||
24 = "WINDOW GOTO 24";
|
||||
25 = "WINDOW GOTO 25";
|
||||
26 = "WINDOW GOTO 26";
|
||||
27 = "WINDOW GOTO 27";
|
||||
28 = "WINDOW GOTO 28";
|
||||
29 = "WINDOW GOTO 29";
|
||||
30 = "WINDOW GOTO 30";
|
||||
31 = "WINDOW GOTO 31";
|
||||
32 = "WINDOW GOTO 32";
|
||||
33 = "WINDOW GOTO 33";
|
||||
34 = "WINDOW GOTO 34";
|
||||
35 = "WINDOW GOTO 35";
|
||||
36 = "WINDOW GOTO 36";
|
||||
37 = "WINDOW GOTO 37";
|
||||
38 = "WINDOW GOTO 38";
|
||||
39 = "WINDOW GOTO 39";
|
||||
40 = "WINDOW GOTO 40";
|
||||
41 = "WINDOW GOTO 41";
|
||||
42 = "WINDOW GOTO 42";
|
||||
43 = "WINDOW GOTO 43";
|
||||
44 = "WINDOW GOTO 44";
|
||||
45 = "WINDOW GOTO 45";
|
||||
46 = "WINDOW GOTO 46";
|
||||
47 = "WINDOW GOTO 47";
|
||||
48 = "WINDOW GOTO 48";
|
||||
49 = "WINDOW GOTO 49";
|
||||
50 = "WINDOW GOTO 50";
|
||||
51 = "WINDOW GOTO 51";
|
||||
52 = "WINDOW GOTO 52";
|
||||
53 = "WINDOW GOTO 53";
|
||||
54 = "WINDOW GOTO 54";
|
||||
55 = "WINDOW GOTO 55";
|
||||
56 = "WINDOW GOTO 56";
|
||||
57 = "WINDOW GOTO 57";
|
||||
58 = "WINDOW GOTO 58";
|
||||
59 = "WINDOW GOTO 59";
|
||||
60 = "WINDOW GOTO 60";
|
||||
61 = "WINDOW GOTO 61";
|
||||
62 = "WINDOW GOTO 62";
|
||||
63 = "WINDOW GOTO 63";
|
||||
64 = "WINDOW GOTO 64";
|
||||
65 = "WINDOW GOTO 65";
|
||||
66 = "WINDOW GOTO 66";
|
||||
67 = "WINDOW GOTO 67";
|
||||
68 = "WINDOW GOTO 68";
|
||||
69 = "WINDOW GOTO 69";
|
||||
70 = "WINDOW GOTO 70";
|
||||
71 = "WINDOW GOTO 71";
|
||||
72 = "WINDOW GOTO 72";
|
||||
73 = "WINDOW GOTO 73";
|
||||
74 = "WINDOW GOTO 74";
|
||||
75 = "WINDOW GOTO 75";
|
||||
76 = "WINDOW GOTO 76";
|
||||
77 = "WINDOW GOTO 77";
|
||||
78 = "WINDOW GOTO 78";
|
||||
79 = "WINDOW GOTO 79";
|
||||
80 = "WINDOW GOTO 80";
|
||||
81 = "WINDOW GOTO 81";
|
||||
82 = "WINDOW GOTO 82";
|
||||
83 = "WINDOW GOTO 83";
|
||||
84 = "WINDOW GOTO 84";
|
||||
85 = "WINDOW GOTO 85";
|
||||
86 = "WINDOW GOTO 86";
|
||||
87 = "WINDOW GOTO 87";
|
||||
88 = "WINDOW GOTO 88";
|
||||
89 = "WINDOW GOTO 89";
|
||||
90 = "WINDOW GOTO 90";
|
||||
91 = "WINDOW GOTO 91";
|
||||
92 = "WINDOW GOTO 92";
|
||||
93 = "WINDOW GOTO 93";
|
||||
94 = "WINDOW GOTO 94";
|
||||
95 = "WINDOW GOTO 95";
|
||||
96 = "WINDOW GOTO 96";
|
||||
97 = "WINDOW GOTO 97";
|
||||
98 = "WINDOW GOTO 98";
|
||||
99 = "WINDOW GOTO 99";
|
||||
rainbow = "exec -o toilet --irc --gay -f term -- $";
|
||||
};
|
||||
|
||||
statusbar = {
|
||||
|
||||
items = {
|
||||
|
||||
barstart = "{sbstart}";
|
||||
barend = "{sbend}";
|
||||
|
||||
topicbarstart = "{topicsbstart}";
|
||||
topicbarend = "{topicsbend}";
|
||||
|
||||
time = "{sb $Z}";
|
||||
user = "{sb {sbnickmode $cumode}$N{sbmode $usermode}{sbaway $A}}";
|
||||
|
||||
window = "{sb $winref:$tag/$itemname{sbmode $M}}";
|
||||
window_empty = "{sb $winref{sbservertag $tag}}";
|
||||
|
||||
prompt = "{prompt $[.15]itemname}";
|
||||
prompt_empty = "{prompt $winname}";
|
||||
|
||||
topic = " $topic";
|
||||
topic_empty = " Irssi v$J - http://www.irssi.org";
|
||||
|
||||
lag = "{sb Lag: $0-}";
|
||||
act = "{sb Act: $0-}";
|
||||
more = "-- more --";
|
||||
};
|
||||
|
||||
default = {
|
||||
|
||||
window = {
|
||||
|
||||
disabled = "no";
|
||||
type = "window";
|
||||
placement = "bottom";
|
||||
position = "1";
|
||||
visible = "active";
|
||||
|
||||
items = {
|
||||
barstart = { priority = "100"; };
|
||||
time = { };
|
||||
user = { };
|
||||
window = { };
|
||||
window_empty = { };
|
||||
lag = { priority = "-1"; };
|
||||
act = { priority = "10"; };
|
||||
more = { priority = "-1"; alignment = "right"; };
|
||||
barend = { priority = "100"; alignment = "right"; };
|
||||
};
|
||||
};
|
||||
|
||||
window_inact = {
|
||||
|
||||
type = "window";
|
||||
placement = "bottom";
|
||||
position = "1";
|
||||
visible = "inactive";
|
||||
|
||||
items = {
|
||||
barstart = { priority = "100"; };
|
||||
window = { };
|
||||
window_empty = { };
|
||||
more = { priority = "-1"; alignment = "right"; };
|
||||
barend = { priority = "100"; alignment = "right"; };
|
||||
};
|
||||
};
|
||||
|
||||
prompt = {
|
||||
|
||||
type = "root";
|
||||
placement = "bottom";
|
||||
position = "100";
|
||||
visible = "always";
|
||||
|
||||
items = {
|
||||
prompt = { priority = "-1"; };
|
||||
prompt_empty = { priority = "-1"; };
|
||||
input = { priority = "10"; };
|
||||
};
|
||||
};
|
||||
|
||||
topic = {
|
||||
|
||||
type = "root";
|
||||
placement = "top";
|
||||
position = "1";
|
||||
visible = "always";
|
||||
|
||||
items = {
|
||||
topicbarstart = { priority = "100"; };
|
||||
topic = { };
|
||||
topic_empty = { };
|
||||
topicbarend = { priority = "100"; alignment = "right"; };
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
settings = {
|
||||
core = {
|
||||
real_name = "LickTheCheese";
|
||||
user_name = "lickthecheese";
|
||||
nick = "lickthecheese";
|
||||
};
|
||||
"fe-text" = { actlist_sort = "refnum"; };
|
||||
"fe-common/core" = {
|
||||
autolog = "yes";
|
||||
autolog_level = "ALL -CRAP -CLIENTCRAP -CTCPS";
|
||||
};
|
||||
};
|
||||
logs = {
|
||||
"~/irc.log.(status)" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "1"; } );
|
||||
};
|
||||
"~/irc.log.Window2" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "2"; } );
|
||||
};
|
||||
"~/irc.log.Window3" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "3"; } );
|
||||
};
|
||||
"~/irc.log.Window4" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "4"; } );
|
||||
};
|
||||
"~/irc.log.Window5" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "5"; } );
|
||||
};
|
||||
"~/irc.log.Window6" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "6"; } );
|
||||
};
|
||||
"~/irc.log.Window7" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "7"; } );
|
||||
};
|
||||
"~/irc.log.Window8" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "8"; } );
|
||||
};
|
||||
"~/irc.log.Window9" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "9"; } );
|
||||
};
|
||||
"~/irc.log.Window10" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "10"; } );
|
||||
};
|
||||
"~/irc.log.Window11" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "11"; } );
|
||||
};
|
||||
"~/irc.log.Window12" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "12"; } );
|
||||
};
|
||||
"~/irc.log.Window13" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "13"; } );
|
||||
};
|
||||
"~/irc.log.Window14" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "14"; } );
|
||||
};
|
||||
"~/irc.log.Window15" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "15"; } );
|
||||
};
|
||||
"~/irc.log.Window16" = {
|
||||
level = "ALL";
|
||||
items = ( { type = "window"; name = "16"; } );
|
||||
};
|
||||
};
|
||||
windows = { 1 = { immortal = "yes"; name = "(status)"; level = "ALL"; }; };
|
||||
mainwindows = { 1 = { first_line = "1"; lines = "39"; }; };
|
|
@ -1,301 +0,0 @@
|
|||
# When testing changes, the easiest way to reload the theme is with /RELOAD.
|
||||
# This reloads the configuration file too, so if you did any changes remember
|
||||
# to /SAVE it first. Remember also that /SAVE overwrites the theme file with
|
||||
# old data so keep backups :)
|
||||
|
||||
# TEMPLATES:
|
||||
|
||||
# The real text formats that irssi uses are the ones you can find with
|
||||
# /FORMAT command. Back in the old days all the colors and texts were mixed
|
||||
# up in those formats, and it was really hard to change the colors since you
|
||||
# might have had to change them in tens of different places. So, then came
|
||||
# this templating system.
|
||||
|
||||
# Now the /FORMATs don't have any colors in them, and they also have very
|
||||
# little other styling. Most of the stuff you need to change is in this
|
||||
# theme file. If you can't change something here, you can always go back
|
||||
# to change the /FORMATs directly, they're also saved in these .theme files.
|
||||
|
||||
# So .. the templates. They're those {blahblah} parts you see all over the
|
||||
# /FORMATs and here. Their usage is simply {name parameter1 parameter2}.
|
||||
# When irssi sees this kind of text, it goes to find "name" from abstracts
|
||||
# block below and sets "parameter1" into $0 and "parameter2" into $1 (you
|
||||
# can have more parameters of course). Templates can have subtemplates.
|
||||
# Here's a small example:
|
||||
# /FORMAT format hello {colorify {underline world}}
|
||||
# abstracts = { colorify = "%G$0-%n"; underline = "%U$0-%U"; }
|
||||
# When irssi expands the templates in "format", the final string would be:
|
||||
# hello %G%Uworld%U%n
|
||||
# ie. underlined bright green "world" text.
|
||||
# and why "$0-", why not "$0"? $0 would only mean the first parameter,
|
||||
# $0- means all the parameters. With {underline hello world} you'd really
|
||||
# want to underline both of the words, not just the hello (and world would
|
||||
# actually be removed entirely).
|
||||
|
||||
# COLORS:
|
||||
|
||||
# You can find definitions for the color format codes in docs/formats.txt.
|
||||
|
||||
# There's one difference here though. %n format. Normally it means the
|
||||
# default color of the terminal (white mostly), but here it means the
|
||||
# "reset color back to the one it was in higher template". For example
|
||||
# if there was /FORMAT test %g{foo}bar, and foo = "%Y$0%n", irssi would
|
||||
# print yellow "foo" (as set with %Y) but "bar" would be green, which was
|
||||
# set at the beginning before the {foo} template. If there wasn't the %g
|
||||
# at start, the normal behaviour of %n would occur. If you _really_ want
|
||||
# to use the terminal's default color, use %N.
|
||||
|
||||
#############################################################################
|
||||
|
||||
# default foreground color (%N) - -1 is the "default terminal color"
|
||||
default_color = "-1";
|
||||
|
||||
# print timestamp/servertag at the end of line, not at beginning
|
||||
info_eol = "false";
|
||||
|
||||
# these characters are automatically replaced with specified color
|
||||
# (dark grey by default)
|
||||
replaces = { "[]=" = "%K$*%n"; };
|
||||
|
||||
abstracts = {
|
||||
##
|
||||
## generic
|
||||
##
|
||||
|
||||
# text to insert at the beginning of each non-message line
|
||||
line_start = "%B-%n!%B-%n ";
|
||||
|
||||
# timestamp styling, nothing by default
|
||||
timestamp = "$*";
|
||||
|
||||
# any kind of text that needs hilighting, default is to bold
|
||||
hilight = "%_$*%_";
|
||||
|
||||
# any kind of error message, default is bright red
|
||||
error = "%R$*%n";
|
||||
|
||||
# channel name is printed
|
||||
channel = "%_$*%_";
|
||||
|
||||
# nick is printed
|
||||
nick = "%_$*%_";
|
||||
|
||||
# nick host is printed
|
||||
nickhost = "[$*]";
|
||||
|
||||
# server name is printed
|
||||
server = "%_$*%_";
|
||||
|
||||
# some kind of comment is printed
|
||||
comment = "[$*]";
|
||||
|
||||
# reason for something is printed (part, quit, kick, ..)
|
||||
reason = "{comment $*}";
|
||||
|
||||
# mode change is printed ([+o nick])
|
||||
mode = "{comment $*}";
|
||||
|
||||
##
|
||||
## channel specific messages
|
||||
##
|
||||
|
||||
# highlighted nick/host is printed (joins)
|
||||
channick_hilight = "%C$*%n";
|
||||
chanhost_hilight = "{nickhost %c$*%n}";
|
||||
|
||||
# nick/host is printed (parts, quits, etc.)
|
||||
channick = "%c$*%n";
|
||||
chanhost = "{nickhost $*}";
|
||||
|
||||
# highlighted channel name is printed
|
||||
channelhilight = "%c$*%n";
|
||||
|
||||
# ban/ban exception/invite list mask is printed
|
||||
ban = "%c$*%n";
|
||||
|
||||
##
|
||||
## messages
|
||||
##
|
||||
|
||||
# the basic styling of how to print message, $0 = nick mode, $1 = nick
|
||||
msgnick = "%K<%n$0$1-%K>%n %|";
|
||||
|
||||
# message from you is printed. "ownnick" specifies the styling of the
|
||||
# nick ($0 part in msgnick) and "ownmsgnick" specifies the styling of the
|
||||
# whole line.
|
||||
|
||||
# Example1: You want the message text to be green:
|
||||
# ownmsgnick = "{msgnick $0 $1-}%g";
|
||||
# Example2.1: You want < and > chars to be yellow:
|
||||
# ownmsgnick = "%Y{msgnick $0 $1-%Y}%n";
|
||||
# (you'll also have to remove <> from replaces list above)
|
||||
# Example2.2: But you still want to keep <> grey for other messages:
|
||||
# pubmsgnick = "%K{msgnick $0 $1-%K}%n";
|
||||
# pubmsgmenick = "%K{msgnick $0 $1-%K}%n";
|
||||
# pubmsghinick = "%K{msgnick $1 $0$2-%n%K}%n";
|
||||
# ownprivmsgnick = "%K{msgnick $*%K}%n";
|
||||
# privmsgnick = "%K{msgnick %R$*%K}%n";
|
||||
|
||||
# $0 = nick mode, $1 = nick
|
||||
ownmsgnick = "{msgnick $0 $1-}";
|
||||
ownnick = "%_$*%n";
|
||||
|
||||
# public message in channel, $0 = nick mode, $1 = nick
|
||||
pubmsgnick = "{msgnick $0 $1-}";
|
||||
pubnick = "%N$*%n";
|
||||
|
||||
# public message in channel meant for me, $0 = nick mode, $1 = nick
|
||||
pubmsgmenick = "{msgnick $0 $1-}";
|
||||
menick = "%Y$*%n";
|
||||
|
||||
# public highlighted message in channel
|
||||
# $0 = highlight color, $1 = nick mode, $2 = nick
|
||||
pubmsghinick = "{msgnick $1 $0$2-%n}";
|
||||
|
||||
# channel name is printed with message
|
||||
msgchannel = "%K:%c$*%n";
|
||||
|
||||
# private message, $0 = nick, $1 = host
|
||||
privmsg = "[%R$0%K(%r$1-%K)%n] ";
|
||||
|
||||
# private message from you, $0 = "msg", $1 = target nick
|
||||
ownprivmsg = "[%r$0%K(%R$1-%K)%n] ";
|
||||
|
||||
# own private message in query
|
||||
ownprivmsgnick = "{msgnick $*}";
|
||||
ownprivnick = "%_$*%n";
|
||||
|
||||
# private message in query
|
||||
privmsgnick = "{msgnick %R$*%n}";
|
||||
|
||||
##
|
||||
## Actions (/ME stuff)
|
||||
##
|
||||
|
||||
# used internally by this theme
|
||||
action_core = "%_ * $*%n";
|
||||
|
||||
# generic one that's used by most actions
|
||||
action = "{action_core $*} ";
|
||||
|
||||
# own action, both private/public
|
||||
ownaction = "{action $*}";
|
||||
|
||||
# own action with target, both private/public
|
||||
ownaction_target = "{action_core $0}%K:%c$1%n ";
|
||||
|
||||
# private action sent by others
|
||||
pvtaction = "%_ (*) $*%n ";
|
||||
pvtaction_query = "{action $*}";
|
||||
|
||||
# public action sent by others
|
||||
pubaction = "{action $*}";
|
||||
|
||||
|
||||
##
|
||||
## other IRC events
|
||||
##
|
||||
|
||||
# whois
|
||||
whois = "%# $[8]0 : $1-";
|
||||
|
||||
# notices
|
||||
ownnotice = "[%r$0%K(%R$1-%K)]%n ";
|
||||
notice = "%K-%M$*%K-%n ";
|
||||
pubnotice_channel = "%K:%m$*";
|
||||
pvtnotice_host = "%K(%m$*%K)";
|
||||
servernotice = "%g!$*%n ";
|
||||
|
||||
# CTCPs
|
||||
ownctcp = "[%r$0%K(%R$1-%K)] ";
|
||||
ctcp = "%g$*%n";
|
||||
|
||||
# wallops
|
||||
wallop = "%_$*%n: ";
|
||||
wallop_nick = "%n$*";
|
||||
wallop_action = "%_ * $*%n ";
|
||||
|
||||
# netsplits
|
||||
netsplit = "%R$*%n";
|
||||
netjoin = "%C$*%n";
|
||||
|
||||
# /names list
|
||||
names_prefix = "";
|
||||
names_nick = "[%_$0%_$1-] ";
|
||||
names_nick_op = "{names_nick $*}";
|
||||
names_nick_halfop = "{names_nick $*}";
|
||||
names_nick_voice = "{names_nick $*}";
|
||||
names_users = "[%g$*%n]";
|
||||
names_channel = "%G$*%n";
|
||||
|
||||
# DCC
|
||||
dcc = "%g$*%n";
|
||||
dccfile = "%_$*%_";
|
||||
|
||||
# DCC chat, own msg/action
|
||||
dccownmsg = "[%r$0%K($1-%K)%n] ";
|
||||
dccownnick = "%R$*%n";
|
||||
dccownquerynick = "%_$*%n";
|
||||
dccownaction = "{action $*}";
|
||||
dccownaction_target = "{action_core $0}%K:%c$1%n ";
|
||||
|
||||
# DCC chat, others
|
||||
dccmsg = "[%G$1-%K(%g$0%K)%n] ";
|
||||
dccquerynick = "%G$*%n";
|
||||
dccaction = "%_ (*dcc*) $*%n %|";
|
||||
|
||||
##
|
||||
## statusbar
|
||||
##
|
||||
|
||||
# default background for all statusbars. You can also give
|
||||
# the default foreground color for statusbar items.
|
||||
sb_background = "%4%w";
|
||||
|
||||
# default backround for "default" statusbar group
|
||||
#sb_default_bg = "%4";
|
||||
# background for prompt / input line
|
||||
sb_prompt_bg = "%n";
|
||||
# background for info statusbar
|
||||
sb_info_bg = "%8";
|
||||
# background for topicbar (same default)
|
||||
#sb_topic_bg = "%4";
|
||||
|
||||
# text at the beginning of statusbars. sb-item already puts
|
||||
# space there,so we don't use anything by default.
|
||||
sbstart = "";
|
||||
# text at the end of statusbars. Use space so that it's never
|
||||
# used for anything.
|
||||
sbend = " ";
|
||||
|
||||
topicsbstart = "{sbstart $*}";
|
||||
topicsbend = "{sbend $*}";
|
||||
|
||||
prompt = "[$*] ";
|
||||
|
||||
sb = " %c[%n$*%c]%n";
|
||||
sbmode = "(%c+%n$*)";
|
||||
sbaway = " (%GzZzZ%n)";
|
||||
sbservertag = ":$0 (change with ^X)";
|
||||
sbnickmode = "$0";
|
||||
|
||||
# activity in statusbar
|
||||
|
||||
# ',' separator
|
||||
sb_act_sep = "%c$*";
|
||||
# normal text
|
||||
sb_act_text = "%c$*";
|
||||
# public message
|
||||
sb_act_msg = "%W$*";
|
||||
# hilight
|
||||
sb_act_hilight = "%M$*";
|
||||
# hilight with specified color, $0 = color, $1 = text
|
||||
sb_act_hilight_color = "$0$1-%n";
|
||||
};
|
||||
formats = {
|
||||
"fe-common/core" = {
|
||||
timestamp = "{timestamp %%H:%%M:%%S} ";
|
||||
own_msg = "{ownmsgnick $2 {ownnick $[0]0}}$1";
|
||||
pubmsg = "{pubmsgnick $2 {pubnick \00304$[0]0}}$1";
|
||||
};
|
||||
};
|
|
@ -1,267 +0,0 @@
|
|||
#########################################################################
|
||||
# #
|
||||
# Furry - An Irssi theme by Cene #
|
||||
# Contact: Cene @ IRCnet, Qnet, Netgamers, Gamesurge #
|
||||
# Idle #ppyo @ Gamesurge kthx >;) #
|
||||
# I hope you enjoy this theme as much as I did creating it #
|
||||
# #
|
||||
#########################################################################
|
||||
|
||||
#
|
||||
# To use this theme, put it in your Irssi directory and use /set theme furry
|
||||
#
|
||||
|
||||
#############################################################################
|
||||
|
||||
# default foreground color (%N) - -1 is the "default terminal color"
|
||||
default_color = "-1";
|
||||
|
||||
# print timestamp/servertag at the end of line, not at beginning
|
||||
info_eol = "false";
|
||||
|
||||
# these characters are automatically replaced with specified color
|
||||
# (dark grey by default)
|
||||
replaces = { "[]=" = "%K$*%n"; };
|
||||
|
||||
abstracts = {
|
||||
##
|
||||
## generic
|
||||
##
|
||||
|
||||
# text to insert at the beginning of each non-message line
|
||||
line_start = "%B-%W!%B-%n ";
|
||||
|
||||
# timestamp styling, nothing by default
|
||||
timestamp = "$*";
|
||||
|
||||
# any kind of text that needs hilighting, default is to bold
|
||||
hilight = "%_$*%_";
|
||||
|
||||
# any kind of error message, default is bright red
|
||||
error = "%R$*%n";
|
||||
|
||||
# channel name is printed
|
||||
channel = "%_$*%_";
|
||||
|
||||
# nick is printed
|
||||
nick = "%_$*%_";
|
||||
|
||||
# nick host is printed
|
||||
nickhost = "[$*]";
|
||||
|
||||
# server name is printed
|
||||
server = "%_$*%_";
|
||||
|
||||
# some kind of comment is printed
|
||||
comment = "[$*]";
|
||||
|
||||
# reason for something is printed (part, quit, kick, ..)
|
||||
reason = "{comment $*}";
|
||||
|
||||
# mode change is printed ([+o nick])
|
||||
mode = "{comment $*}";
|
||||
|
||||
##
|
||||
## channel specific messages
|
||||
##
|
||||
|
||||
# highlighted nick/host is printed (joins)
|
||||
channick_hilight = "%C$*%n";
|
||||
chanhost_hilight = "{nickhost %c$*%n}";
|
||||
|
||||
# nick/host is printed (parts, quits, etc.)
|
||||
channick = "%c$*%n";
|
||||
chanhost = "{nickhost $*}";
|
||||
|
||||
# highlighted channel name is printed
|
||||
channelhilight = "%c$*%n";
|
||||
|
||||
# ban/ban exception/invite list mask is printed
|
||||
ban = "%c$*%n";
|
||||
|
||||
##
|
||||
## messages
|
||||
##
|
||||
|
||||
# the basic styling of how to print message, $0 = nick mode, $1 = nick
|
||||
msgnick = "%K<%w$0%n$1-%K>%n %|";
|
||||
|
||||
# message from you is printed. "msgownnick" specifies the styling of the
|
||||
# nick ($0 part in msgnick) and "ownmsgnick" specifies the styling of the
|
||||
# whole line.
|
||||
|
||||
# Example1: You want the message text to be green:
|
||||
# ownmsgnick = "{msgnick $0 $1-}%g";
|
||||
# Example2.1: You want < and > chars to be yellow:
|
||||
# ownmsgnick = "%Y{msgnick $0 $1-%Y}%n";
|
||||
# (you'll also have to remove <> from replaces list above)
|
||||
# Example2.2: But you still want to keep <> grey for other messages:
|
||||
# pubmsgnick = "%K{msgnick $0 $1-%K}%n";
|
||||
# pubmsgmenick = "%K{msgnick $0 $1-%K}%n";
|
||||
# pubmsghinick = "%K{msgnick $1 $0$2-%n%K}%n";
|
||||
# ownprivmsgnick = "%K{msgnick $*%K}%n";
|
||||
# privmsgnick = "%K{msgnick %R$*%K}%n";
|
||||
|
||||
# $0 = nick mode, $1 = nick
|
||||
ownmsgnick = "{msgnick $0 $1-}";
|
||||
ownnick = "%W$*%n";
|
||||
|
||||
# public message in channel, $0 = nick mode, $1 = nick
|
||||
pubmsgnick = "{msgnick $0 $1-}";
|
||||
pubnick = "%N$*%n";
|
||||
|
||||
# public message in channel meant for me, $0 = nick mode, $1 = nick
|
||||
pubmsgmenick = "{msgnick $0 $1-}";
|
||||
menick = "%Y$*%n";
|
||||
|
||||
# public highlighted message in channel
|
||||
# $0 = highlight color, $1 = nick mode, $2 = nick
|
||||
pubmsghinick = "{msgnick $1 $0$2-%n}";
|
||||
|
||||
# channel name is printed with message
|
||||
msgchannel = "%K:%c$*%n";
|
||||
|
||||
# private message, $0 = nick, $1 = host
|
||||
privmsg = "[%R$0%K(%r$1-%K)%n] ";
|
||||
|
||||
# private message from you, $0 = "msg", $1 = target nick
|
||||
ownprivmsg = "[%R$0%K(%R$1-%K)%n] ";
|
||||
|
||||
# own private message in query
|
||||
ownprivmsgnick = "{msgnick $*}";
|
||||
ownprivnick = "%W$*%n";
|
||||
|
||||
# private message in query
|
||||
privmsgnick = "{msgnick %r$*%n}";
|
||||
|
||||
##
|
||||
## Actions (/ME stuff)
|
||||
##
|
||||
|
||||
# used internally by this theme
|
||||
action_core = "%W * $*%n";
|
||||
|
||||
# generic one that's used by most actions
|
||||
action = "{action_core $*} ";
|
||||
|
||||
# own action, both private/public
|
||||
ownaction = "{action $*}";
|
||||
|
||||
# own action with target, both private/public
|
||||
ownaction_target = "{action_core $0}%K:%c$1%n ";
|
||||
|
||||
# private action sent by others
|
||||
pvtaction = "%W (*) $*%n ";
|
||||
pvtaction_query = "{action $*}";
|
||||
|
||||
# public action sent by others
|
||||
pubaction = "{action $*}";
|
||||
|
||||
|
||||
##
|
||||
## other IRC events
|
||||
##
|
||||
|
||||
# whois
|
||||
whois = "%# $[8]0 : $1-";
|
||||
|
||||
# notices
|
||||
ownnotice = "[%r$0%K(%R$1-%K)]%n ";
|
||||
notice = "%K-%M$*%K-%n ";
|
||||
pubnotice_channel = "%K:%m$*";
|
||||
pvtnotice_host = "%K(%m$*%K)";
|
||||
servernotice = "%g!$*%n ";
|
||||
|
||||
# CTCPs
|
||||
ownctcp = "[%r$0%K(%R$1-%K)] ";
|
||||
ctcp = "%g$*%n";
|
||||
|
||||
# wallops
|
||||
wallop = "%W$*%n: ";
|
||||
wallop_nick = "%n$*";
|
||||
wallop_action = "%W * $*%n ";
|
||||
|
||||
# netsplits
|
||||
netsplit = "%R$*%n";
|
||||
netjoin = "%C$*%n";
|
||||
|
||||
# /names list
|
||||
names_prefix = "";
|
||||
names_nick = "[%_$0%_$1-] ";
|
||||
names_nick_op = "{names_nick $*}";
|
||||
names_nick_halfop = "{names_nick $*}";
|
||||
names_nick_voice = "{names_nick $*}";
|
||||
names_users = "[%g$*%n]";
|
||||
names_channel = "%G$*%n";
|
||||
|
||||
# DCC
|
||||
dcc = "%g$*%n";
|
||||
dccfile = "%_$*%_";
|
||||
|
||||
# DCC chat, own msg/action
|
||||
dccownmsg = "[%r$0%K($1-%K)%n] ";
|
||||
dccownnick = "%R$*%n";
|
||||
dccownquerynick = "%W$*%n";
|
||||
dccownaction = "{action $*}";
|
||||
dccownaction_target = "{action_core $0}%K:%c$1%n ";
|
||||
|
||||
# DCC chat, others
|
||||
dccmsg = "[%G$1-%K(%g$0%K)%n] ";
|
||||
dccquerynick = "%G$*%n";
|
||||
dccaction = "%W (*dcc*) $*%n %|";
|
||||
|
||||
##
|
||||
## statusbar
|
||||
##
|
||||
|
||||
# default background for all statusbars. You can also give
|
||||
# the default foreground color for statusbar items.
|
||||
sb_background = "%n%w";
|
||||
|
||||
# default backround for "default" statusbar group
|
||||
#sb_default_bg = "%4";
|
||||
# background for prompt / input line
|
||||
sb_prompt_bg = "%n";
|
||||
# background for info statusbar
|
||||
sb_info_bg = "%8";
|
||||
# background for topicbar (same default)
|
||||
#sb_topic_bg = "%4";
|
||||
|
||||
# text at the beginning of statusbars. sb-item already puts
|
||||
# space there,so we don't use anything by default.
|
||||
sbstart = "";
|
||||
# text at the end of statusbars. Use space so that it's never
|
||||
# used for anything.
|
||||
sbend = " ";
|
||||
|
||||
topicsbstart = "{sbstart $*}";
|
||||
topicsbend = "{sbend $*}";
|
||||
|
||||
prompt = "[$*] ";
|
||||
|
||||
sb = " %c[%n$*%c]%n";
|
||||
sbmode = "(%c+%n$*)";
|
||||
sbaway = " (%GzZzZ%n)";
|
||||
sbservertag = ":$0 (change with ^X)";
|
||||
sbnickmode = "$0";
|
||||
|
||||
# activity in statusbar
|
||||
|
||||
# ',' separator
|
||||
sb_act_sep = "%c$*";
|
||||
# normal text
|
||||
sb_act_text = "%c$*";
|
||||
# public message
|
||||
sb_act_msg = "%W$*";
|
||||
# hilight
|
||||
sb_act_hilight = "%C$*";
|
||||
# hilight with specified color, $0 = color, $1 = text
|
||||
sb_act_hilight_color = "$0$1-%n";
|
||||
};
|
||||
formats = {
|
||||
"fe-common/core" = {
|
||||
timestamp = "{timestamp %%H:%%M:%%S} ";
|
||||
own_msg = "{ownmsgnick $2 {ownnick $[0]0}}$1";
|
||||
pubmsg = "{pubmsgnick $2 {pubnick \00350$[0]0}}$1";
|
||||
};
|
||||
};
|
|
@ -1,63 +0,0 @@
|
|||
# hideauth.pl
|
||||
#
|
||||
# Stops eggdrop passwords from showing up in e.g. /msg botnick op password [#channel]
|
||||
#
|
||||
# Settings:
|
||||
# hideauth_commands: space-delimited case-insensitive list of eggdrop commands to filter (e.g. "op voice ident") (can be regexps)
|
||||
# hideauth_botsonly: if 1/ON, only hideauth for nicks in the bots list (because "op" is common Dutch word :)
|
||||
# hideauth_bots: space-delimited case-insensitive list of botnicks (can be regexps) (e.g. "notopic monicaoff")
|
||||
#
|
||||
# You can also change the "bot_command" format item:
|
||||
# $0 = command (op, ident, etc)
|
||||
# $1 = (optional) channel (from "op password #channel")
|
||||
# $2 = nick command is sent to
|
||||
# My default format is (in case you break it): 'eggdrop command {reason $0 %K****%n$1} sent to {channick_hilight $2}'
|
||||
#
|
||||
# Thanks to Joost "Garion" Vunderink for advice and testing ^_^
|
||||
#
|
||||
|
||||
use strict;
|
||||
use vars qw($VERSION %IRSSI);
|
||||
|
||||
use Irssi qw(signal_add_first settings_get_str settings_get_bool settings_add_str settings_add_bool signal_stop theme_register);
|
||||
|
||||
$VERSION = '1.01';
|
||||
%IRSSI = (
|
||||
authors => 'JamesOff',
|
||||
contact => 'james@jamesoff.net',
|
||||
name => 'hideauth',
|
||||
description => 'Stops eggdrop passwords showing up',
|
||||
license => 'Public Domain',
|
||||
url => 'http://www.jamesoff.net',
|
||||
changed => '04 June 2002 20:56:00',
|
||||
);
|
||||
|
||||
theme_register([
|
||||
'bot_command', 'bot command {reason $0 %K****%n$1} sent to {channick_hilight $2}'
|
||||
]);
|
||||
|
||||
|
||||
sub intercept_message {
|
||||
my ($server, $message, $target, $orig_target) = @_;
|
||||
my $commands = settings_get_str('hideauth_commands');
|
||||
my $botsOnly = settings_get_bool('hideauth_botsonly');
|
||||
my $bots = settings_get_str('hideauth_bots');
|
||||
$bots =~ tr/ /|/;
|
||||
|
||||
#check for bots only and compare target nick
|
||||
return if (($botsOnly == 1) && ($target !~ /($bots)/i));
|
||||
|
||||
#check the first word to see if it's a command
|
||||
$commands =~ tr/ /|/;
|
||||
if ($message =~ /^($commands) \w+( .+)?/i) {
|
||||
#it's a match, it's handle it :)
|
||||
my ($command, $dest) = ($1, $2);
|
||||
$server->printformat($target, MSGLEVEL_CRAP, 'bot_command', $command, $dest, $target);
|
||||
signal_stop();
|
||||
}
|
||||
}
|
||||
|
||||
signal_add_first('message own_private', 'intercept_message');
|
||||
settings_add_str('misc','hideauth_commands','op voice auth ident identify pass newpass rehash');
|
||||
settings_add_bool('misc','hideauth_botsonly',0);
|
||||
settings_add_str('misc','hideauth_bots','NickServ');
|
|
@ -1,253 +0,0 @@
|
|||
use strict;
|
||||
use Irssi 20020101.0250 ();
|
||||
use vars qw($VERSION %IRSSI);
|
||||
$VERSION = "2.1";
|
||||
%IRSSI = (
|
||||
authors => "Timo Sirainen, Ian Peters, David Leadbeater, Bruno Cattáneo",
|
||||
contact => "tss\@iki.fi",
|
||||
name => "Nick Color",
|
||||
description => "assign a different color for each nick",
|
||||
license => "Public Domain",
|
||||
url => "http://irssi.org/",
|
||||
changed => "Mon 08 Jan 21:28:53 BST 2018",
|
||||
);
|
||||
|
||||
# Settings:
|
||||
# nickcolor_colors: List of color codes to use.
|
||||
# e.g. /set nickcolor_colors 2 3 4 5 6 7 9 10 11 12 13
|
||||
# (avoid 8, as used for hilights in the default theme).
|
||||
#
|
||||
# nickcolor_enable_prefix: Enables prefix for same nick.
|
||||
#
|
||||
# nickcolor_enable_truncate: Enables nick truncation.
|
||||
#
|
||||
# nickcolor_prefix_text: Prefix text for succesive messages.
|
||||
# e.g. /set nickcolor_prefix_text -
|
||||
#
|
||||
# nickcolor_truncate_value: Truncate nick value.
|
||||
# e.g. /set nickcolor_truncate_value -7
|
||||
# This will truncate nicknames at 7 characters and make them right aligned
|
||||
|
||||
my %saved_colors;
|
||||
my %session_colors = {};
|
||||
my %saved_nicks; # To store each channel's last nickname
|
||||
|
||||
sub load_colors {
|
||||
open my $color_fh, "<", "$ENV{HOME}/.irssi/saved_colors";
|
||||
while (<$color_fh>) {
|
||||
chomp;
|
||||
my($nick, $color) = split ":";
|
||||
$saved_colors{$nick} = $color;
|
||||
}
|
||||
}
|
||||
|
||||
sub save_colors {
|
||||
open COLORS, ">", "$ENV{HOME}/.irssi/saved_colors";
|
||||
|
||||
foreach my $nick (keys %saved_colors) {
|
||||
print COLORS "$nick:$saved_colors{$nick}\n";
|
||||
}
|
||||
|
||||
close COLORS;
|
||||
}
|
||||
|
||||
# If someone we've colored (either through the saved colors, or the hash
|
||||
# function) changes their nick, we'd like to keep the same color associated
|
||||
# with them (but only in the session_colors, ie a temporary mapping).
|
||||
|
||||
sub sig_nick {
|
||||
my ($server, $newnick, $nick, $address) = @_;
|
||||
my $color;
|
||||
|
||||
$newnick = substr ($newnick, 1) if ($newnick =~ /^:/);
|
||||
|
||||
if ($color = $saved_colors{$nick}) {
|
||||
$session_colors{$newnick} = $color;
|
||||
} elsif ($color = $session_colors{$nick}) {
|
||||
$session_colors{$newnick} = $color;
|
||||
}
|
||||
}
|
||||
|
||||
# This gave reasonable distribution values when run across
|
||||
# /usr/share/dict/words
|
||||
|
||||
sub simple_hash {
|
||||
my ($string) = @_;
|
||||
chomp $string;
|
||||
my @chars = split //, $string;
|
||||
my $counter;
|
||||
|
||||
foreach my $char (@chars) {
|
||||
$counter += ord $char;
|
||||
}
|
||||
|
||||
my @colors = split / /, Irssi::settings_get_str('nickcolor_colors');
|
||||
$counter = $colors[$counter % @colors];
|
||||
|
||||
return $counter;
|
||||
}
|
||||
|
||||
# process public (others) messages
|
||||
sub sig_public {
|
||||
my ($server, $msg, $nick, $address, $target) = @_;
|
||||
|
||||
my $enable_prefix = Irssi::settings_get_bool('nickcolor_enable_prefix');
|
||||
my $enable_truncate = Irssi::settings_get_bool('nickcolor_enable_truncate');
|
||||
my $prefix_text = Irssi::settings_get_str('nickcolor_prefix_text');
|
||||
my $truncate_value = Irssi::settings_get_int('nickcolor_truncate_value');
|
||||
|
||||
# Reference for server/channel
|
||||
my $tagtarget = "$server->{tag}/$target";
|
||||
|
||||
# Set default nick truncate value to 0 if option is disabled
|
||||
$truncate_value = 0 if (!$enable_truncate);
|
||||
|
||||
# Has the user assigned this nick a color?
|
||||
my $color = $saved_colors{$nick};
|
||||
|
||||
# Have -we- already assigned this nick a color?
|
||||
if (!$color) {
|
||||
$color = $session_colors{$nick};
|
||||
}
|
||||
|
||||
# Let's assign this nick a color
|
||||
if (!$color) {
|
||||
$color = simple_hash $nick;
|
||||
$session_colors{$nick} = $color;
|
||||
}
|
||||
|
||||
$color = sprintf "\003%02d", $color;
|
||||
|
||||
# Optional: We check if it's the same nickname for current target
|
||||
if ($saved_nicks{$tagtarget} eq $nick && $enable_prefix)
|
||||
{
|
||||
# Grouped message
|
||||
Irssi::command('/^format pubmsg ' . $prefix_text . '$1');
|
||||
}
|
||||
else
|
||||
{
|
||||
# Normal message
|
||||
Irssi::command('/^format pubmsg {pubmsgnick $2 {pubnick ' . $color . '$[' . $truncate_value . ']0}}$1');
|
||||
|
||||
# Save nickname for next message
|
||||
$saved_nicks{$tagtarget} = $nick;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
# process public (me) messages
|
||||
sub sig_me {
|
||||
my ($server, $msg, $target) = @_;
|
||||
my $nick = $server->{nick};
|
||||
|
||||
my $enable_prefix = Irssi::settings_get_bool('nickcolor_enable_prefix');
|
||||
my $enable_truncate = Irssi::settings_get_bool('nickcolor_enable_truncate');
|
||||
my $prefix_text = Irssi::settings_get_str('nickcolor_prefix_text');
|
||||
my $truncate_value = Irssi::settings_get_int('nickcolor_truncate_value');
|
||||
|
||||
# Reference for server/channel
|
||||
my $tagtarget = "$server->{tag}/$target";
|
||||
|
||||
# Set default nick truncate value to 0 if option is disabled
|
||||
$truncate_value = 0 if (!$enable_truncate);
|
||||
|
||||
# Optional: We check if it's the same nickname for current target
|
||||
if ($saved_nicks{$tagtarget} eq $nick && $enable_prefix)
|
||||
{
|
||||
# Grouped message
|
||||
Irssi::command('/^format own_msg ' . $prefix_text . '$1');
|
||||
}
|
||||
else
|
||||
{
|
||||
# Normal message
|
||||
Irssi::command('/^format own_msg {ownmsgnick $2 {ownnick $[' . $truncate_value . ']0}}$1');
|
||||
|
||||
# Save nickname for next message
|
||||
$saved_nicks{$tagtarget} = $nick;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
# process public (others) actions
|
||||
sub sig_action_public {
|
||||
my ($server, $msg, $nick, $address, $target) = @_;
|
||||
|
||||
my $enable_prefix = Irssi::settings_get_bool('nickcolor_enable_prefix');
|
||||
|
||||
# Reference for server/channel
|
||||
my $tagtarget = "$server->{tag}/$target";
|
||||
|
||||
# Empty current target nick if prefix option is enabled
|
||||
$saved_nicks{$tagtarget} = '' if ($enable_prefix);
|
||||
|
||||
}
|
||||
|
||||
# process public (me) actions
|
||||
sub sig_action_me {
|
||||
my ($server, $msg, $target) = @_;
|
||||
my $nick = $server->{nick};
|
||||
|
||||
my $enable_prefix = Irssi::settings_get_bool('nickcolor_enable_prefix');
|
||||
|
||||
# Reference for server/channel
|
||||
my $tagtarget = "$server->{tag}/$target";
|
||||
|
||||
# Empty current target nick if prefix option is enabled
|
||||
$saved_nicks{$tagtarget} = '' if ($enable_prefix);
|
||||
|
||||
}
|
||||
|
||||
sub cmd_color {
|
||||
my ($data, $server, $witem) = @_;
|
||||
my ($op, $nick, $color) = split " ", $data;
|
||||
|
||||
$op = lc $op;
|
||||
|
||||
if (!$op) {
|
||||
Irssi::print ("No operation given (save/set/clear/list/preview)");
|
||||
} elsif ($op eq "save") {
|
||||
save_colors;
|
||||
} elsif ($op eq "set") {
|
||||
if (!$nick) {
|
||||
Irssi::print ("Nick not given");
|
||||
} elsif (!$color) {
|
||||
Irssi::print ("Color not given");
|
||||
} elsif ($color < 2 || $color > 14) {
|
||||
Irssi::print ("Color must be between 2 and 14 inclusive");
|
||||
} else {
|
||||
$saved_colors{$nick} = $color;
|
||||
}
|
||||
} elsif ($op eq "clear") {
|
||||
if (!$nick) {
|
||||
Irssi::print ("Nick not given");
|
||||
} else {
|
||||
delete ($saved_colors{$nick});
|
||||
}
|
||||
} elsif ($op eq "list") {
|
||||
Irssi::print ("\nSaved Colors:");
|
||||
foreach my $nick (keys %saved_colors) {
|
||||
Irssi::print (chr (3) . sprintf("%02d", $saved_colors{$nick}) . "$nick" .
|
||||
chr (3) . "1 ($saved_colors{$nick})");
|
||||
}
|
||||
} elsif ($op eq "preview") {
|
||||
Irssi::print ("\nAvailable colors:");
|
||||
foreach my $i (2..14) {
|
||||
Irssi::print (chr (3) . "$i" . "Color #$i");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
load_colors;
|
||||
|
||||
Irssi::settings_add_str('misc', 'nickcolor_colors', '2 3 4 5 6 7 9 10 11 12 13');
|
||||
Irssi::settings_add_bool('misc', 'nickcolor_enable_prefix', 0);
|
||||
Irssi::settings_add_bool('misc', 'nickcolor_enable_truncate', 0);
|
||||
Irssi::settings_add_str('misc', 'nickcolor_prefix_text' => '- ');
|
||||
Irssi::settings_add_int('misc', 'nickcolor_truncate_value' => 0);
|
||||
Irssi::command_bind('color', 'cmd_color');
|
||||
|
||||
Irssi::signal_add('message public', 'sig_public');
|
||||
Irssi::signal_add('message own_public', 'sig_me');
|
||||
Irssi::signal_add('message irc action', 'sig_action_public');
|
||||
Irssi::signal_add('message irc own_action', 'sig_action_me');
|
||||
Irssi::signal_add('event nick', 'sig_nick');
|
|
@ -1,450 +0,0 @@
|
|||
use strict;
|
||||
use vars qw($VERSION %IRSSI);
|
||||
use File::Basename;
|
||||
use File::Fetch;
|
||||
use File::Glob ':bsd_glob';
|
||||
use Getopt::Long qw/GetOptionsFromString/;
|
||||
use Storable qw/store_fd fd_retrieve/;
|
||||
use YAML::XS;
|
||||
|
||||
use Irssi;
|
||||
|
||||
$VERSION = '0.03';
|
||||
%IRSSI = (
|
||||
authors => 'bw1',
|
||||
contact => 'bw1@aol.at',
|
||||
name => 'theme',
|
||||
description => 'activate, show or get theme',
|
||||
license => 'Public Domain',
|
||||
url => 'https://scripts.irssi.org/',
|
||||
changed => '2019-07-02',
|
||||
modules => 'File::Basename File::Fetch File::Glob Getopt::Long Storable YAML::XS',
|
||||
commands=> 'theme',
|
||||
);
|
||||
|
||||
my $help = << "END";
|
||||
%9Name%9
|
||||
$IRSSI{name}
|
||||
%9Version%9
|
||||
$VERSION
|
||||
%9Synopsis%9
|
||||
/theme {-g|-get} <theme>
|
||||
/theme [theme] [options]
|
||||
%9Options%9
|
||||
-next|-n next theme in dir
|
||||
-previous|-p previous theme in dir
|
||||
-show|-s show a test text
|
||||
-reload|-r reload the dir
|
||||
-get|-g get a theme form a website
|
||||
-list|-l list theme in dir
|
||||
-update|-u download themes.yaml
|
||||
-info|-i print info
|
||||
-fg_color|-f set or reset the foreground color
|
||||
-bg_color|-b set or reset the background color
|
||||
-help|-h
|
||||
%9Description%9
|
||||
$IRSSI{description}
|
||||
%9Settings%9
|
||||
/set theme_source https://irssi-import.github.io/themes/
|
||||
/set theme_local ~/.irssi/
|
||||
/set theme_autocolor off
|
||||
%9Color%9
|
||||
the script can set
|
||||
VT100 text foreground color
|
||||
VT100 text background color
|
||||
tested with xterm, konsole, lxterm
|
||||
%9See also%9
|
||||
https://irssi-import.github.io/themes/
|
||||
https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h2-Operating-System-Commands
|
||||
https://en.wikipedia.org/wiki/X11_color_names
|
||||
END
|
||||
|
||||
my (%themes, @dtl);
|
||||
my (@tl, $count);
|
||||
my ($show, $update, $get, $list, $phelp, $info, $yupdate, $fg_color, $bg_color);
|
||||
my ($noxterm);
|
||||
my %options = (
|
||||
'n' => sub{ $count++; $update=1},
|
||||
'next' => sub{ $count++; $update=1},
|
||||
'p' => sub{ $count--; $update=1},
|
||||
'previous' => sub{ $count--; $update=1},
|
||||
's' => \$show,
|
||||
'show' => \$show,
|
||||
'r' => \&init,
|
||||
'reload' => \&init,
|
||||
'g=s' => \$get,
|
||||
'get=s' => \$get,
|
||||
'l' => \$list,
|
||||
'list' => \$list,
|
||||
'h' => \$phelp,
|
||||
'help' => \$phelp,
|
||||
'u' => \$yupdate,
|
||||
'update' => \$yupdate,
|
||||
'i:s' => \$info,
|
||||
'info:s' => \$info,
|
||||
'f:s' => \$fg_color,
|
||||
'fg_color:s' => \$fg_color,
|
||||
'b:s' => \$bg_color,
|
||||
'bg_color:s' => \$bg_color,
|
||||
);
|
||||
|
||||
my $lorem = << 'END';
|
||||
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod
|
||||
tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At
|
||||
vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd
|
||||
gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum
|
||||
dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor
|
||||
invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero
|
||||
eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no
|
||||
sea takimata sanctus est Lorem ipsum dolor sit amet.
|
||||
END
|
||||
|
||||
my ($theme_source, $theme_local, $theme_autocolor);
|
||||
my %bg_process= ();
|
||||
|
||||
sub background {
|
||||
my ($cmd) =@_;
|
||||
my ($fh_r, $fh_w);
|
||||
pipe $fh_r, $fh_w;
|
||||
my $pid = fork();
|
||||
if ($pid ==0 ) {
|
||||
my @res;
|
||||
@res= &{$cmd->{cmd}}(@{$cmd->{args}});
|
||||
store_fd \@res, $fh_w;
|
||||
close $fh_w;
|
||||
POSIX::_exit(1);
|
||||
} else {
|
||||
$cmd->{fh_r}=$fh_r;
|
||||
Irssi::pidwait_add($pid);
|
||||
$bg_process{$pid}=$cmd;
|
||||
}
|
||||
}
|
||||
|
||||
sub sig_pidwait {
|
||||
my ($pid, $status) = @_;
|
||||
if (exists $bg_process{$pid}) {
|
||||
my @res= @{ fd_retrieve($bg_process{$pid}->{fh_r})};
|
||||
$bg_process{$pid}->{res}=[@res];
|
||||
if (exists $bg_process{$pid}->{last}) {
|
||||
foreach my $p (@{$bg_process{$pid}->{last}}) {
|
||||
&$p($bg_process{$pid});
|
||||
}
|
||||
} else {
|
||||
Irssi::print(join(" ",@res), MSGLEVEL_CLIENTCRAP);
|
||||
}
|
||||
delete $bg_process{$pid};
|
||||
}
|
||||
}
|
||||
|
||||
sub cmd_show {
|
||||
my ($args, $server, $witem)=@_;
|
||||
my $t = Irssi::settings_get_str('theme');
|
||||
if (defined $witem) {
|
||||
$witem->print(
|
||||
"----- $t -- $count -----",
|
||||
MSGLEVEL_CLIENTCRAP);
|
||||
$witem->command('names');
|
||||
core_printformat_module_w($witem,
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'pubmsg', 'testnick', $lorem, '@');
|
||||
core_printformat_module_w($witem,
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'pubmsg_me', 'testnick',
|
||||
'me: '.substr($lorem, 0, 30),'@');
|
||||
core_printformat_module_w($witem,
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'own_msg', 'me',
|
||||
substr($lorem, 0, 30),'@');
|
||||
} else {
|
||||
Irssi::print(
|
||||
"----- $t -- $count -----",
|
||||
MSGLEVEL_CLIENTCRAP);
|
||||
core_printformat_module(
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'pubmsg', 'testnick', $lorem, '@');
|
||||
core_printformat_module(
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'pubmsg_me', 'testnick',
|
||||
'me: '.substr($lorem, 0, 30),'@');
|
||||
core_printformat_module(
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'own_msg', 'me',
|
||||
substr($lorem, 0, 30),'@');
|
||||
}
|
||||
}
|
||||
|
||||
sub core_printformat_module {
|
||||
my ($level, $module, $format, @args) = @_;
|
||||
{
|
||||
local *CORE::GLOBAL::caller = sub { $module };
|
||||
Irssi::printformat($level, $format, @args);
|
||||
}
|
||||
}
|
||||
|
||||
sub core_printformat_module_w {
|
||||
my ($witem, $level, $module, $format, @args) = @_;
|
||||
{
|
||||
local *CORE::GLOBAL::caller = sub { $module };
|
||||
$witem->printformat($level, $format, @args);
|
||||
}
|
||||
}
|
||||
|
||||
sub set_fg_color {
|
||||
my ($fg) = @_;
|
||||
if ($ENV{'TERM'} =~ m/^xterm/) {
|
||||
if ( defined $fg ) {
|
||||
print STDERR "\033]10;$fg\a";
|
||||
} else {
|
||||
print STDERR "\033]110\a";
|
||||
}
|
||||
} else {
|
||||
$noxterm.=" and " if ($noxterm);
|
||||
$noxterm.="fg_color:$fg";
|
||||
}
|
||||
}
|
||||
|
||||
sub set_bg_color {
|
||||
my ($bg) = @_;
|
||||
if ($ENV{'TERM'} =~ m/^xterm/) {
|
||||
if ( defined $bg) {
|
||||
print STDERR "\033]11;$bg\a";
|
||||
} else {
|
||||
print STDERR "\033]111\a";
|
||||
}
|
||||
} else {
|
||||
$noxterm.=" and " if ($noxterm);
|
||||
$noxterm.="bg_color:$bg";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
sub get_theme {
|
||||
my ($args)=@_;
|
||||
local $File::Fetch::WARN=0;
|
||||
$get.= '.theme' if $get !~ m/\.theme/;
|
||||
my $ff= File::Fetch->new(uri => $theme_source.$get);
|
||||
my $where = $ff->fetch( to => $theme_local ) or
|
||||
return "Error: $theme_source$get not found";
|
||||
return "$get downloaded.";
|
||||
}
|
||||
|
||||
sub get_yaml {
|
||||
local $File::Fetch::WARN=0;
|
||||
my $get='themes.yaml';
|
||||
if (-e $theme_local.$get) {
|
||||
unlink $theme_local.$get;
|
||||
}
|
||||
my $ff= File::Fetch->new(uri => $theme_source.$get);
|
||||
my $where = $ff->fetch( to => $theme_local ) or
|
||||
return "Error: $theme_source$get not found";
|
||||
return "$get downloaded.";
|
||||
}
|
||||
|
||||
sub cmd_set {
|
||||
my ($args, $server, $witem)=@_;
|
||||
my $t = $tl[$count];
|
||||
if (defined $t) {
|
||||
Irssi::settings_set_str('theme',$t);
|
||||
Irssi::signal_emit('setup changed');
|
||||
if ($theme_autocolor) {
|
||||
set_fg_color($themes{$t}->{fgColor});
|
||||
set_bg_color($themes{$t}->{bgColor});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sub cmd {
|
||||
my ($args, $server, $witem)=@_;
|
||||
my ($ret, $arg) = GetOptionsFromString($args, %options);
|
||||
if ( defined $$arg[0]) {
|
||||
my $c=0;
|
||||
foreach my $t (@tl) {
|
||||
if ($t eq $$arg[0]) {
|
||||
$count=$c;
|
||||
last;
|
||||
}
|
||||
$c++;
|
||||
}
|
||||
cmd_set();
|
||||
}
|
||||
if (defined $update) {
|
||||
if ($count <0) {
|
||||
$count = $#tl+$count+1;
|
||||
}
|
||||
if ($count >$#tl) {
|
||||
$count = $count-$#tl-1;
|
||||
}
|
||||
cmd_set();
|
||||
$update= undef;
|
||||
}
|
||||
if (defined $show) {
|
||||
cmd_show($args, $server, $witem);
|
||||
$show = undef;
|
||||
}
|
||||
if (defined $get) {
|
||||
my $cmd;
|
||||
$cmd->{cmd}=\&get_theme;
|
||||
$cmd->{args}=[$args];
|
||||
$cmd->{last}=[
|
||||
\&init,
|
||||
\&print_result,
|
||||
];
|
||||
background( $cmd );
|
||||
$get = undef;
|
||||
}
|
||||
if (defined $yupdate) {
|
||||
my $cmd;
|
||||
$cmd->{cmd}=\&get_yaml;
|
||||
$cmd->{last}=[
|
||||
\&init,
|
||||
\&print_result,
|
||||
];
|
||||
background( $cmd );
|
||||
$yupdate = undef;
|
||||
}
|
||||
if (defined $list) {
|
||||
my $c=0;
|
||||
foreach (@tl) {
|
||||
if ($c == $count) {
|
||||
Irssi::print(">>$_<<", MSGLEVEL_CLIENTCRAP);
|
||||
} else {
|
||||
Irssi::print(" $_", MSGLEVEL_CLIENTCRAP);
|
||||
}
|
||||
$c++;
|
||||
}
|
||||
$list = undef;
|
||||
}
|
||||
if (defined $info) {
|
||||
cmd_info($args, $server, $witem);
|
||||
$info = undef;
|
||||
}
|
||||
if (defined $phelp || $args eq '' ) {
|
||||
cmd_help($IRSSI{name}, $server, $witem);
|
||||
$phelp = undef;
|
||||
}
|
||||
if (defined $fg_color) {
|
||||
if (length($fg_color)>0) {
|
||||
set_fg_color($fg_color);
|
||||
} else {
|
||||
set_fg_color();
|
||||
}
|
||||
$fg_color= undef;
|
||||
}
|
||||
if (defined $bg_color) {
|
||||
if (length($bg_color)>0) {
|
||||
set_bg_color($bg_color);
|
||||
} else {
|
||||
set_bg_color();
|
||||
}
|
||||
$bg_color= undef;
|
||||
}
|
||||
if (defined $noxterm) {
|
||||
Irssi::print(
|
||||
"Do not know how to set colour for your terminal ($ENV{TERM})."
|
||||
, MSGLEVEL_CLIENTCRAP);
|
||||
Irssi::print(
|
||||
"Manually configure it for $noxterm"
|
||||
, MSGLEVEL_CLIENTCRAP);
|
||||
$noxterm= undef;
|
||||
}
|
||||
}
|
||||
|
||||
sub cmd_info {
|
||||
my ($args, $server, $witem)=@_;
|
||||
Irssi::print("Info: $info", MSGLEVEL_CLIENTCRAP);
|
||||
if (exists $themes{$info}) {
|
||||
Irssi::print(Dump($themes{$info}), MSGLEVEL_CLIENTCRAP);
|
||||
} elsif (exists $themes{$tl[$count]}) {
|
||||
Irssi::print(Dump($themes{$tl[$count]}), MSGLEVEL_CLIENTCRAP);
|
||||
}
|
||||
}
|
||||
|
||||
sub cmd_help {
|
||||
my ($args, $server, $witem)=@_;
|
||||
$args=~ s/\s+//g;
|
||||
if ($IRSSI{name} eq $args) {
|
||||
Irssi::print($help, MSGLEVEL_CLIENTCRAP);
|
||||
Irssi::signal_stop();
|
||||
}
|
||||
}
|
||||
|
||||
sub sig_setup_changed {
|
||||
$theme_source= Irssi::settings_get_str($IRSSI{name}.'_source');
|
||||
$theme_source.= '/' if $theme_source !~ m#/$#;
|
||||
my $l= Irssi::settings_get_str($IRSSI{name}.'_local');
|
||||
$theme_local= bsd_glob $l;
|
||||
$theme_local.= '/' if $theme_local !~ m#/$#;
|
||||
$theme_autocolor= Irssi::settings_get_bool($IRSSI{name}.'_autocolor');
|
||||
}
|
||||
|
||||
sub print_result {
|
||||
my ($cmd) = @_;
|
||||
if (defined $cmd->{res}->[0]) {
|
||||
Irssi::print($cmd->{res}->[0] , MSGLEVEL_CLIENTCRAP);
|
||||
}
|
||||
}
|
||||
|
||||
sub do_complete {
|
||||
my ($strings, $window, $word, $linestart, $want_space) = @_;
|
||||
return unless $linestart =~ m#^/$IRSSI{name}#;
|
||||
return if $word =~ m#^-#;
|
||||
if ( $linestart !~ m/(-g|-get|-i|-info)/ ) {
|
||||
@$strings = grep { m/^$word/} @tl;
|
||||
} else {
|
||||
@$strings = grep { m/^$word/} @dtl;
|
||||
}
|
||||
Irssi::signal_stop;
|
||||
}
|
||||
|
||||
sub init {
|
||||
my $theme = Irssi::settings_get_str('theme');
|
||||
my $p1= Irssi::get_irssi_dir();
|
||||
my @t = bsd_glob $p1.'/*.theme';
|
||||
@tl=();
|
||||
my $c=0;
|
||||
foreach my $fn (@t) {
|
||||
$fn = basename($fn, '.theme');
|
||||
push @tl, $fn;
|
||||
$count=$c if $theme eq $fn;
|
||||
$c++;
|
||||
}
|
||||
$lorem =~ s/\n/ /g;
|
||||
if (-e $p1.'/themes.yaml') {
|
||||
@dtl=undef;
|
||||
my @l;
|
||||
open my $fi, '<',$p1.'/themes.yaml';
|
||||
my $syml= do {local $/; <$fi>};
|
||||
close $fi;
|
||||
eval {
|
||||
@l = @{Load($syml)};
|
||||
};
|
||||
if (length($@) >0) {
|
||||
print $@;
|
||||
} else {
|
||||
foreach my $e (@l) {
|
||||
$themes{$e->{name}}=$e;
|
||||
push @dtl, $e->{name};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Irssi::signal_add_first('complete word', \&do_complete);
|
||||
Irssi::signal_add('setup changed', \&sig_setup_changed);
|
||||
Irssi::signal_add('pidwait', \&sig_pidwait);
|
||||
|
||||
Irssi::settings_add_str($IRSSI{name} ,$IRSSI{name}.'_source', 'https://irssi-import.github.io/themes/');
|
||||
Irssi::settings_add_str($IRSSI{name} ,$IRSSI{name}.'_local', Irssi::get_irssi_dir());
|
||||
Irssi::settings_add_bool($IRSSI{name} ,$IRSSI{name}.'_autocolor', 0);
|
||||
|
||||
Irssi::command_bind($IRSSI{name}, \&cmd);
|
||||
my @opt=map {s/[=:].*$//, $_} keys %options;
|
||||
Irssi::command_set_options($IRSSI{name}, join(" ", @opt));
|
||||
Irssi::command_bind('help', \&cmd_help);
|
||||
|
||||
init();
|
||||
sig_setup_changed();
|
||||
|
||||
if (!(-e $theme_local.'themes.yaml')) {
|
||||
my $cmd;
|
||||
$cmd->{cmd}=\&get_yaml;
|
||||
$cmd->{last}=[
|
||||
\&init,
|
||||
\&print_result,
|
||||
];
|
||||
background( $cmd );
|
||||
}
|
|
@ -1,42 +0,0 @@
|
|||
use strict;
|
||||
use Irssi;
|
||||
use vars qw($VERSION %IRSSI);
|
||||
|
||||
$VERSION = "1.0";
|
||||
%IRSSI = (
|
||||
authors => 'LickTheCheese',
|
||||
name => 'stop banning me khux',
|
||||
description => 'what did i ever do to you',
|
||||
license => 'GNU GPL v2 or later',
|
||||
);
|
||||
|
||||
sub bit
|
||||
{
|
||||
my($server) =@_;
|
||||
|
||||
|
||||
$server->command("MSG #chaos ,kick *");
|
||||
$server->command("KICK #chaos BitBot");
|
||||
|
||||
}
|
||||
|
||||
sub ub
|
||||
{
|
||||
my($server) = @_;
|
||||
|
||||
$server->command("JOIN #chaos");
|
||||
Irssi::timeout_add_once(10, "bit", $server );
|
||||
}
|
||||
|
||||
|
||||
sub uchaos
|
||||
{
|
||||
my($data, $server, $witem, $time, $text) = @_;
|
||||
|
||||
$server->command("MSG ChanServ UNBAN #chaos");
|
||||
Irssi::timeout_add_once(300, "ub", $server );
|
||||
|
||||
}
|
||||
|
||||
Irssi::command_bind uchaos => \&uchaos;
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
use strict;
|
||||
use Irssi;
|
||||
use vars qw($VERSION %IRSSI);
|
||||
|
||||
$VERSION = "1.0";
|
||||
%IRSSI = (
|
||||
authors => 'LickTheCheese',
|
||||
name => 'flip bot',
|
||||
description => 'a bot that you get coins from lol',
|
||||
license => 'GNU GPL v2 or later',
|
||||
);
|
||||
|
||||
sub event_privmsg {
|
||||
my ($server, $data, $nick, $mask, $target) =@_;
|
||||
my ($target, $text) = $data =~ /^(\S*)\s:(.*)/;
|
||||
if ( index($text, "cheese flips tails and wins") != -1 ) {
|
||||
$server->command ( "msg $target ,sendcoins leekthecheese 100" );
|
||||
$server->command ( "msg $target ,flip tails all" );
|
||||
}
|
||||
}
|
||||
Irssi::signal_add('event privmsg', 'event_privmsg');
|
|
@ -1,253 +0,0 @@
|
|||
use strict;
|
||||
use Irssi 20020101.0250 ();
|
||||
use vars qw($VERSION %IRSSI);
|
||||
$VERSION = "2.1";
|
||||
%IRSSI = (
|
||||
authors => "Timo Sirainen, Ian Peters, David Leadbeater, Bruno Cattáneo",
|
||||
contact => "tss\@iki.fi",
|
||||
name => "Nick Color",
|
||||
description => "assign a different color for each nick",
|
||||
license => "Public Domain",
|
||||
url => "http://irssi.org/",
|
||||
changed => "Mon 08 Jan 21:28:53 BST 2018",
|
||||
);
|
||||
|
||||
# Settings:
|
||||
# nickcolor_colors: List of color codes to use.
|
||||
# e.g. /set nickcolor_colors 2 3 4 5 6 7 9 10 11 12 13
|
||||
# (avoid 8, as used for hilights in the default theme).
|
||||
#
|
||||
# nickcolor_enable_prefix: Enables prefix for same nick.
|
||||
#
|
||||
# nickcolor_enable_truncate: Enables nick truncation.
|
||||
#
|
||||
# nickcolor_prefix_text: Prefix text for succesive messages.
|
||||
# e.g. /set nickcolor_prefix_text -
|
||||
#
|
||||
# nickcolor_truncate_value: Truncate nick value.
|
||||
# e.g. /set nickcolor_truncate_value -7
|
||||
# This will truncate nicknames at 7 characters and make them right aligned
|
||||
|
||||
my %saved_colors;
|
||||
my %session_colors = {};
|
||||
my %saved_nicks; # To store each channel's last nickname
|
||||
|
||||
sub load_colors {
|
||||
open my $color_fh, "<", "$ENV{HOME}/.irssi/saved_colors";
|
||||
while (<$color_fh>) {
|
||||
chomp;
|
||||
my($nick, $color) = split ":";
|
||||
$saved_colors{$nick} = $color;
|
||||
}
|
||||
}
|
||||
|
||||
sub save_colors {
|
||||
open COLORS, ">", "$ENV{HOME}/.irssi/saved_colors";
|
||||
|
||||
foreach my $nick (keys %saved_colors) {
|
||||
print COLORS "$nick:$saved_colors{$nick}\n";
|
||||
}
|
||||
|
||||
close COLORS;
|
||||
}
|
||||
|
||||
# If someone we've colored (either through the saved colors, or the hash
|
||||
# function) changes their nick, we'd like to keep the same color associated
|
||||
# with them (but only in the session_colors, ie a temporary mapping).
|
||||
|
||||
sub sig_nick {
|
||||
my ($server, $newnick, $nick, $address) = @_;
|
||||
my $color;
|
||||
|
||||
$newnick = substr ($newnick, 1) if ($newnick =~ /^:/);
|
||||
|
||||
if ($color = $saved_colors{$nick}) {
|
||||
$session_colors{$newnick} = $color;
|
||||
} elsif ($color = $session_colors{$nick}) {
|
||||
$session_colors{$newnick} = $color;
|
||||
}
|
||||
}
|
||||
|
||||
# This gave reasonable distribution values when run across
|
||||
# /usr/share/dict/words
|
||||
|
||||
sub simple_hash {
|
||||
my ($string) = @_;
|
||||
chomp $string;
|
||||
my @chars = split //, $string;
|
||||
my $counter;
|
||||
|
||||
foreach my $char (@chars) {
|
||||
$counter += ord $char;
|
||||
}
|
||||
|
||||
my @colors = split / /, Irssi::settings_get_str('nickcolor_colors');
|
||||
$counter = $colors[$counter % @colors];
|
||||
|
||||
return $counter;
|
||||
}
|
||||
|
||||
# process public (others) messages
|
||||
sub sig_public {
|
||||
my ($server, $msg, $nick, $address, $target) = @_;
|
||||
|
||||
my $enable_prefix = Irssi::settings_get_bool('nickcolor_enable_prefix');
|
||||
my $enable_truncate = Irssi::settings_get_bool('nickcolor_enable_truncate');
|
||||
my $prefix_text = Irssi::settings_get_str('nickcolor_prefix_text');
|
||||
my $truncate_value = Irssi::settings_get_int('nickcolor_truncate_value');
|
||||
|
||||
# Reference for server/channel
|
||||
my $tagtarget = "$server->{tag}/$target";
|
||||
|
||||
# Set default nick truncate value to 0 if option is disabled
|
||||
$truncate_value = 0 if (!$enable_truncate);
|
||||
|
||||
# Has the user assigned this nick a color?
|
||||
my $color = $saved_colors{$nick};
|
||||
|
||||
# Have -we- already assigned this nick a color?
|
||||
if (!$color) {
|
||||
$color = $session_colors{$nick};
|
||||
}
|
||||
|
||||
# Let's assign this nick a color
|
||||
if (!$color) {
|
||||
$color = simple_hash $nick;
|
||||
$session_colors{$nick} = $color;
|
||||
}
|
||||
|
||||
$color = sprintf "\003%02d", $color;
|
||||
|
||||
# Optional: We check if it's the same nickname for current target
|
||||
if ($saved_nicks{$tagtarget} eq $nick && $enable_prefix)
|
||||
{
|
||||
# Grouped message
|
||||
Irssi::command('/^format pubmsg ' . $prefix_text . '$1');
|
||||
}
|
||||
else
|
||||
{
|
||||
# Normal message
|
||||
Irssi::command('/^format pubmsg {pubmsgnick $2 {pubnick ' . $color . '$[' . $truncate_value . ']0}}$1');
|
||||
|
||||
# Save nickname for next message
|
||||
$saved_nicks{$tagtarget} = $nick;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
# process public (me) messages
|
||||
sub sig_me {
|
||||
my ($server, $msg, $target) = @_;
|
||||
my $nick = $server->{nick};
|
||||
|
||||
my $enable_prefix = Irssi::settings_get_bool('nickcolor_enable_prefix');
|
||||
my $enable_truncate = Irssi::settings_get_bool('nickcolor_enable_truncate');
|
||||
my $prefix_text = Irssi::settings_get_str('nickcolor_prefix_text');
|
||||
my $truncate_value = Irssi::settings_get_int('nickcolor_truncate_value');
|
||||
|
||||
# Reference for server/channel
|
||||
my $tagtarget = "$server->{tag}/$target";
|
||||
|
||||
# Set default nick truncate value to 0 if option is disabled
|
||||
$truncate_value = 0 if (!$enable_truncate);
|
||||
|
||||
# Optional: We check if it's the same nickname for current target
|
||||
if ($saved_nicks{$tagtarget} eq $nick && $enable_prefix)
|
||||
{
|
||||
# Grouped message
|
||||
Irssi::command('/^format own_msg ' . $prefix_text . '$1');
|
||||
}
|
||||
else
|
||||
{
|
||||
# Normal message
|
||||
Irssi::command('/^format own_msg {ownmsgnick $2 {ownnick $[' . $truncate_value . ']0}}$1');
|
||||
|
||||
# Save nickname for next message
|
||||
$saved_nicks{$tagtarget} = $nick;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
# process public (others) actions
|
||||
sub sig_action_public {
|
||||
my ($server, $msg, $nick, $address, $target) = @_;
|
||||
|
||||
my $enable_prefix = Irssi::settings_get_bool('nickcolor_enable_prefix');
|
||||
|
||||
# Reference for server/channel
|
||||
my $tagtarget = "$server->{tag}/$target";
|
||||
|
||||
# Empty current target nick if prefix option is enabled
|
||||
$saved_nicks{$tagtarget} = '' if ($enable_prefix);
|
||||
|
||||
}
|
||||
|
||||
# process public (me) actions
|
||||
sub sig_action_me {
|
||||
my ($server, $msg, $target) = @_;
|
||||
my $nick = $server->{nick};
|
||||
|
||||
my $enable_prefix = Irssi::settings_get_bool('nickcolor_enable_prefix');
|
||||
|
||||
# Reference for server/channel
|
||||
my $tagtarget = "$server->{tag}/$target";
|
||||
|
||||
# Empty current target nick if prefix option is enabled
|
||||
$saved_nicks{$tagtarget} = '' if ($enable_prefix);
|
||||
|
||||
}
|
||||
|
||||
sub cmd_color {
|
||||
my ($data, $server, $witem) = @_;
|
||||
my ($op, $nick, $color) = split " ", $data;
|
||||
|
||||
$op = lc $op;
|
||||
|
||||
if (!$op) {
|
||||
Irssi::print ("No operation given (save/set/clear/list/preview)");
|
||||
} elsif ($op eq "save") {
|
||||
save_colors;
|
||||
} elsif ($op eq "set") {
|
||||
if (!$nick) {
|
||||
Irssi::print ("Nick not given");
|
||||
} elsif (!$color) {
|
||||
Irssi::print ("Color not given");
|
||||
} elsif ($color < 2 || $color > 14) {
|
||||
Irssi::print ("Color must be between 2 and 14 inclusive");
|
||||
} else {
|
||||
$saved_colors{$nick} = $color;
|
||||
}
|
||||
} elsif ($op eq "clear") {
|
||||
if (!$nick) {
|
||||
Irssi::print ("Nick not given");
|
||||
} else {
|
||||
delete ($saved_colors{$nick});
|
||||
}
|
||||
} elsif ($op eq "list") {
|
||||
Irssi::print ("\nSaved Colors:");
|
||||
foreach my $nick (keys %saved_colors) {
|
||||
Irssi::print (chr (3) . sprintf("%02d", $saved_colors{$nick}) . "$nick" .
|
||||
chr (3) . "1 ($saved_colors{$nick})");
|
||||
}
|
||||
} elsif ($op eq "preview") {
|
||||
Irssi::print ("\nAvailable colors:");
|
||||
foreach my $i (2..14) {
|
||||
Irssi::print (chr (3) . "$i" . "Color #$i");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
load_colors;
|
||||
|
||||
Irssi::settings_add_str('misc', 'nickcolor_colors', '2 3 4 5 6 7 9 10 11 12 13');
|
||||
Irssi::settings_add_bool('misc', 'nickcolor_enable_prefix', 0);
|
||||
Irssi::settings_add_bool('misc', 'nickcolor_enable_truncate', 0);
|
||||
Irssi::settings_add_str('misc', 'nickcolor_prefix_text' => '- ');
|
||||
Irssi::settings_add_int('misc', 'nickcolor_truncate_value' => 0);
|
||||
Irssi::command_bind('color', 'cmd_color');
|
||||
|
||||
Irssi::signal_add('message public', 'sig_public');
|
||||
Irssi::signal_add('message own_public', 'sig_me');
|
||||
Irssi::signal_add('message irc action', 'sig_action_public');
|
||||
Irssi::signal_add('message irc own_action', 'sig_action_me');
|
||||
Irssi::signal_add('event nick', 'sig_nick');
|
|
@ -1,450 +0,0 @@
|
|||
use strict;
|
||||
use vars qw($VERSION %IRSSI);
|
||||
use File::Basename;
|
||||
use File::Fetch;
|
||||
use File::Glob ':bsd_glob';
|
||||
use Getopt::Long qw/GetOptionsFromString/;
|
||||
use Storable qw/store_fd fd_retrieve/;
|
||||
use YAML::XS;
|
||||
|
||||
use Irssi;
|
||||
|
||||
$VERSION = '0.03';
|
||||
%IRSSI = (
|
||||
authors => 'bw1',
|
||||
contact => 'bw1@aol.at',
|
||||
name => 'theme',
|
||||
description => 'activate, show or get theme',
|
||||
license => 'Public Domain',
|
||||
url => 'https://scripts.irssi.org/',
|
||||
changed => '2019-07-02',
|
||||
modules => 'File::Basename File::Fetch File::Glob Getopt::Long Storable YAML::XS',
|
||||
commands=> 'theme',
|
||||
);
|
||||
|
||||
my $help = << "END";
|
||||
%9Name%9
|
||||
$IRSSI{name}
|
||||
%9Version%9
|
||||
$VERSION
|
||||
%9Synopsis%9
|
||||
/theme {-g|-get} <theme>
|
||||
/theme [theme] [options]
|
||||
%9Options%9
|
||||
-next|-n next theme in dir
|
||||
-previous|-p previous theme in dir
|
||||
-show|-s show a test text
|
||||
-reload|-r reload the dir
|
||||
-get|-g get a theme form a website
|
||||
-list|-l list theme in dir
|
||||
-update|-u download themes.yaml
|
||||
-info|-i print info
|
||||
-fg_color|-f set or reset the foreground color
|
||||
-bg_color|-b set or reset the background color
|
||||
-help|-h
|
||||
%9Description%9
|
||||
$IRSSI{description}
|
||||
%9Settings%9
|
||||
/set theme_source https://irssi-import.github.io/themes/
|
||||
/set theme_local ~/.irssi/
|
||||
/set theme_autocolor off
|
||||
%9Color%9
|
||||
the script can set
|
||||
VT100 text foreground color
|
||||
VT100 text background color
|
||||
tested with xterm, konsole, lxterm
|
||||
%9See also%9
|
||||
https://irssi-import.github.io/themes/
|
||||
https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h2-Operating-System-Commands
|
||||
https://en.wikipedia.org/wiki/X11_color_names
|
||||
END
|
||||
|
||||
my (%themes, @dtl);
|
||||
my (@tl, $count);
|
||||
my ($show, $update, $get, $list, $phelp, $info, $yupdate, $fg_color, $bg_color);
|
||||
my ($noxterm);
|
||||
my %options = (
|
||||
'n' => sub{ $count++; $update=1},
|
||||
'next' => sub{ $count++; $update=1},
|
||||
'p' => sub{ $count--; $update=1},
|
||||
'previous' => sub{ $count--; $update=1},
|
||||
's' => \$show,
|
||||
'show' => \$show,
|
||||
'r' => \&init,
|
||||
'reload' => \&init,
|
||||
'g=s' => \$get,
|
||||
'get=s' => \$get,
|
||||
'l' => \$list,
|
||||
'list' => \$list,
|
||||
'h' => \$phelp,
|
||||
'help' => \$phelp,
|
||||
'u' => \$yupdate,
|
||||
'update' => \$yupdate,
|
||||
'i:s' => \$info,
|
||||
'info:s' => \$info,
|
||||
'f:s' => \$fg_color,
|
||||
'fg_color:s' => \$fg_color,
|
||||
'b:s' => \$bg_color,
|
||||
'bg_color:s' => \$bg_color,
|
||||
);
|
||||
|
||||
my $lorem = << 'END';
|
||||
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod
|
||||
tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At
|
||||
vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd
|
||||
gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum
|
||||
dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor
|
||||
invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero
|
||||
eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no
|
||||
sea takimata sanctus est Lorem ipsum dolor sit amet.
|
||||
END
|
||||
|
||||
my ($theme_source, $theme_local, $theme_autocolor);
|
||||
my %bg_process= ();
|
||||
|
||||
sub background {
|
||||
my ($cmd) =@_;
|
||||
my ($fh_r, $fh_w);
|
||||
pipe $fh_r, $fh_w;
|
||||
my $pid = fork();
|
||||
if ($pid ==0 ) {
|
||||
my @res;
|
||||
@res= &{$cmd->{cmd}}(@{$cmd->{args}});
|
||||
store_fd \@res, $fh_w;
|
||||
close $fh_w;
|
||||
POSIX::_exit(1);
|
||||
} else {
|
||||
$cmd->{fh_r}=$fh_r;
|
||||
Irssi::pidwait_add($pid);
|
||||
$bg_process{$pid}=$cmd;
|
||||
}
|
||||
}
|
||||
|
||||
sub sig_pidwait {
|
||||
my ($pid, $status) = @_;
|
||||
if (exists $bg_process{$pid}) {
|
||||
my @res= @{ fd_retrieve($bg_process{$pid}->{fh_r})};
|
||||
$bg_process{$pid}->{res}=[@res];
|
||||
if (exists $bg_process{$pid}->{last}) {
|
||||
foreach my $p (@{$bg_process{$pid}->{last}}) {
|
||||
&$p($bg_process{$pid});
|
||||
}
|
||||
} else {
|
||||
Irssi::print(join(" ",@res), MSGLEVEL_CLIENTCRAP);
|
||||
}
|
||||
delete $bg_process{$pid};
|
||||
}
|
||||
}
|
||||
|
||||
sub cmd_show {
|
||||
my ($args, $server, $witem)=@_;
|
||||
my $t = Irssi::settings_get_str('theme');
|
||||
if (defined $witem) {
|
||||
$witem->print(
|
||||
"----- $t -- $count -----",
|
||||
MSGLEVEL_CLIENTCRAP);
|
||||
$witem->command('names');
|
||||
core_printformat_module_w($witem,
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'pubmsg', 'testnick', $lorem, '@');
|
||||
core_printformat_module_w($witem,
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'pubmsg_me', 'testnick',
|
||||
'me: '.substr($lorem, 0, 30),'@');
|
||||
core_printformat_module_w($witem,
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'own_msg', 'me',
|
||||
substr($lorem, 0, 30),'@');
|
||||
} else {
|
||||
Irssi::print(
|
||||
"----- $t -- $count -----",
|
||||
MSGLEVEL_CLIENTCRAP);
|
||||
core_printformat_module(
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'pubmsg', 'testnick', $lorem, '@');
|
||||
core_printformat_module(
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'pubmsg_me', 'testnick',
|
||||
'me: '.substr($lorem, 0, 30),'@');
|
||||
core_printformat_module(
|
||||
MSGLEVEL_CLIENTCRAP, 'fe-common/core', 'own_msg', 'me',
|
||||
substr($lorem, 0, 30),'@');
|
||||
}
|
||||
}
|
||||
|
||||
sub core_printformat_module {
|
||||
my ($level, $module, $format, @args) = @_;
|
||||
{
|
||||
local *CORE::GLOBAL::caller = sub { $module };
|
||||
Irssi::printformat($level, $format, @args);
|
||||
}
|
||||
}
|
||||
|
||||
sub core_printformat_module_w {
|
||||
my ($witem, $level, $module, $format, @args) = @_;
|
||||
{
|
||||
local *CORE::GLOBAL::caller = sub { $module };
|
||||
$witem->printformat($level, $format, @args);
|
||||
}
|
||||
}
|
||||
|
||||
sub set_fg_color {
|
||||
my ($fg) = @_;
|
||||
if ($ENV{'TERM'} =~ m/^xterm/) {
|
||||
if ( defined $fg ) {
|
||||
print STDERR "\033]10;$fg\a";
|
||||
} else {
|
||||
print STDERR "\033]110\a";
|
||||
}
|
||||
} else {
|
||||
$noxterm.=" and " if ($noxterm);
|
||||
$noxterm.="fg_color:$fg";
|
||||
}
|
||||
}
|
||||
|
||||
sub set_bg_color {
|
||||
my ($bg) = @_;
|
||||
if ($ENV{'TERM'} =~ m/^xterm/) {
|
||||
if ( defined $bg) {
|
||||
print STDERR "\033]11;$bg\a";
|
||||
} else {
|
||||
print STDERR "\033]111\a";
|
||||
}
|
||||
} else {
|
||||
$noxterm.=" and " if ($noxterm);
|
||||
$noxterm.="bg_color:$bg";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
sub get_theme {
|
||||
my ($args)=@_;
|
||||
local $File::Fetch::WARN=0;
|
||||
$get.= '.theme' if $get !~ m/\.theme/;
|
||||
my $ff= File::Fetch->new(uri => $theme_source.$get);
|
||||
my $where = $ff->fetch( to => $theme_local ) or
|
||||
return "Error: $theme_source$get not found";
|
||||
return "$get downloaded.";
|
||||
}
|
||||
|
||||
sub get_yaml {
|
||||
local $File::Fetch::WARN=0;
|
||||
my $get='themes.yaml';
|
||||
if (-e $theme_local.$get) {
|
||||
unlink $theme_local.$get;
|
||||
}
|
||||
my $ff= File::Fetch->new(uri => $theme_source.$get);
|
||||
my $where = $ff->fetch( to => $theme_local ) or
|
||||
return "Error: $theme_source$get not found";
|
||||
return "$get downloaded.";
|
||||
}
|
||||
|
||||
sub cmd_set {
|
||||
my ($args, $server, $witem)=@_;
|
||||
my $t = $tl[$count];
|
||||
if (defined $t) {
|
||||
Irssi::settings_set_str('theme',$t);
|
||||
Irssi::signal_emit('setup changed');
|
||||
if ($theme_autocolor) {
|
||||
set_fg_color($themes{$t}->{fgColor});
|
||||
set_bg_color($themes{$t}->{bgColor});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sub cmd {
|
||||
my ($args, $server, $witem)=@_;
|
||||
my ($ret, $arg) = GetOptionsFromString($args, %options);
|
||||
if ( defined $$arg[0]) {
|
||||
my $c=0;
|
||||
foreach my $t (@tl) {
|
||||
if ($t eq $$arg[0]) {
|
||||
$count=$c;
|
||||
last;
|
||||
}
|
||||
$c++;
|
||||
}
|
||||
cmd_set();
|
||||
}
|
||||
if (defined $update) {
|
||||
if ($count <0) {
|
||||
$count = $#tl+$count+1;
|
||||
}
|
||||
if ($count >$#tl) {
|
||||
$count = $count-$#tl-1;
|
||||
}
|
||||
cmd_set();
|
||||
$update= undef;
|
||||
}
|
||||
if (defined $show) {
|
||||
cmd_show($args, $server, $witem);
|
||||
$show = undef;
|
||||
}
|
||||
if (defined $get) {
|
||||
my $cmd;
|
||||
$cmd->{cmd}=\&get_theme;
|
||||
$cmd->{args}=[$args];
|
||||
$cmd->{last}=[
|
||||
\&init,
|
||||
\&print_result,
|
||||
];
|
||||
background( $cmd );
|
||||
$get = undef;
|
||||
}
|
||||
if (defined $yupdate) {
|
||||
my $cmd;
|
||||
$cmd->{cmd}=\&get_yaml;
|
||||
$cmd->{last}=[
|
||||
\&init,
|
||||
\&print_result,
|
||||
];
|
||||
background( $cmd );
|
||||
$yupdate = undef;
|
||||
}
|
||||
if (defined $list) {
|
||||
my $c=0;
|
||||
foreach (@tl) {
|
||||
if ($c == $count) {
|
||||
Irssi::print(">>$_<<", MSGLEVEL_CLIENTCRAP);
|
||||
} else {
|
||||
Irssi::print(" $_", MSGLEVEL_CLIENTCRAP);
|
||||
}
|
||||
$c++;
|
||||
}
|
||||
$list = undef;
|
||||
}
|
||||
if (defined $info) {
|
||||
cmd_info($args, $server, $witem);
|
||||
$info = undef;
|
||||
}
|
||||
if (defined $phelp || $args eq '' ) {
|
||||
cmd_help($IRSSI{name}, $server, $witem);
|
||||
$phelp = undef;
|
||||
}
|
||||
if (defined $fg_color) {
|
||||
if (length($fg_color)>0) {
|
||||
set_fg_color($fg_color);
|
||||
} else {
|
||||
set_fg_color();
|
||||
}
|
||||
$fg_color= undef;
|
||||
}
|
||||
if (defined $bg_color) {
|
||||
if (length($bg_color)>0) {
|
||||
set_bg_color($bg_color);
|
||||
} else {
|
||||
set_bg_color();
|
||||
}
|
||||
$bg_color= undef;
|
||||
}
|
||||
if (defined $noxterm) {
|
||||
Irssi::print(
|
||||
"Do not know how to set colour for your terminal ($ENV{TERM})."
|
||||
, MSGLEVEL_CLIENTCRAP);
|
||||
Irssi::print(
|
||||
"Manually configure it for $noxterm"
|
||||
, MSGLEVEL_CLIENTCRAP);
|
||||
$noxterm= undef;
|
||||
}
|
||||
}
|
||||
|
||||
sub cmd_info {
|
||||
my ($args, $server, $witem)=@_;
|
||||
Irssi::print("Info: $info", MSGLEVEL_CLIENTCRAP);
|
||||
if (exists $themes{$info}) {
|
||||
Irssi::print(Dump($themes{$info}), MSGLEVEL_CLIENTCRAP);
|
||||
} elsif (exists $themes{$tl[$count]}) {
|
||||
Irssi::print(Dump($themes{$tl[$count]}), MSGLEVEL_CLIENTCRAP);
|
||||
}
|
||||
}
|
||||
|
||||
sub cmd_help {
|
||||
my ($args, $server, $witem)=@_;
|
||||
$args=~ s/\s+//g;
|
||||
if ($IRSSI{name} eq $args) {
|
||||
Irssi::print($help, MSGLEVEL_CLIENTCRAP);
|
||||
Irssi::signal_stop();
|
||||
}
|
||||
}
|
||||
|
||||
sub sig_setup_changed {
|
||||
$theme_source= Irssi::settings_get_str($IRSSI{name}.'_source');
|
||||
$theme_source.= '/' if $theme_source !~ m#/$#;
|
||||
my $l= Irssi::settings_get_str($IRSSI{name}.'_local');
|
||||
$theme_local= bsd_glob $l;
|
||||
$theme_local.= '/' if $theme_local !~ m#/$#;
|
||||
$theme_autocolor= Irssi::settings_get_bool($IRSSI{name}.'_autocolor');
|
||||
}
|
||||
|
||||
sub print_result {
|
||||
my ($cmd) = @_;
|
||||
if (defined $cmd->{res}->[0]) {
|
||||
Irssi::print($cmd->{res}->[0] , MSGLEVEL_CLIENTCRAP);
|
||||
}
|
||||
}
|
||||
|
||||
sub do_complete {
|
||||
my ($strings, $window, $word, $linestart, $want_space) = @_;
|
||||
return unless $linestart =~ m#^/$IRSSI{name}#;
|
||||
return if $word =~ m#^-#;
|
||||
if ( $linestart !~ m/(-g|-get|-i|-info)/ ) {
|
||||
@$strings = grep { m/^$word/} @tl;
|
||||
} else {
|
||||
@$strings = grep { m/^$word/} @dtl;
|
||||
}
|
||||
Irssi::signal_stop;
|
||||
}
|
||||
|
||||
sub init {
|
||||
my $theme = Irssi::settings_get_str('theme');
|
||||
my $p1= Irssi::get_irssi_dir();
|
||||
my @t = bsd_glob $p1.'/*.theme';
|
||||
@tl=();
|
||||
my $c=0;
|
||||
foreach my $fn (@t) {
|
||||
$fn = basename($fn, '.theme');
|
||||
push @tl, $fn;
|
||||
$count=$c if $theme eq $fn;
|
||||
$c++;
|
||||
}
|
||||
$lorem =~ s/\n/ /g;
|
||||
if (-e $p1.'/themes.yaml') {
|
||||
@dtl=undef;
|
||||
my @l;
|
||||
open my $fi, '<',$p1.'/themes.yaml';
|
||||
my $syml= do {local $/; <$fi>};
|
||||
close $fi;
|
||||
eval {
|
||||
@l = @{Load($syml)};
|
||||
};
|
||||
if (length($@) >0) {
|
||||
print $@;
|
||||
} else {
|
||||
foreach my $e (@l) {
|
||||
$themes{$e->{name}}=$e;
|
||||
push @dtl, $e->{name};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Irssi::signal_add_first('complete word', \&do_complete);
|
||||
Irssi::signal_add('setup changed', \&sig_setup_changed);
|
||||
Irssi::signal_add('pidwait', \&sig_pidwait);
|
||||
|
||||
Irssi::settings_add_str($IRSSI{name} ,$IRSSI{name}.'_source', 'https://irssi-import.github.io/themes/');
|
||||
Irssi::settings_add_str($IRSSI{name} ,$IRSSI{name}.'_local', Irssi::get_irssi_dir());
|
||||
Irssi::settings_add_bool($IRSSI{name} ,$IRSSI{name}.'_autocolor', 0);
|
||||
|
||||
Irssi::command_bind($IRSSI{name}, \&cmd);
|
||||
my @opt=map {s/[=:].*$//, $_} keys %options;
|
||||
Irssi::command_set_options($IRSSI{name}, join(" ", @opt));
|
||||
Irssi::command_bind('help', \&cmd_help);
|
||||
|
||||
init();
|
||||
sig_setup_changed();
|
||||
|
||||
if (!(-e $theme_local.'themes.yaml')) {
|
||||
my $cmd;
|
||||
$cmd->{cmd}=\&get_yaml;
|
||||
$cmd->{last}=[
|
||||
\&init,
|
||||
\&print_result,
|
||||
];
|
||||
background( $cmd );
|
||||
}
|
|
@ -1,200 +0,0 @@
|
|||
---
|
||||
# add your theme at the end
|
||||
- { name: h3rbz, by: h3rbz, bgColor: black, fgColor: white}
|
||||
- { name: spring, by: Myrtti, bgColor: "#cdf9b4", fgColor: black }
|
||||
- { name: dark_winter, by: Myrtti, bgColor: "#f4c6e8", fgColor: black }
|
||||
- { name: elite, by: mrblackker, bgColor: black, fgColor: gray50 }
|
||||
- { name: revolutionary, by: rolle , bgColor: black, fgColor: gray50}
|
||||
- { name: revolutionaryv2, by: rolle, bgColor: black, fgColor: gray }
|
||||
- { name: revolutionaryv3, by: rolle, bgColor: black, fgColor: gray }
|
||||
- { name: liszt, by: fliszt, bgColor: black, fgColor: gray }
|
||||
- { name: screwer-redux, by: keeb, bgColor: '#555015', fgColor: gray50 }
|
||||
- { name: greenbox, by: Ir0n1E, bgColor: black, fgColor: gray }
|
||||
- { name: doom, by: saketzu, bgColor: black, fgColor: gray }
|
||||
- { name: soppa, by: rolle, bgColor: black, fgColor: gray30 }
|
||||
- { name: envy, by: rolle, bgColor: black, fgColor: gray }
|
||||
- { name: aka, by: curson, bgColor: black, fgColor: gray }
|
||||
- { name: lighty, by: pulk, bgColor: black, fgColor: white }
|
||||
- { name: mxl, by: mxl, download_format: tar.gz }
|
||||
- { name: pandemonium, by: tri, bgColor: black, fgColor: gray }
|
||||
- { name: redhead, by: _dave, bgColor: gray10, fgColor: gray }
|
||||
- { name: purplechat, by: _dave, bgColor: black, fgColor: gray }
|
||||
- { name: syntax, by: _dave, bgColor: gray10, fgColor: gray }
|
||||
- { name: yellowsyntax, by: _dave, bgColor: black, fgColor: gray }
|
||||
- { name: evowhite, by: Ville Myllymäki, bgColor: gray80, fgColor: black }
|
||||
- { name: initrd, by: initrd, bgColor: black, fgColor: gray }
|
||||
- { name: artificial-soul, by: ismaell, bgColor: black, fgColor: gray }
|
||||
- { name: furry, by: Cenne, bgColor: '#3c3c3c', fgColor: gray90 }
|
||||
- { name: more_readable, by: WildFlame, bgColor: black, fgColor: gray70 }
|
||||
- { name: japsu, by: Japsu, bgColor: black, fgColor: gray70 }
|
||||
- { name: scaleddown, by: _dave, bgColor: black, fgColor: gray70 }
|
||||
- { name: xchat2, by: _dave, bgColor: gray10, fgColor: gray80 }
|
||||
- { name: greenedge, by: _dave, bgColor: gray10, fgColor: gray80 }
|
||||
- { name: tugg, by: tugg, bgColor: '#372112', fgColor: white }
|
||||
- { name: mursu, by: Anfar, download_format: zip }
|
||||
- { name: trakhel, by: anonymous, bgColor: white, fgColor: gray70 }
|
||||
- { name: pyhy, by: pyhy, bgColor: black, fgColor: gray60 }
|
||||
- { name: swehack, by: nocturnal, bgColor: black, fgColor: gray60 }
|
||||
- { name: lenten, by: jasee, bgColor: black, fgColor: gray60 }
|
||||
- { name: simplicity, by: opqdonut, bgColor: white, fgColor: black }
|
||||
- { name: hrncek, by: hrncek, bgColor: black, fgColor: gray60 }
|
||||
- { name: insane, by: roy, bgColor: black, fgColor: gray60 }
|
||||
- { name: kurja-round, by: Yaakov, bgColor: '#0e151c', fgColor: gray80 }
|
||||
- { name: nitz, by: Nitz, bgColor: black, fgColor: gray80 }
|
||||
- { name: oscar, by: px, bgColor: black, fgColor: gray60 }
|
||||
- { name: lt, by: by LinuxTux, bgColor: '#0c1b35', fgColor: white }
|
||||
- { name: diskreet, by: bracket, bgColor: white, fgColor: gray60 }
|
||||
- { name: spookydoom, by: yawgm8th, bgColor: black, fgColor: gray60 }
|
||||
- { name: tzu, by: Tzunamii, bgColor: black, fgColor: gray70 }
|
||||
- { name: rain, by: dana, bgColor: '#40424e', fgColor: white }
|
||||
- { name: greyed-out, by: bluet, bgColor: black, fgColor: white }
|
||||
- { name: dma147, by: dma147, download_format: tar.bz2 }
|
||||
- { name: murf, by: Harmen, bgColor: black, fgColor: gray70 }
|
||||
- { name: bw-wb-ryb, by: Nico, bgColor: black, fgColor: white }
|
||||
# fg is set to black. the image has bg black
|
||||
- { name: n, by: nikt, bgColor: gray, fgColor: gray40 }
|
||||
- { name: elpi, by: anonymous, bgColor: black, fgColor: gray80 }
|
||||
- { name: mithru, by: avu, bgColor: gray10, fgColor: gray90 }
|
||||
- { name: mork, by: Sho, bgColor: black, fgColor: gray70 }
|
||||
- { name: tonisepro, by: Tonise, bgColor: black, fgColor: green }
|
||||
- { name: mosdef, by: deadcow, bgColor: black, fgColor: white }
|
||||
- { name: rolle, by: rolle, bgColor: black, fgColor: gray40 }
|
||||
- { name: parenthetical, by: dwu, bgColor: black, fgColor: gray70 }
|
||||
- { name: dbm, by: dbmathis, bgColor: black, fgColor: gray70 }
|
||||
- { name: c0ders, by: PCrazee, bgColor: white, fgColor: black }
|
||||
- { name: design, by: awad, bgColor: black, fgColor: gray50 }
|
||||
- { name: madcow, by: dubkat, bgColor: black, fgColor: gray50 }
|
||||
- { name: lyynx, by: LyyNx, bgColor: '#263541', fgColor: white }
|
||||
- { name: kompakt, by: rm, bgColor: black, fgColor: white }
|
||||
- { name: evilkat, by: dubkat, bgColor: black, fgColor: gray70 }
|
||||
- { name: screwer, by: ak5, bgColor: '#585516', fgColor: gray50 }
|
||||
- { name: xchat, by: _dave, bgColor: gray10, fgColor: gray70 }
|
||||
- { name: cyanic, by: bracket, bgColor: black, fgColor: gray70 }
|
||||
- { name: stx, by: stx, bgColor: '#633408', fgColor: gray50 }
|
||||
- { name: trax, by: opqdonut, bgColor: black, fgColor: gray80 }
|
||||
- { name: fluxmod, by: ikaro, bgColor: '#254a17', fgColor: gray70 }
|
||||
- { name: industrial, by: blaze, bgColor: black, fgColor: gray80 }
|
||||
- { name: agon, by: agon, bgColor: '#293c42', fgColor: gray70 }
|
||||
- { name: ksiadz, by: ksiadz, bgColor: '#16202b', fgColor: '#18b2b2' }
|
||||
- { name: hv, by: cubik, bgColor: black, fgColor: gray70 }
|
||||
- { name: defacto, by: statico, bgColor: black, fgColor: gray80 }
|
||||
- { name: tinylajs, by: tewmten, bgColor: black, fgColor: white }
|
||||
- { name: roses, by: Myrtti, bgColor: black, fgColor: gray70 }
|
||||
- { name: vt510+xterm, by: TauPan, bgColor: gray80, fgColor: gray30 }
|
||||
- { name: spot, by: dana, bgColor: '#001120' , fgColor: white }
|
||||
- { name: sfc1337, by: souleman, bgColor: black, fgColor: green }
|
||||
- { name: mazii, by: mazii, bgColor: '#37250b', fgColor: gray90 }
|
||||
- { name: telix, by: bufh, bgColor: '#0f1519', fgColor: gray90 }
|
||||
- { name: sfcblue, by: souleman, bgColor: '#000039', fgColor: gray90 }
|
||||
- { name: skeita, by: petrucci, bgColor: black, fgColor: gray80 }
|
||||
- { name: lime, by: erc, bgColor: gray20, fgColor: gray80 }
|
||||
- { name: skan, by: skanZoft, bgColor: black, fgColor: gray70 }
|
||||
- { name: neutralorange, by: Marquz, bgColor: black, fgColor: gray80 }
|
||||
# fg is set to black. the image has bg black
|
||||
- { name: bestican, by: alexar, bgColor: gray, fgColor: gray20 }
|
||||
- { name: ion_mod, by: McGovern, bgColor: '#080408', fgColor: gray60 }
|
||||
- { name: lemac-pl, by: Lemac, bgColor: black, fgColor: gray50 }
|
||||
- { name: crap, by: McGovern, bgColor: black, fgColor: gray60 }
|
||||
- { name: orb, by: eks, download_format: tbz2 }
|
||||
- { name: bluu, by: HiFi, bgColor: black, fgColor: gray80 }
|
||||
- { name: evolution, by: McPolo, bgColor: black, fgColor: gray70 }
|
||||
- { name: lemac, by: lemac, bgColor: black, fgColor: gray70 }
|
||||
- { name: tanke, by: Tanke, bgColor: gray10, fgColor: gray80 }
|
||||
- { name: sputnik, by: Tanke, bgColor: black, fgColor: white }
|
||||
- { name: kaer-2, by: kaer, bgColor: black, fgColor: gray80 }
|
||||
- { name: hellfire, by: Anzuhan, bgColor: black, fgColor: gray80 }
|
||||
- { name: angelic, by: ArcAngel, download_link: angelic4.4.tar.gz }
|
||||
- { name: sux, by: Aleksandr, bgColor: '#0f2946', fgColor: gray90 }
|
||||
- { name: cross, by: cross, format: gif, bgColor: black, fgColor: gray70 }
|
||||
- { name: pikkuh, by: pikku-h, bgColor: black, fgColor: gray60 }
|
||||
- { name: epic, by: andrey, format: gif, bgColor: white, fgColor: black }
|
||||
- { name: lesscolors, by: dt, bgColor: black, fgColor: gray80 }
|
||||
- { name: generane, by: generane, bgColor: '#282725', fgColor: gray70 }
|
||||
- { name: qlth, by: defrag, bgColor: '#000031', fgColor: gray90 }
|
||||
- { name: elho, by: elho, download_link: irssi-elho.theme-1.3.tar.gz }
|
||||
- { name: kaer, by: kaer, bgColor: black, fgColor: gray60 }
|
||||
- { name: taliz, by: taliz, download_format: tgz }
|
||||
- { name: cananal, by: "^Faust^", bgColor: black, fgColor: cyan }
|
||||
- { name: mine, by: BoBB, bgColor: gray70, fgColor: gray20 }
|
||||
- { name: ea1, by: EckigesAuge, bgColor: gray30, fgColor: gray80 }
|
||||
- { name: rettoscopia, by: "^Faust^", bgColor: black, fgColor: gray70 }
|
||||
- { name: splitfire, by: ccr, bgColor: black, fgColor: gray80 }
|
||||
- { name: oxynox, by: ataxic, bgColor: black, fgColor: gray70 }
|
||||
- { name: kurja, by: renni, bgColor: '#1b1b00' , fgColor: gray90 }
|
||||
- { name: xmas, by: Charn, bgColor: '#540000', fgColor: gray70 }
|
||||
- { name: lilah, by: ladydana, bgColor: '#400040', fgColor: gray80 }
|
||||
# fg is set to black. the image has bg black
|
||||
- { name: void, by: fahren, bgColor: gray50, fgColor: gray20 }
|
||||
- { name: greenSCPleo, by: "}{pt0", bgColor: black, fgColor: green }
|
||||
- { name: ectobar, by: lude, bgColor: '#17192d', fgColor: gray70 }
|
||||
- { name: liten, by: liten, bgColor: black, fgColor: gray80 }
|
||||
- { name: en, by: en, format: gif, bgColor: black, fgColor: gray70 }
|
||||
- { name: lemmu, by: Hydra, format: gif, bgColor: black, fgColor: gray70 }
|
||||
- { name: litE, by: smoku, format: gif, bgColor: black, fgColor: gray70 }
|
||||
- { name: foxmask, by: foxmask, bgColor: white, fgColor: black }
|
||||
- { name: madeye, by: Svarre, format: gif, bgColor: black, fgColor: gray80 }
|
||||
- { name: laaama-2, by: laaama, bgColor: '#230101', fgColor: gray80 }
|
||||
- { name: darksystem, by: source, bgColor: black, fgColor: gray60 }
|
||||
# fg is set to black. the image has bg black
|
||||
- { name: magick, by: md, bgColor: gray80, fgColor: gray50 }
|
||||
- { name: huara, by: geel, bgColor: black, fgColor: gray70 }
|
||||
- { name: bork, by: fraki, bgColor: '#001c44', fgColor: gray80 }
|
||||
- { name: salsa, by: xfesty, bgColor: black, fgColor: gray70 }
|
||||
- { name: mrooveq, by: mrooveq, format: gif, bgColor: black, fgColor: gray70 }
|
||||
- { name: chaves, by: "Florindo'Admim", bgColor: '#212c31', fgColor: gray90 }
|
||||
- { name: asyura, by: rxcv, bgColor: black, fgColor: white }
|
||||
- { name: quubba, by: quubba, bgColor: black, fgColor: gray60 }
|
||||
- { name: simpleii, by: six, bgColor: black, fgColor: white }
|
||||
- { name: hagge, by: hagge, bgColor: black, fgColor: gray90 }
|
||||
- { name: clean, by: sabi, bgColor: white, fgColor: black }
|
||||
- { name: pgreen, by: gs, bgColor: black, fgColor: gray90 }
|
||||
- { name: mirkk32, by: hygge, bgColor: '#f6f6f6', fgColor: black }
|
||||
- { name: garden, by: godog, bgColor: black, fgColor: gray70 }
|
||||
- { name: stevee, by: stevee, bgColor: black, fgColor: gray70 }
|
||||
- { name: IamCyan, by: marmot, bgColor: gray20, fgColor: gray80 }
|
||||
- { name: ash, by: Little Dragon, bgColor: black, fgColor: gray70 }
|
||||
- { name: misso, by: misso, bgColor: black, fgColor: gray60 }
|
||||
- { name: easyeye, by: Kuma, bgColor: black, fgColor: gray70 }
|
||||
- { name: swift, by: swift, bgColor: black, fgColor: gray70 }
|
||||
- { name: osbxwannabe, by: SpamapS, bgColor: black, fgColor: gray70 }
|
||||
- { name: eon, by: eon, bgColor: '#03146c', fgColor: gray70 }
|
||||
- { name: foo, by: shagr, bgColor: '#282f3f', fgColor: gray70 }
|
||||
- { name: dot, by: Han, download_format: tgz }
|
||||
- { name: elf, by: ElectricElf, download_format: tgz }
|
||||
- { name: quux, by: zhafte, bgColor: '#394563', fgColor: gray70 }
|
||||
# fg is set to black. the image has bg black
|
||||
- { name: pasce, by: soulis, bgColor: gray70, fgColor: gray20 }
|
||||
- { name: jokx, by: "jok'x", bgColor: black, fgColor: green }
|
||||
- { name: ocean, by: tjamtjam, format: gif, bgColor: black, fgColor: gray70 }
|
||||
# fg is set to black. the image has bg black
|
||||
- { name: greenish, by: geel, bgColor: grey70, fgColor: gray20 }
|
||||
- { name: ski, by: skijk, bgColor: gray10, fgColor: gray80 }
|
||||
- { name: ion, by: Ion, bgColor: black, fgColor: blue }
|
||||
- { name: hnsk, by: hnsk, format: gif, bgColor: black, fgColor: gray70 }
|
||||
- { name: shrike, by: Shrike, bgColor: black, fgColor: gray70 }
|
||||
- { name: relaxed, by: Shruuf, bgColor: black, fgColor: gray60 }
|
||||
- { name: gothic, by: benny, bgColor: black, fgColor: gray70 }
|
||||
- { name: ekh, by: ekh, bgColor: black, fgColor: gray90 }
|
||||
# fg is set to black. the image has bg black
|
||||
- { name: simple, by: geel, bgColor: dark orange, fgColor: gray50 }
|
||||
- { name: daywalker, by: The_1, format: gif, bgColor: black, fgColor: gray50 }
|
||||
- { name: whitespace, by: Lanze, bgColor: black, fgColor: gray60 }
|
||||
# fg is set to black. the image has bg black
|
||||
- { name: chill, by: soulis, bgColor: gray50, fgColor: gray20 }
|
||||
- { name: zng, by: ZaNaGa, bgColor: black, fgColor: gray80 }
|
||||
- { name: maria7, by: Zoey, format: gif, download_format: tgz }
|
||||
- { name: shruuf, by: Shruuf, bgColor: black, fgColor: gray50 }
|
||||
- { name: white, by: "???", screenshot: white.jpg, comment: 'theme with white background', bgColor: gray95, fgColor: black }
|
||||
- { name: naula, by: naula, bgColor: black, fgColor: dark orange }
|
||||
- { name: thirdeye, by: salo, bgColor: black, fgColor: gray80 }
|
||||
- { name: laaama, by: laaama, bgColor: black, fgColor: gray60 }
|
||||
- { name: zhafte, by: zhafte, format: gif, bgColor: black, fgColor: gray60 }
|
||||
- { name: BitchX, by: "???", comment: 'BitchX look', bgColor: black, fgColor: gray60 }
|
||||
- { name: jsuvanto, by: JSuvanto, format: gif, bgColor: black, fgColor: gray60 }
|
||||
- { name: mutru, by: Mutru, bgColor: black, fgColor: gray70 }
|
||||
- { name: mika, by: "[Mika]", format: gif, bgColor: black, fgColor: gray70 }
|
||||
- { name: koivula, by: Koivula, format: gif, bgColor: black, fgColor: gray80 }
|
||||
- { name: green, by: greeny, format: gif, bgColor: black, fgColor: gray80 }
|
||||
- { name: crystal, by: kesara, bgColor: black, fgColor: gray60 }
|
||||
- { name: pipeline, by: haro, comment: "<a href=\"https://github.com/hastinbe/irssi-theme-pipeline\">README</a>", bgColor: black, fgColor: gray60 }
|
||||
# Add your theme before this comment!
|
Loading…
Reference in a new issue