]> Git — Sourcephile - julm/julm-nix.git/blob - homes/julm/irssi/config
irssi: move to julm/ what belongs there
[julm/julm-nix.git] / homes / julm / irssi / config
1 settings = {
2 core = {
3 real_name = "Julien Moutinho";
4 user_name = "julm";
5 nick = "julm";
6 timestamp_format = "%H:%M ";
7 log_create_mode = "660";
8 log_timestamp = "%Y-%m-%d %H:%M:%S%p ";
9 settings_autosave = "no";
10 };
11 "irc/core" = {
12 alternate_nick = "julm_";
13 # Recommended by https://github.com/cryptodotis/irssi-otr/blob/master/README.md
14 cmd_queue_speed = "1msec";
15 };
16 silc = {
17 sign_private_messages = "yes";
18 sign_channel_messages = "yes";
19 };
20 "fe-common/core" = {
21 autolog = "yes";
22 autolog_path = "~/log/irssi/$tag/$0/%Y-%m-%d.log";
23 names_max_columns = "9";
24 autolog_ignore_targets = "FreeNode/NickServ GeekNode/C";
25 beep_msg_level = "MSGS NOTICES INVITES DCC DCCMSGS HILIGHT";
26 };
27 "fe-text" = {
28 actlist_sort = "refnum";
29 paste_join_multiline = "no";
30 };
31 "perl/core/scripts" = {
32 awl_block = "20";
33 awl_shared_sbar = "OFF";
34 awl_viewer = "no";
35 nicklist_width = "13";
36 nickcolor_enable_prefix = "OFF";
37 nickcolor_enable_truncate = "ON";
38 nickcolor_truncate_value = "-13";
39 title_string = "IRC: $winname$T";
40 };
41 #proxy = {
42 # irssiproxy_password = "";
43 # irssiproxy_ports = "GeekNode=2777 FreeNode=2778 OFTC=2779 ToileLibre=2780 IndyMedia=2781";
44 # irssiproxy_bind = "127.0.0.1";
45 #};
46 };
47 chatnets = {
48 FreeNode = {
49 type = "IRC";
50 nick = "julm";
51 autosendcmd = "";
52 # Cannot use dynamic password on SASL, and sasl.auth is not encrypted.
53 #sasl_mechanism = "PLAIN";
54 #sasl_username = "julm";
55 #sasl_password = "<password:FreeNode>";
56 };
57 GeekNode = {
58 type = "IRC";
59 nick = "julm";
60 autosendcmd = "passwd GeekNode msg C nick identify <password>";
61 };
62 ToileLibre = {
63 type = "IRC";
64 nick = "julm";
65 autosendcmd = "";
66 };
67 };
68 servers = (
69 { chatnet = "FreeNode";
70 address = "irc.freenode.net";
71 port = "6697";
72 use_ssl = "yes";
73 ssl_verify = "yes";
74 autoconnect = "yes";
75 password = "<password:FreeNode>";
76 },
77 { chatnet = "GeekNode";
78 address = "irc.geeknode.net";
79 port = "6697";
80 use_ssl = "yes";
81 ssl_verify = "yes";
82 autoconnect = "yes";
83 # GeekNode does not use NickServ but C
84 #password = "<password:GeekNode>";
85 },
86 { chatnet = "IndyMedia";
87 address = "irc.indymedia.org";
88 port = "6697";
89 use_ssl = "yes";
90 ssl_verify = "yes";
91 autoconnect = "no";
92 password = "<password:IndyMedia>";
93 },
94 { chatnet = "ToileLibre";
95 address = "lenine-irc.wirefull.org";
96 port = "6697";
97 use_ssl = "yes";
98 ssl_verify = "no";
99 autoconnect = "no";
100 password = "<password:ToileLibre>";
101 }
102 { chatnet = "OFTC";
103 address = "irc.oftc.net";
104 port = "6697";
105 use_ssl = "yes";
106 ssl_verify = "yes";
107 autoconnect = "no";
108 }
109 );
110 channels = (
111 { chatnet = "FreeNode"; name = "haskell-docs"; autojoin = "yes"; },
112 { chatnet = "FreeNode"; name = "haskell-fr"; autojoin = "yes"; },
113 { chatnet = "FreeNode"; name = "haskell.nix"; autojoin = "yes"; },
114 { chatnet = "FreeNode"; name = "ilico"; autojoin = "yes"; },
115 { chatnet = "FreeNode"; name = "l_heureux-cyclage"; autojoin = "no"; },
116 { chatnet = "FreeNode"; name = "lobsters-feed"; autojoin = "yes"; },
117 { chatnet = "FreeNode"; name = "nix-community"; autojoin = "yes"; },
118 { chatnet = "FreeNode"; name = "nixos"; autojoin = "yes"; },
119 { chatnet = "FreeNode"; name = "nixos-aarch64"; autojoin = "yes"; },
120 { chatnet = "FreeNode"; name = "nixos-chat"; autojoin = "yes"; },
121 { chatnet = "FreeNode"; name = "nixos-dev"; autojoin = "yes"; },
122 { chatnet = "FreeNode"; name = "nixos-fr"; autojoin = "yes"; },
123 { chatnet = "FreeNode"; name = "nixos-gnome"; autojoin = "yes"; },
124 { chatnet = "FreeNode"; name = "nixos-nur"; autojoin = "yes"; },
125 { chatnet = "FreeNode"; name = "nixos-security"; autojoin = "yes"; },
126 { chatnet = "FreeNode"; name = "nixos-systemd"; autojoin = "yes"; },
127 { chatnet = "FreeNode"; name = "stupidities"; autojoin = "yes"; },
128 { chatnet = "GeekNode"; name = "autogeree.net"; autojoin = "yes"; },
129 { chatnet = "GeekNode"; name = "grenode"; autojoin = "yes"; },
130 { chatnet = "GeekNode"; name = "gresille"; autojoin = "yes"; },
131 { chatnet = "GeekNode"; name = "illyse"; autojoin = "no"; },
132 { chatnet = "GeekNode"; name = "markas"; autojoin = "yes"; },
133 { chatnet = "GeekNode"; name = "rezine"; autojoin = "yes"; },
134 { chatnet = "GeekNode"; name = "sourcephile"; autojoin = "yes"; },
135 { chatnet = "IndyMedia"; name = "fsb4"; autojoin = "no"; }
136 { chatnet = "ToileLibre"; name = "fsb3"; autojoin = "no"; }
137 );
138 statusbar = {
139 # formats:
140 # when using {templates}, the template is shown only if it's argument isn't
141 # empty unless no argument is given. for example {sb} is printed always,
142 # but {sb $T} is printed only if $T isn't empty.
143 items = {
144 # start/end text in statusbars
145 barstart = "{sbstart}";
146 barend = "{sbend}";
147 topicbarstart = "{topicsbstart}";
148 topicbarend = "{topicsbend}";
149 # treated "normally", you could change the time/user name to whatever
150 time = "{sb $Z}";
151 user = "%N{sbaway $A} ";
152 # treated specially .. window is printed with non-empty windows,
153 # window_empty is printed with empty windows
154 #window = "{sb $winref:$tag/$itemname{sbmode $M}}";
155 #window_empty = "{sb $winref{sbservertag $tag}}";
156 #prompt = "{prompt $[.15]itemname}";
157 #prompt_empty = "{prompt $winname}";
158 #window = "{sb $winref%K:%n$T%K(%n{sbmode $M}%K)%n}";
159 #window_empty = "{sb $winref{sbservertag $tag}}";
160 window = "{sb %c$winref%K:%c$T{sbmode $M}}";
161 window_empty = "{sb $winref{sbservertag $tag}}";
162 prompt = "{sbmode $[-6]usermode} {sbnickmode $[1]cumode}%K$[-12]N %c>%N ";
163 prompt_empty = "{sbmode $[-6]usermode} %K$[-12]N %c>%N ";
164 topic = " $topic";
165 topic_empty = " Irssi v$J - http://www.irssi.org";
166 # all of these treated specially, they're only displayed when needed
167 #more = "-- more --";
168 lag = "{sb %KLag%c:%K$0-}";
169 act = "{sb %KAct%c:%n$0-}";
170 away = "{sbaway $A}";
171 more = " -- more --";
172 };
173
174 # there's two type of statusbars. root statusbars are either at the top
175 # of the screen or at the bottom of the screen. window statusbars are at
176 # the top/bottom of each split window in screen.
177 default = {
178 # the "default statusbar" to be displayed at the bottom of the window.
179 # contains all the normal items.
180
181 window = {
182 # window, root
183 type = "window";
184 # top, bottom
185 placement = "bottom";
186 # number
187 position = "1";
188 # active, inactive, always
189 visible = "active";
190 # list of items in statusbar in the display order
191 items = {
192 barstart = { priority = "100"; };
193 time = { };
194 window = { };
195 window_empty = { };
196 user = { };
197 lag = { priority = "-1"; };
198 act = { priority = "10"; };
199 more = { priority = "-1"; alignment = "right"; };
200 barend = { priority = "100"; alignment = "right"; };
201 usercount = { priority = "100"; alignment = "right"; };
202 otr = { };
203 };
204 };
205
206 window_inact = {
207 type = "window";
208 placement = "bottom";
209 position = "1";
210 visible = "inactive";
211 items = {
212 barstart = { priority = "100"; };
213 window = { };
214 window_empty = { };
215 more = { priority = "-1"; alignment = "right"; };
216 barend = { priority = "100"; alignment = "right"; };
217 };
218 disabled = "yes";
219 };
220
221 # Treat input line as yet another statusbar :)
222 # It's possible to add other items before or after the input line item.
223 prompt = {
224 type = "root";
225 placement = "bottom";
226 position = "100";
227 visible = "always";
228 items = {
229 prompt = { priority = "-1"; };
230 prompt_empty = { priority = "-1"; };
231 # treated specially, this is the real input line.
232 input = { priority = "10"; };
233 };
234 };
235
236 topic = {
237 type = "root";
238 placement = "top";
239 position = "1";
240 visible = "always";
241 items = {
242 topicbarstart = { priority = "100"; };
243 topic = { };
244 topic_empty = { };
245 topicbarend = { priority = "100"; alignment = "right"; };
246 };
247 };
248
249 type = { disabled = "yes"; };
250 };
251 };
252 hilights = (
253 { text = "julm"; nick = "yes"; word = "yes"; },
254 { text = "ju1m"; nick = "yes"; word = "yes"; }
255 );
256 ignores = (
257 { level = "ALL"; mask = "luminux"; },
258 { level = "ALL"; mask = "dameloo"; },
259 { level = "NO_ACT ALL"; mask = "NixOS_GitHub"; },
260 { level = "NO_ACT ALL"; mask = "nix-gsc-io`bot"; },
261 { level = "NO_ACT ALL"; mask = "nix-build"; },
262 { level = "NO_ACT ALL"; mask = "{^_^}"; },
263 { level = "NO_ACT ALL"; mask = "{`_`}"; },
264 { level = "CTCPS"; },
265 {
266 level = "JOINS PARTS QUITS NICKS";
267 channels = (
268 "#grenode",
269 "#gresille",
270 "#haskell",
271 "#haskell-docs",
272 "#haskell-fr",
273 "#haskell-ide-engine",
274 "#haskell.nix",
275 "#ilico",
276 "#lobsters-feed",
277 "#ghc",
278 "#nix-lang",
279 "#nix-community",
280 "#nixos",
281 "#nixos-aarch64",
282 "#nixos-chat",
283 "#nixos-dev",
284 "#nixos-fr",
285 "#nixos-gnome",
286 "#nixos-nur",
287 "#nixos-security",
288 "#nixos-systemd",
289 "#nixops",
290 "#purescript",
291 "#rezine",
292 "#spectrum"
293 );
294 }
295 );
296 windows = {
297 1 = { immortal = "yes"; name = "(status)"; level = "ALL"; };
298 };
299