From 814b00a1fd83cb8229ad527884d8947e6b1845d9 Mon Sep 17 00:00:00 2001 From: Daniel Flanagan Date: Wed, 8 Feb 2017 14:22:10 -0600 Subject: [PATCH] add irc stuff --- misc/irssi/config | 268 ++++++++++++++++ misc/irssi/default.theme | 294 ++++++++++++++++++ misc/irssi/lytedev.theme | 182 +++++++++++ .../arch-linux/provisioning/2-essentials.bash | 23 +- setup | 3 + shell/bashrc | 6 - 6 files changed, 759 insertions(+), 17 deletions(-) create mode 100644 misc/irssi/config create mode 100644 misc/irssi/default.theme create mode 100644 misc/irssi/lytedev.theme diff --git a/misc/irssi/config b/misc/irssi/config new file mode 100644 index 0000000..525efb9 --- /dev/null +++ b/misc/irssi/config @@ -0,0 +1,268 @@ +servers = ( + { + address = "lytedev.io"; + chatnet = "lytedev"; + port = "6667"; + use_ssl = "yes"; + ssl_verify = "no"; + } +); + +chatnets = { lytedev = { type = "IRC"; }; }; + +channels = ( ); + +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"; + znc = "msg *status"; +}; + +settings = { + core = { + real_name = "Unknown"; + user_name = "lytedev"; + nick = "lytedev"; + }; + "fe-text" = { actlist_sort = "refnum"; }; + "fe-common/core" = { theme = "lytedev"; }; +}; +hilights = ( + { text = "wraith"; nick = "yes"; word = "yes"; }, + { text = "lytedev"; nick = "yes"; word = "yes"; } +); +statusbar = { + # formats: + # when using {templates}, the template is shown only if it's argument isn't + # empty unless no argument is given. for example {sb} is printed always, + # but {sb $T} is printed only if $T isn't empty. + + items = { + # start/end text in statusbars + barstart = "{sbstart}"; + barend = "{sbend}"; + + topicbarstart = "{topicsbstart}"; + topicbarend = "{topicsbend}"; + + time = ""; + user = "{sb {sbnickmode $cumode}$N{sbmode $usermode}{sbaway $A}}"; + + # window_empty is printed with empty windows + 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"; + + # all of these treated specially, they're only displayed when needed + lag = "{sb $0-}"; + act = "{sb $0-}"; + more = "more... "; + }; + + # there's two type of statusbars. root statusbars are either at the top + # of the screen or at the bottom of the screen. window statusbars are at + # the top/bottom of each split window in screen. + default = { + # the "default statusbar" to be displayed at the bottom of the window. + # contains all the normal items. + + # statusbar to use in inactive split windows + 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"; }; + }; + }; + + # we treat input line as yet another statusbar :) It's possible to + # add other items before or after the input line item. + prompt = { + type = "root"; + placement = "bottom"; + # we want to be at the bottom always + position = "100"; + visible = "always"; + items = { + prompt = { priority = "-1"; }; + prompt_empty = { priority = "-1"; }; + # treated specially, this is the real input line. + input = { priority = "10"; }; + }; + }; + + # topicbar + topic = { + type = "root"; + placement = "top"; + position = "1"; + visible = "active"; + items = { + topicbarstart = { priority = "100"; }; + topic = { }; + topic_empty = { }; + topicbarend = { priority = "100"; alignment = "right"; }; + }; + }; + }; +}; diff --git a/misc/irssi/default.theme b/misc/irssi/default.theme new file mode 100644 index 0000000..6b6aeab --- /dev/null +++ b/misc/irssi/default.theme @@ -0,0 +1,294 @@ +# 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"; +}; diff --git a/misc/irssi/lytedev.theme b/misc/irssi/lytedev.theme new file mode 100644 index 0000000..b4c8f32 --- /dev/null +++ b/misc/irssi/lytedev.theme @@ -0,0 +1,182 @@ +# Based on neongold by xero @ xero.nu + +default_color = "-1"; + +info_eol = "false"; + +replaces = { "[]" = "%w$*%n"; }; + +abstracts = { + indent_default = " + %Y│%n "; + line_start = ""; + timestamp = ""; + hilight = "%_$*%_"; + error = "%r$*%n"; + channel = "%w$*%n"; + nick = "%_$*%_"; + nickhost = "%g$*"; + server = "%_$*%_"; + comment = "%n(%w$*%n)"; + reason = "{comment $*}"; + mode = "{comment $*}"; + + channick_hilight = "%g$*%N"; + chanhost_hilight = "{nickhost $*}"; + + channick = "$*"; + chanhost = "{nickhost $*}"; + + channelhilight = "%g$*%n"; + + ban = "$*"; + + msgnick = "%Y$0%w$1 %Y│ %N"; + ownmsgnick = "%Y$0%w$1 %Y│ "; + ownnick = "%W$*%n"; + pubnick = "%N$*%n"; + menick = "%y$*%y"; + + # generic one that's used by most actions + action = "%b$* %Y│%b"; + + # own action, both private/public + ownaction = "%b$* %Y│%b"; + + # own action with target, both private/public + ownaction_target = "{action $*}"; + + # private action sent by others + pvtaction = "{action $*}"; + pvtaction_query = "{action $*}"; + + # public action sent by others + pubaction = "{action $*}"; + + whois = "%w │ %n$1-"; + + ownnotice = "%NNote n = %Mnew%n $0 ($1-) "; + notice = "%M$*%n "; + pubnotice_channel = " %N($*)"; + pvtnotice_host = " %N($*)"; + servernotice = " %N($*)"; + + ownctcp = "%N$0 (%w$1-%N) "; + ctcp = "%N$*%n"; + + wallop = "%w$*%n: "; + wallop_nick = "%n$*"; + wallop_action = "%w * $*%n "; + + #netsplit = "%w$*%n"; + #netjoin = "%w$*%n"; + + names_users = "%Y┌─┄┄─┄┄──┘ %nusers in %b$1"; + names_nick = "$2$0%n$1 "; + names_nick_op = "{names_nick $* %w}"; + names_nick_halfop = "{names_nick $* %w}"; + names_nick_voice = "{names_nick $* %w}"; + names_prefix = "%Y│ %n$1"; + names_channel = "%W$*%n"; + + dcc = "%g$*%n"; + dccfile = "%_$*%_"; + + dccownmsg = "%g /* $0 ($1-) */"; + dccownnick = "$*%n"; + dccownquerynick = "$*%n"; + dccownaction = "{action $*}"; + dccownaction_target = "{action $*}"; + + dccmsg = "%g/* $1- ($0) */"; + dccquerynick = "%g$*%n"; + dccaction = "{action $*}"; + + sb_background = "%N%N"; + + sb_prompt_bg = "%n"; + + sbstart = " %Y┌─┄┄─────┘ %w"; + sbend = ""; + + topicsbstart = "%w$C %Y┄─┄$*"; + topicsbend = "$*"; + + prompt = " %Y└──┄┄%n "; + + sb = "%N$*%N "; + #sb = ""; + sbmode = "%b(%w+%N$*%b)%n"; + sbaway = "%b(%Naway%b)%N"; + sbservertag = "%b:%N$0%b(%N^X%b)"; + #sbservertag = ""; + sbnickmode = "%w$0%N$1"; + + #sb_usercount = "{sb %_$0%_ nicks ($1-)}"; + #sb_uc_ircops = "%_*%_$*"; + #sb_uc_ops = "%_@%r$*%n"; + #sb_uc_halfops = "%_%%%g$*%n"; + #sb_uc_voices = "%_+%y$*%n"; + #sb_uc_normal = "%w$*%n"; + #sb_uc_space = " "; + + #sb_act_sep = "%b$*"; + #sb_act_text = "%N$*"; + #sb_act_msg = "%b$*"; + #sb_act_hilight = "%R%9$*%n"; + #sb_act_hilight_color = "%R%9$1-%n"; +}; + +formats = { + "fe-common/core" = { + #line_start = "{line_start}"; + line_start_irssi = "{line_start}"; + join = "%n join %Y┄┄─┤ %n{channick $0} %w(%n{nickhost %w$1}%w)%n joined %w$2"; + part = "%n part %Y┄┄─┤ %n{channick $0} %w(%n{nickhost %w$1}%w)%n left %w$2 {reason %b$3}"; + quit = "%n quit %Y┄┄─┤ %nsignoff%w: %n{channick $0}%w {reason %b$2}"; + kick = "%r kick %Y┄┄─┤ %n{channick $0} was kicked by $2 %w{reason %b$3}"; + nick_changed = " %Y┄┼┄%w %n{channick $0} %Y>> %W{channick $1}"; + your_nick_changed = " %Y┄┼┄%w %n{channick $0} %Y>> %W{channick $1}"; + new_topic = "%Y┌─┄┄─────┘%n\012%Y│ %wtopic %b'$2' %Nset by%b $0\012%Y└─┄┄─┄┄──┐ "; + endofnames = "%Y└─┄┄─┄┄──┐ %btotal: {hilight $2} ops, {hilight $3} halfops, {hilight $4} voices, {hilight $5} normies%n"; + #nick padding + pubmsg = "{pubmsgnick $2 {pubnick \00312$[-7]0}}$1"; + own_msg = "{ownmsgnick $2 {ownnick $[-7]0}}$1"; + own_msg_channel = "{ownmsgnick $3 {ownnick $[-7]0}{msgchannel $1}}$2"; + own_msg_private_query = "{ownprivmsgnick {ownprivnick $[-7]2}}$1"; + pubmsg_me = "{pubmsghinick $[-7]0 {menick $2}}%y$1"; + pubmsg_me_channel = "{pubmsghinick $3 {menick $[-7]0}{msgchannel $1}}$2"; + pubmsg_hilight_channel = "{pubmsghinick $0 $[-7]1$4{msgchannel $2}}$3"; + pubmsg_hilight = "{pubmsghinick $3 {menick $[-7]1}}$2"; + pubmsg_channel = "{pubmsgnick {pubnick %G$[-7]0}$2}$1"; + msg_private_query = "{privmsgnick $[-7]0}$2"; + }; + "fe-common/irc" = { + chanmode_change = "%n mode %Y┄┄─┤ %w(%B{channick $1}%w) %nby %B$2"; + server_chanmode_change = "%n mode %Y┄┄─┤ %w{channick $1} %n(%w$2%n)"; + whois = "%Y┌─┄┄ %n\012%Y│ %wuser %b$0 %w(%n$1%b@%n$2%w) %n\012%Y│ %wname %n$3%n"; + whois_idle = "%Y│ %widle%b %|$1d $2h $3m $4s"; + whois_idle_signon = "%Y│ %widle%b %|$1d $2h $3m $4s {comment signon: $5}"; + whois_server = "%Y│ %wserv%b %|$1 {comment $2}"; + whois_oper = "%Y│ %woper%b {hilight $1}"; + whois_registered = "%Y│ %wrgis%n yes"; + whois_help = "%Y│ %whelp%b available for help"; + whois_modes = "%Y│ %wmode%b $1"; + whois_realhost = "%Y│ %wreal%b $1-"; + whois_usermode = "%Y│ %wumod%b $1"; + whois_channels = "%Y│ %wchan%b %|$1"; + whois_away = "%Y│ %waway%b %|$1"; + whois_special = "%Y│ %winfo%b {comment %|$1}"; + whois_extra = "%Y│ %wextr%b %|$1"; + end_of_whois = "%Y└─┄┄ "; + whois_not_found = "%Y──┄┄ %wthere is no such nick %b$0"; + topic = "%ntopic %Y┄┄─┤ %B$0 %b$1"; + topic_info = " %Y┄┄─┤ %wset by %b$0 %B(%w$1%B)"; + channel_synced = "%n sync %Y┄┄─┤ %nin {hilight $1} secs"; + channel_created = "%n %Y┄┄─┤ %ncreated $1"; + action_core = "%b$[-8]0 %Y│ %b$1"; + own_action = "{ownaction $[-8]0} $1"; + action_private = "{pvtaction $[-8]0}$1"; + action_private_query = "{pvtaction_query $[-8} $2"; + action_public = "{pubaction $[-8]0}$1"; + }; +}; diff --git a/os-specific/arch-linux/provisioning/2-essentials.bash b/os-specific/arch-linux/provisioning/2-essentials.bash index 924f79f..0332453 100755 --- a/os-specific/arch-linux/provisioning/2-essentials.bash +++ b/os-specific/arch-linux/provisioning/2-essentials.bash @@ -10,22 +10,23 @@ sudo pacman -S \ openssh \ openssl \ ruby \ - python python-pip \ + python python-pip \ pass \ qutebrowser \ bash-completion \ fzf \ rsync \ pavucontrol \ - neovim \ + neovim \ vim \ - unzip \ - xsel \ - xclip \ - tmux \ - rxvt-unicode \ - xorg-xinit xorg-server xorg-xrdb \ - xcb-util xcb-util-keysyms xcb-util-wm xorg-xrandr xdotool feh \ + unzip \ + xsel \ + xclip \ + tmux \ + rxvt-unicode \ + xorg-xinit xorg-server xorg-xrdb \ + xcb-util xcb-util-keysyms xcb-util-wm xorg-xrandr xdotool feh \ + irssi \ --noconfirm pacaur -S \ @@ -33,8 +34,8 @@ pacaur -S \ samba \ pulseaudio-ctl \ alsa-plugins \ - unclutter-xfixes-git gtk-theme-arc gtk-engine-murrine xorg-server-devel \ - bspwm-git sxhkd-git xdo-git \ + unclutter-xfixes-git gtk-theme-arc gtk-engine-murrine xorg-server-devel \ + bspwm-git sxhkd-git xdo-git \ --noconfirm --noedit # sudo ln -s /usr/bin/google-chrome-unstable /usr/bin/chrome diff --git a/setup b/setup index fa0a78a..b4837dc 100755 --- a/setup +++ b/setup @@ -52,6 +52,9 @@ links=( "$dfp/text-editor/neovim/" "$HOME/.vim" "$dfp/text-editor/neovim/init.vim" "$HOME/.vimrc" "$dfp/common/colors/vim" "$XDG_CONFIG_HOME/nvim/colors/base16-donokai.vim" + + # irc files + "$dfp/misc/irssi/" "$HOME/.irssi" ) source="" diff --git a/shell/bashrc b/shell/bashrc index 58f2da2..9af4e30 100644 --- a/shell/bashrc +++ b/shell/bashrc @@ -17,12 +17,6 @@ BASE16_SHELL="$DOTFILES_PATH/common/colors/shell" # disable ctrl-s terminal freeze [[ $- == *i* ]] && stty -ixon -# import the fonts we're using so we can pass them to other applications -source "$DOTFILES_PATH/os-specific/arch-linux/scripts/get-fonts.bash" - -# import the functions that retrieve our theme colors -source "$DOTFILES_PATH/os-specific/arch-linux/scripts/get-colors.bash" - # import our aliases source "$DOTFILES_PATH/shell/aliases"