aboutsummaryrefslogtreecommitdiff
path: root/.irssi/pipeline.theme
diff options
context:
space:
mode:
authorPascal Dulieu <pascal@dulieu.uk>2025-07-30 11:45:00 +0100
committerPascal Dulieu <pascal@dulieu.uk>2025-07-30 11:45:00 +0100
commitc19fa68472bec357914ff264e52b45945221d530 (patch)
tree8bb993d3f9bf7b91155300fcc7fe1b282faf7066 /.irssi/pipeline.theme
Diffstat (limited to '.irssi/pipeline.theme')
-rw-r--r--.irssi/pipeline.theme270
1 files changed, 270 insertions, 0 deletions
diff --git a/.irssi/pipeline.theme b/.irssi/pipeline.theme
new file mode 100644
index 0000000..15b5bff
--- /dev/null
+++ b/.irssi/pipeline.theme
@@ -0,0 +1,270 @@
+#!/bin/bash
+#
+# pipeline
+#
+# An Irssi theme inspired by madcow and skeita
+#
+# Copyright (c) 2016 Beau Hastings. All rights reserved.
+# License: GNU General Public License v2
+#
+# Author: Beau Hastings <beausy@gmail.com>
+# URL: https://github.com/hastinbe/irssi-theme-pipeline
+
+replaces = { "/[]=" = "%K$*%n"; "*@+." = "%B$*%n"; };
+
+#replaces = { "!@+" = "%r$*%n"; };
+info_eol = "false";
+
+abstracts = {
+ ##
+ ## generic
+ ##
+
+ # text to insert at the beginning of each non-message line
+ #line_start = "%b.%c.%C.%n ";
+ line_start = "";
+
+ # timestamp styling, nothing by default
+ timestamp = "%B$*%n";
+ #timestamp = "%y$*%n";
+
+ # 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 = "$*";
+ channel = "%_$*%_";
+
+ # nick is printed
+ nick = "$*";
+
+ # nick host is printed
+ nickhost = "$*";
+
+ # server name is printed
+ server = "%_$*%_";
+
+ # some kind of comment is printed
+ #comment = "$*";
+ comment = "%b[%n$*%b]%n";
+
+ # reason for something is printed (part, quit, kick, ..)
+ reason = "{comment %_$*%_}";
+
+ # mode change is printed ([+o nick])
+ #mode = "{comment %n[%W$*]%n}";
+ mode = "%b$*%n";
+
+ ##
+ ## channel specific messages
+ ##
+
+ # highlighted nick/host is printed (joins)
+ channick_hilight = "$*";
+ chanhost_hilight = "{nickhost $*}";
+
+ # nick/host is printed (parts, quits, etc.)
+ channick = "%W$*%n";
+ chanhost = "{nickhost $*}";
+
+ # highlighted channel name is printed
+ channelhilight = "%R$*%n";
+
+ # ban/ban exception/invite list mask is printed
+ ban = "%r$*%n";
+
+ ##
+ ## messages
+ ##
+
+ # the basic styling of how to print message, $0 = nick mode, $1 = nick
+ #msgnick = "<%C$0%n$1-%n> %|";
+ msgnick = "%b%n$0$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-}%W";
+ ownnick = "%y$*%n";
+
+ # public message in channel, $0 = nick mode, $1 = nick
+ pubmsgnick = "{msgnick %b$0%n %w$1%n}";
+ #pubmsgnick = "{msgnick $0$1-}";
+ pubnick = "%w$*%n";
+
+ # public message in channel meant for me, $0 = nick mode, $1 = nick
+ #pubmsgmenick = "%Y{msgnick %B$0%n %w$1%n}%w";
+ pubmsgmenick = "{msgnick $0$1-}";
+ menick = "%g$*%n";
+
+ # public highlighted message in channel
+ # $0 = highlight color, $1 = nick mode, $2 = nick
+ #pubmsghinick = "%Y{msgnick %B$1 %w$2}%w";
+ pubmsghinick = "{msgnick $1 $0$2-%n}";
+
+ # channel name is printed with message
+ msgchannel = "%b:$*%n";
+
+ # private message, $0 = nick, $1 = host
+ #privmsg = "%b.%c.%C.%n(%c$0%n[%c$1]) ";
+ privmsg = "[%w$0!%b$1-%n] ";
+
+ # private message from you, $0 = "msg", $1 = target nick
+ #ownprivmsg = "%b.%c.%C.%n[%cmsg%n(%c$1%n)] ";
+ ownprivmsg = "{msgnick $*}";
+
+ # own private message in query
+ ownprivmsgnick = "{msgnick %W$*%w}";
+ ownprivnick = "%W$0%n%w";
+
+ # private message in query
+ privmsgnick = "{msgnick %B$*%w}";
+
+ ##
+ ## Actions (/ME stuff)
+ ##
+
+ # used internally by this theme
+ action_core = "%W*%w $*%n";
+
+ # generic one that's used by most actions
+ action = "%w{action_core %w$*} ";
+
+ # own action, both private/public
+ ownaction = "{action $*}";
+
+ # own action with target, both private/public
+ ownaction_target = "{action_core $0}%K:%b$1%n ";
+
+ # private action sent by others
+ pvtaction = "%w $*%n ";
+ pvtaction_query = "{action $*}";
+
+ # public action sent by others
+ pubaction = "{action $*}";
+
+
+ ##
+ ## other IRC events
+ ##
+
+ # notices
+ ownnotice = "%b>%c>%C> %c$0%B!%c$1%n: ";
+ notice = "%b$*%n ";
+ pubnotice_channel = "%K:%m$*";
+ pubnotice_host = "%K(%m$*%K)";
+ servernotice = "%g!$*%n ";
+
+ # CTCPs
+ ownctcp = "%b>%c>%C> %c$0%B!%c$1%n: ";
+ ctcp = "%m$*%n";
+
+ # wallops
+ wallop = "%W$*%n: ";
+ wallop_nick = "%n$*";
+ wallop_action = "%W * $*%n ";
+
+ # netsplits
+ netsplit = "%B$*%n";
+ netjoin = "%B$*%n";
+
+ # /names list
+ names_nick = "[%_$0%_%w$1-%n] ";
+ names_users = "%b$*%n:";
+ names_channel = "%B$*%n";
+
+ # DCC
+ dcc = "%b$*%n";
+ dccfile = "%_$*%_";
+
+ # DCC chat, own msg/action
+ dccownmsg = "[%b$0%K($1-%K)%n] ";
+ dccownnick = "%B$*%n";
+ dccownaction = "{action $*}";
+ dccownaction_target = "{action_core $0}%K:%b$1%n ";
+
+ # DCC chat, others
+ dccmsg = "[%B$1-%K(%b$0%K)%n] ";
+ dccquerynick = "%B$*%n";
+ dccaction = "%W (*dcc*) $*%n %|";
+
+ ##
+ ## statusbar
+ ##
+
+ # background of statusbar
+ sb_background = "%0";
+
+ prompt = "%w$*%n%B:%W ";
+
+ # default statusbar item style
+ sb = "%B[%W$*%B]%n";
+ sbmode = " %b+%n$*";
+ sbaway = " (%Baway%n)";
+ sbservertag = ":%W$0";
+ sbmore = "%_-- more --%_";
+ sblag = "{sb L: %B$*}";
+ sbmail = "{sb M: $*}";
+
+ # activity. Det is used for hilights when display doesn't support colors
+ sbact = "{sb {sbact_act $0}{sbact_det $1}}";
+ sbact_act = "A: $*";
+ sbact_det = " D: $*";
+
+ # usercount
+ sb_usercount = "{sb %W$0%n $1-}";
+ sb_uc_ircops = "%_*%_%K/%R$*%n";
+ sb_uc_ops = "%_@%_%K/%G$*%n";
+ sb_uc_halfops = "%_=%_%K/%g$*%n";
+ sb_uc_voices = "%_+%_%K/%Y$*%n";
+ sb_uc_normal = "%_.%_%K/%W$*%n";
+ sb_uc_space = " ";
+
+};
+
+# %r%n%_$0%_$1%K |%n %|
+formats = {
+ "fe-common/core" = {
+ pubmsg = "{pubmsgnick $2 {pubnick $[-16]0}}$1";
+ join = " %_%Bjoin%_%K |%n %g{channick_hilight $0}%K!%n{chanhost_hilight $1}";
+ part = " %_%Bpart%_%K |%n %W{channick $0}%K!%n{chanhost $1}: {reason $3}";
+ kick = " %_%Bkick%_%K |%n %r{channick $0} %nby {nick $2} from {channel $1}: {reason $3}";
+ quit = " %_%Bquit%_%K |%n %W{channick $0}%K!%n{chanhost $1}: {reason $2}";
+ nick_changed = " %_%Bnick%_%K |%n {nick %w$0%n} %Nis now {nick %W$1%n}";
+ endofnames = "{channel $0}: {hilight $1} nicks ({comment @/{hilight $2} +/{hilight $3} -/{hilight $4}})";
+ own_msg = "{ownmsgnick $2 {ownnick $[-16]0}}$1";
+ own_msg_channel = "{ownmsgnick $3 {ownnick $[-16]0}{msgchannel $1}}$2";
+ pubmsg_me = "{pubmsgmenick $2 {menick $[-16]0}}$1";
+ pubmsg_me_channel = "{pubmsgmenick $3 {menick $[-16]0}{msgchannel $1}}$2";
+ pubmsg_hilight = "{pubmsghinick $0 $3 $[-16]1}$2";
+ pubmsg_channel = "{pubmsgnick $3 {pubnick $[-16]0}{msgchannel $1}}$2";
+ chanmode_change = " %_%Bmode%_%K |%n {$channel $0} %W{channick_hilight $2} %nsets mode %B{$mode $1}";
+ channel_mode = " %_%Bmode%_%K |%n {$channel $0} %W{channick_hilight $2} %nsets mode %B{$mode $1}";
+ };
+ "fe-common/text" = { window_info_sticky = "%# Sticky : $0"; };
+ "fe-common/irc" = {
+ chanmode_change = " %_%Bmode%_%K |%n %y{channick_hilight $2} %nsets mode %b{$mode $1} %non {$channelhilight $0}";
+ whois = "{hilight $0} [{nickhost $1@$2}] [$whois_country]%: ircname : $3";
+ server_chanmode_change = "{netsplit ServerMode}/{channelhilight $0}: {mode $1} by {nick $2}";
+ whois_server = " server : $1 ({comment $2})";
+ own_action = "{ownaction $0}%|$1";
+ action_public = "{pubaction $0}%|$1";
+ };
+};