Merge branch 'wip-refactor' into lappy

This commit is contained in:
Daniel Flanagan 2019-12-31 15:07:09 -06:00
commit e2a854df65
95 changed files with 2340 additions and 79 deletions

View File

@ -1,5 +1,4 @@
MAKEFILE_PATH ?= $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
ALERT_AGREEMENT_FILE ?= "$(MAKEFILE_PATH)/.agreed-to-erasing-files.lock"
default: install

View File

@ -387,7 +387,7 @@ margin-bottom = ${env:WINDOW_GAP:0}
[module/microphone]
type = custom/script
exec = $DOTFILES_PATH/de/bar/mic.bash
exec = $DOTFILES_PATH/apps/de/bar/mic.bash
tail = true
format = <label>
label-foreground = ${colors.icon}

View File

@ -5,7 +5,7 @@ source "$HOME/.bashrc"
# NO_COMPTON=1
BORDER_WIDTH=5 # change in bspwm_config, here for launcher
START_BAR=1
BAR_COMMAND="$DOTFILES_PATH/de/bar/bar.bash"
BAR_COMMAND="$DOTFILES_PATH/apps/de/bar/bar.bash"
if [[ -z "$XDG_CONFIG_HOME" ]]; then
export XDG_CONFIG_HOME="$HOME/.config"
@ -21,7 +21,7 @@ if [ -e "$BSPWM_STATE" ] ; then
rm "$BSPWM_STATE"
fi
source "$DOTFILES_PATH/de/bspwm/config"
source "$DOTFILES_PATH/apps/de/bspwm/config"
# TODO: switch to alacritty
if command -v urxvtd >/dev/null 2>&1; then
@ -38,8 +38,8 @@ if command -v sxhkd >/dev/null 2>&1; then
sxhkd -m -1 &
fi
if [ -f "$DOTFILES_PATH/de/x/loadresources" ]; then
"$DOTFILES_PATH/de/x/loadresources"
if [ -f "$DOTFILES_PATH/apps/de/x/loadresources" ]; then
"$DOTFILES_PATH/apps/de/x/loadresources"
fi
if [ -f "$HOME/.fehbg" ]; then

View File

@ -1,3 +1,3 @@
gtk-icon-theme-name = "elementary"
gtk-theme-name = "Arc-Dark"
gtk-font-name = "Iosevka 9"
gtk-font-name = "Iosevka Type 10"

View File

@ -1,5 +1,5 @@
[Settings]
gtk-icon-theme-name = elementary
gtk-theme-name = Arc-Dark
gtk-font-name = Iosevka 9
gtk-font-name = Iosevka Type 10
gtk-application-prefer-dark-theme = true

View File

@ -43,4 +43,4 @@ export SSH_AUTH_SOCK
# autocutsel -selection SECONDARY -fork &
# fire up wm
exec "$DOTFILES_PATH/de/bspwm/wmstart"
exec "$DOTFILES_PATH/apps/de/bspwm/wmstart"

View File

@ -19,7 +19,7 @@ fi
sysresources="/etc/X11/xinit/.Xresources"
sysmodmap="/etc/X11/xinit/.Xmodmap"
userresources="$HOME/.Xresources"
usercolors="$DOTFILES_PATH/scripts/colors/xresources"
usercolors="$DOTFILES_PATH/bin/lib/colors/xresources"
userenv="$EDFP/x/${ENV_TYPE}resources"
usermodmap="$EDFP/x/modmap"

View File

@ -36,8 +36,8 @@ if [ -f "$HOME/.xmodmap" ]; then
xmodmap "$HOME/.xmodmap"
fi
if [ -f "$DOTFILES_PATH/de/x/loadresources" ]; then
"$DOTFILES_PATH/de/x/loadresources"
if [ -f "$DOTFILES_PATH/apps/de/x/loadresources" ]; then
"$DOTFILES_PATH/apps/de/x/loadresources"
fi
if command -v xcape >/dev/null 2>&1; then

View File

@ -1,27 +1,22 @@
## Some of my favorite font setups...
## *font: xft:Monaco for Powerline-9
## *faceName: xft:Monaco for Powerline-9
## *boldFont: xft:Monaco for Powerline-9
## *letterSpace: -1
## *font: xft:artwiz lemon-8
## *faceName: xft:artwiz lemon-8
## *boldFont: xft:artwiz lemon-8
## *letterSpace: 0
## *font: xft:xos4 Terminuss Powerline-8
## *faceName: xft:xos4 Terminuss Powerline-8
## *boldFont: xft:xos4 Terminuss Powerline-8
## *letterSpace: 0
## Set fonts in "$HOME/.Xresources.env"
URxvt.font: xft:Iosevka Term:pixelsize=14,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14
URxvt.faceName: xft:Iosevka Term:pixelsize=14,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14
Emacs.font: Iosevka Term
Emacs.faceName: Iosevka Term
*.font: xft:Iosevka Term:pixelsize=14,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14
*.boldFont: xft:Iosevka Term Bold:pixelsize=14,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14
*.letterSpace: 0
# URxvt.transparent: true
# URxvt.shading: 70
URxvt.letterSpace: 0
## rxvt-unicode configuration
URxvt.termName: rxvt-unicode

View File

@ -28,7 +28,17 @@ function ltl() {
echo "$l"
}
function ltld() {
local d="${1-$PWD}"
unset -v l
for f in "$d"/*; do
[[ $f -nt $l ]] && [[ -d $f ]] && l="$f"
done
echo "$l"
}
alias vltl="vim \"\$(ltl)\""
alias cdltl="cd \"\$(ltld)\""
alias ltlv="vltl"
# navigation aliases
@ -41,7 +51,8 @@ function c() {
}
alias cd..="cd .."
alias cdd="cd \"\$DOTFILES_PATH\"" # go to dotfiles
alias cdc="cd \"\$XDG_CONFIG_HOME\"" # go to
alias cde="cd \"\$ENV_DOTFILES_PATH\"" # go to env dotfiles
alias cdc="cd \"\$XDG_CONFIG_HOME\"" # go to ~/.config
alias cdn="cd \"\$NOTES_PATH\""
alias cdl="cd \"\$NICE_HOME/dl\""
alias cdg="cd \"\$NICE_HOME/games\""
@ -110,6 +121,8 @@ alias logsr="sudo journalctl -r"
alias logsf="sudo journalctl -f"
alias bt="sudo bluetoothctl"
alias btctl="bt"
alias btctl="sudo bluetoothctl"
alias pbcopy="clip"
alias pt="htop -t" # experimental htop tree-view-by-default
alias resrc="source \$HOME/.bashrc"
alias redshift="redshift -r -l 39.0997:-94.5786 -t 6500K:2500K"
@ -134,3 +147,6 @@ alias mutt="neomutt"
# fsw aliases
alias fsw-mix-test="fsw \"mix test\" ./**/*.{ex,exs,erl,hrl,xrl,yrl}"
# weechat aliases
alias chat="WEECHAT_PASSPHRASE=\"\$(pass weechat-passphrase | head -n 1)\" weechat"

View File

@ -20,31 +20,31 @@ export NICE_HOME
export NOTES_DIR="$NICE_HOME/doc/notes"
# set our PATH
source "$DOTFILES_PATH/shell/bash/paths"
source "$DOTFILES_PATH/apps/shell/bash/paths"
# stop parsing on a non-interactive shell
[ -z "$PS1" ] && return
# load our key binds
case $- in
*i*) bind -f "$DOTFILES_PATH/shell/inputrc";;
*i*) bind -f "$DOTFILES_PATH/apps/shell/inputrc";;
*) ;;
esac
# import our aliases
source "$DOTFILES_PATH/shell/bash/aliases"
source "$DOTFILES_PATH/apps/shell/bash/aliases"
# import our autocompletions
source "$DOTFILES_PATH/shell/bash/autocompletions"
source "$DOTFILES_PATH/apps/shell/bash/autocompletions"
# load our vconsole colors
if [ "${TERM%%-*}" = 'linux' ] && [[ $- == *i* ]]; then
BASE16_SHELL="$DOTFILES_PATH/scripts/colors/vconsole"
BASE16_SHELL="$DOTFILES_PATH/bin/lib/colors/vconsole"
[[ -s "$BASE16_SHELL" ]] && source "$BASE16_SHELL"
fi
# load our terminal colors
BASE16_SHELL="$DOTFILES_PATH/scripts/colors/shell"
BASE16_SHELL="$DOTFILES_PATH/bin/lib/colors/shell"
[[ -s "$BASE16_SHELL" ]] && source "$BASE16_SHELL"
# disable ctrl-s terminal freeze
@ -54,7 +54,7 @@ BASE16_SHELL="$DOTFILES_PATH/scripts/colors/shell"
shopt -s globstar
# import our prompt
source "$DOTFILES_PATH/shell/bash/prompt"
source "$DOTFILES_PATH/apps/shell/bash/prompt"
# prevents binds or commands pulling from history from insta-sending, and
# instead places them in the readline for editing
@ -120,3 +120,9 @@ export ERL_AFLAGS="-kernel shell_history enabled -kernel shell_history_file_byte
_make_paths
[ -f ~/.fzf.bash ] && source ~/.fzf.bash
if [[ -d ~/.asdf/ ]] && [[ -f ~/.asdf/asdf.sh ]]; then
source "~/.asdf/asdf.sh"
elif [[ -d /opt/asdf-vm/ ]] && [[ -f /opt/asdf-vm/asdf.sh ]]; then
source "/opt/asdf-vm/asdf.sh"
fi

View File

@ -8,6 +8,8 @@ bind-key T source-file ~/.tmux.conf \; display-message "source-file done"
unbind r
bind r source-file ~/.tmux.conf
set -as terminal-overrides ',xterm*:smxx=\E[9m'
# sane defaults
set -g default-terminal "tmux-256color"
set-option -g mouse on
@ -60,7 +62,7 @@ set -g status-right "#[fg=colour4]#W#[fg=default]#[bg=default] #H"
set -g status-left-length 200
set -g status-left "#[fg=colour7]#(~/.config/dotfiles/bin/tmux-session-list #S)"
bind-key O run-shell "~/.config/dotfiles/bin/tmux-save-buffer #S" \; display-message "Saved buffer to ~/<date>.tmux-buffer.log"
bind-key O run-shell "~/.config/dotfiles/bin/tmux-save-buffer #S" \; display-message "Saved buffer to ~/<date>.<session-name>.tmux-buffer.log"
# pane split line colors
set -g pane-active-border-style bg=black,fg=blue
@ -150,4 +152,3 @@ bind -T off F12 \
refresh-client -S
unbind-key C-p

View File

@ -1,4 +1,4 @@
XDG_DESKTOP_DIR="$HOME/Destop"
XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOCUMENTS_DIR="$HOME/../doc"
XDG_DOWNLOAD_DIR="$HOME/../dl"
XDG_MUSIC_DIR="$HOME/Music"

View File

@ -1,2 +1,20 @@
*
!.gitignore
/*
!/alias.conf
!/buflist.conf
!/charset.conf
!/exec.conf
!/fifo.conf
!/fset.conf
!/irc.conf
!/logger.conf
!/lua.conf
!/perl.conf
!/plugins.conf
!/python.conf
!/relay.conf
!/script.conf
!/spell.conf
!/tcl.conf
!/trigger.conf
!/weechat.conf
!/xfer.conf

47
apps/weechat/alias.conf Normal file
View File

@ -0,0 +1,47 @@
#
# weechat -- alias.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[cmd]
AAWAY = "allserv /away"
ANICK = "allserv /nick"
BEEP = "print -beep"
BYE = "quit"
C = "buffer clear"
CHAT = "dcc chat"
CL = "buffer clear"
CLOSE = "buffer close"
EXIT = "quit"
IG = "ignore"
J = "join"
K = "kick"
KB = "kickban"
LEAVE = "part"
M = "msg"
MSGBUF = "command -buffer $1 * /input send $2-"
MUB = "unban *"
N = "names"
Q = "query"
REDRAW = "window refresh"
SAY = "msg *"
SIGNOFF = "quit"
T = "topic"
UB = "unban"
UMODE = "mode $nick"
V = "command core version"
W = "who"
WC = "window close"
WI = "whois"
WII = "whois $1 $1"
WM = "window merge"
WW = "whowas"
[completion]
MSGBUF = "%(buffers_plugins_names)"

39
apps/weechat/buflist.conf Normal file
View File

@ -0,0 +1,39 @@
#
# weechat -- buflist.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
add_newline = on
auto_scroll = 50
display_conditions = "${buffer.hidden}==0"
enabled = on
mouse_jump_visited_buffer = off
mouse_move_buffer = on
mouse_wheel = on
nick_prefix = off
nick_prefix_empty = on
signals_refresh = ""
sort = "number,-active"
[format]
buffer = "${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}"
buffer_current = "${color:,blue}${format_buffer}"
hotlist = " ${color:green}(${hotlist}${color:green})"
hotlist_highlight = "${color:magenta}"
hotlist_low = "${color:white}"
hotlist_message = "${color:brown}"
hotlist_none = "${color:default}"
hotlist_private = "${color:green}"
hotlist_separator = "${color:default},"
indent = " "
lag = " ${color:green}[${color:brown}${lag}${color:green}]"
name = "${name}"
nick_prefix = "${color_nick_prefix}${nick_prefix}"
number = "${color:green}${number}${if:${number_displayed}?.: }"

18
apps/weechat/charset.conf Normal file
View File

@ -0,0 +1,18 @@
#
# weechat -- charset.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[default]
decode = "iso-8859-1"
encode = ""
[decode]
[encode]

19
apps/weechat/exec.conf Normal file
View File

@ -0,0 +1,19 @@
#
# weechat -- exec.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[command]
default_options = ""
purge_delay = 0
shell = "${env:SHELL}"
[color]
flag_finished = lightred
flag_running = lightgreen

14
apps/weechat/fifo.conf Normal file
View File

@ -0,0 +1,14 @@
#
# weechat -- fifo.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[file]
enabled = on
path = "%h/weechat_fifo"

95
apps/weechat/fset.conf Normal file
View File

@ -0,0 +1,95 @@
#
# weechat -- fset.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
auto_unmark = off
condition_catch_set = "${count} >= 1"
export_help_default = on
format_number = 1
marked_string = "*"
scroll_horizontal = 10
show_plugins_desc = off
sort = "~name"
unmarked_string = " "
use_color_value = off
use_keys = on
use_mute = off
[format]
export_help = "# ${description2}"
export_option = "/set ${name} ${quoted_value}"
export_option_null = "/unset ${name}"
option1 = ""
option2 = "${marked} ${name} ${type} ${value2}${newline} ${empty_name} ${_default_value}${color:darkgray} -- ${min}..${max}${newline} ${empty_name} ${description}"
[color]
default_value = default
default_value_selected = white
description = default
description_selected = white
file = default
file_changed = brown
file_changed_selected = yellow
file_selected = white
help_default_value = white
help_description = default
help_name = white
help_quotes = darkgray
help_values = default
index = cyan
index_selected = lightcyan
line_marked_bg1 = default
line_marked_bg2 = default
line_selected_bg1 = blue
line_selected_bg2 = red
marked = brown
marked_selected = yellow
max = default
max_selected = white
min = default
min_selected = white
name = default
name_changed = brown
name_changed_selected = yellow
name_selected = white
option = default
option_changed = brown
option_changed_selected = yellow
option_selected = white
parent_name = default
parent_name_selected = white
parent_value = cyan
parent_value_selected = lightcyan
quotes = darkgray
quotes_changed = default
quotes_changed_selected = white
quotes_selected = default
section = default
section_changed = brown
section_changed_selected = yellow
section_selected = white
string_values = default
string_values_selected = white
title_count_options = cyan
title_current_option = lightcyan
title_filter = yellow
title_marked_options = lightgreen
title_sort = white
type = green
type_selected = lightgreen
unmarked = default
unmarked_selected = white
value = cyan
value_changed = brown
value_changed_selected = yellow
value_selected = lightcyan
value_undef = magenta
value_undef_selected = lightmagenta

154
apps/weechat/irc.conf Normal file
View File

@ -0,0 +1,154 @@
#
# weechat -- irc.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
buffer_open_before_autojoin = on
buffer_open_before_join = off
buffer_switch_autojoin = on
buffer_switch_join = on
color_nicks_in_names = off
color_nicks_in_nicklist = off
color_nicks_in_server_messages = on
color_pv_nick_like_channel = on
ctcp_time_format = "%a, %d %b %Y %T %z"
display_away = local
display_ctcp_blocked = on
display_ctcp_reply = on
display_ctcp_unknown = on
display_host_join = on
display_host_join_local = on
display_host_quit = on
display_join_message = "329,332,333,366"
display_old_topic = on
display_pv_away_once = on
display_pv_back = on
highlight_channel = "$nick"
highlight_pv = "$nick"
highlight_server = "$nick"
highlight_tags_restrict = "irc_privmsg,irc_notice"
item_channel_modes_hide_args = "k"
item_display_server = buffer_plugin
item_nick_modes = on
item_nick_prefix = on
join_auto_add_chantype = off
msgbuffer_fallback = current
new_channel_position = none
new_pv_position = none
nick_completion_smart = speakers
nick_mode = prefix
nick_mode_empty = off
nicks_hide_password = "nickserv"
notice_as_pv = auto
notice_welcome_redirect = on
notice_welcome_tags = ""
notify_tags_ison = "notify_message"
notify_tags_whois = "notify_message"
part_closes_buffer = off
pv_buffer = independent
pv_tags = "notify_private"
raw_messages = 256
server_buffer = merge_with_core
smart_filter = on
smart_filter_chghost = on
smart_filter_delay = 5
smart_filter_join = on
smart_filter_join_unmask = 30
smart_filter_mode = "+"
smart_filter_nick = on
smart_filter_quit = on
temporary_servers = off
topic_strip_colors = off
[color]
input_nick = lightcyan
item_channel_modes = default
item_lag_counting = default
item_lag_finished = yellow
item_nick_modes = default
message_chghost = brown
message_join = green
message_quit = red
mirc_remap = "1,-1:darkgray"
nick_prefixes = "y:lightred;q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue"
notice = green
reason_quit = default
topic_current = default
topic_new = white
topic_old = default
[network]
autoreconnect_delay_growing = 2
autoreconnect_delay_max = 600
ban_mask_default = "*!$ident@$host"
channel_encode = off
colors_receive = on
colors_send = on
lag_check = 60
lag_max = 1800
lag_min_show = 500
lag_reconnect = 300
lag_refresh_interval = 1
notify_check_ison = 1
notify_check_whois = 5
sasl_fail_unavailable = on
send_unknown_commands = off
whois_double_nick = off
[msgbuffer]
[ctcp]
[ignore]
[server_default]
addresses = ""
anti_flood_prio_high = 2
anti_flood_prio_low = 2
autoconnect = off
autojoin = ""
autoreconnect = on
autoreconnect_delay = 10
autorejoin = off
autorejoin_delay = 30
away_check = 0
away_check_max_nicks = 25
capabilities = ""
command = ""
command_delay = 0
connection_timeout = 60
ipv6 = on
local_hostname = ""
msg_kick = ""
msg_part = "WeeChat ${info:version}"
msg_quit = "WeeChat ${info:version}"
nicks = "daniel,daniel1,daniel2,daniel3,daniel4"
nicks_alternate = on
notify = ""
password = ""
proxy = ""
realname = ""
sasl_fail = continue
sasl_key = ""
sasl_mechanism = plain
sasl_password = ""
sasl_timeout = 15
sasl_username = ""
split_msg_max_length = 512
ssl = off
ssl_cert = ""
ssl_dhkey_size = 2048
ssl_fingerprint = ""
ssl_priorities = "NORMAL:-VERS-SSL3.0"
ssl_verify = on
usermode = ""
username = "daniel"
[server]

35
apps/weechat/logger.conf Normal file
View File

@ -0,0 +1,35 @@
#
# weechat -- logger.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
backlog = 20
backlog_conditions = ""
[color]
backlog_end = default
backlog_line = default
[file]
auto_log = on
flush_delay = 120
fsync = off
info_lines = off
mask = "$plugin.$name.weechatlog"
name_lower_case = on
nick_prefix = ""
nick_suffix = ""
path = "%h/logs/"
replacement_char = "_"
time_format = "%Y-%m-%d %H:%M:%S"
[level]
[mask]

14
apps/weechat/lua.conf Normal file
View File

@ -0,0 +1,14 @@
#
# weechat -- lua.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
check_license = off
eval_keep_context = on

14
apps/weechat/perl.conf Normal file
View File

@ -0,0 +1,14 @@
#
# weechat -- perl.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
check_license = off
eval_keep_context = on

138
apps/weechat/plugins.conf Normal file
View File

@ -0,0 +1,138 @@
#
# weechat -- plugins.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[var]
perl.highmon.alignment = "channel"
perl.highmon.away_only = "off"
perl.highmon.color_buf = "on"
perl.highmon.first_run = "true"
perl.highmon.hotlist_show = "off"
perl.highmon.logging = "off"
perl.highmon.merge_private = "off"
perl.highmon.nick_prefix = "<"
perl.highmon.nick_suffix = ">"
perl.highmon.output = "buffer"
perl.highmon.short_names = "off"
python.autobump.highprio_buffers = "irc.server.*,core.weechat"
python.autobump.lowprio_buffers = ""
python.autobump.tags = "notify_message,notify_private,self_msg"
python.buffer_open.layout_apply = "off"
python.buffer_open.max_closed = "10"
python.go.auto_jump = "off"
python.go.buffer_number = "on"
python.go.color_name = "black,cyan"
python.go.color_name_highlight = "red,cyan"
python.go.color_name_highlight_selected = "red,brown"
python.go.color_name_selected = "black,brown"
python.go.color_number = "yellow,magenta"
python.go.color_number_selected = "yellow,red"
python.go.fuzzy_search = "off"
python.go.message = "Go to: "
python.go.short_name = "off"
python.go.sort = "number,beginning"
python.go.use_core_instead_weechat = "off"
python.grep.clear_buffer = "off"
python.grep.default_tail_head = "10"
python.grep.go_to_buffer = "on"
python.grep.log_filter = ""
python.grep.max_lines = "4000"
python.grep.show_summary = "on"
python.grep.size_limit = "2048"
python.grep.timeout_secs = "300"
python.slack.auto_open_threads = "false"
python.slack.background_load_all_history = "false"
python.slack.channel_name_typing_indicator = "true"
python.slack.color_buflist_muted_channels = "darkgray"
python.slack.color_edited_suffix = "095"
python.slack.color_reaction_suffix = "darkgray"
python.slack.color_thread_suffix = "lightcyan"
python.slack.colorize_private_chats = "false"
python.slack.debug_level = "3"
python.slack.debug_mode = "false"
python.slack.distracting_channels = ""
python.slack.external_user_suffix = "*"
python.slack.files_download_location = ""
python.slack.group_name_prefix = "&"
python.slack.map_underline_to = "_"
python.slack.migrated = "true"
python.slack.muted_channels_activity = "personal_highlights"
python.slack.never_away = "false"
python.slack.notify_usergroup_handle_updated = "false"
python.slack.record_events = "false"
python.slack.render_bold_as = "bold"
python.slack.render_italic_as = "italic"
python.slack.send_typing_notice = "true"
python.slack.server_aliases = ""
python.slack.shared_name_prefix = "%"
python.slack.short_buffer_names = "false"
python.slack.show_buflist_presence = "true"
python.slack.show_reaction_nicks = "false"
python.slack.slack_api_token = "INSERT VALID KEY HERE!"
python.slack.slack_timeout = "20000"
python.slack.switch_buffer_on_join = "true"
python.slack.thread_messages_in_channel = "false"
python.slack.unfurl_auto_link_display = "both"
python.slack.unfurl_ignore_alt_text = "false"
python.slack.unhide_buffers_with_activity = "false"
[desc]
python.autobump.highprio_buffers = "List of buffers to be sorted with high priority"
python.autobump.lowprio_buffers = "List of buffers to be sorted with low priority"
python.autobump.tags = "List of message tags that are considered activity"
python.buffer_open.layout_apply = "open closed layout buffers on /layout apply (default: "off")"
python.buffer_open.max_closed = "maximum number of closed buffers to remember (default: "10")"
python.go.auto_jump = "automatically jump to buffer when it is uniquely selected (default: "off")"
python.go.buffer_number = "display buffer number (default: "on")"
python.go.color_name = "color for buffer name (not selected) (default: "black,cyan")"
python.go.color_name_highlight = "color for highlight in buffer name (not selected) (default: "red,cyan")"
python.go.color_name_highlight_selected = "color for highlight in a selected buffer name (default: "red,brown")"
python.go.color_name_selected = "color for a selected buffer name (default: "black,brown")"
python.go.color_number = "color for buffer number (not selected) (default: "yellow,magenta")"
python.go.color_number_selected = "color for selected buffer number (default: "yellow,red")"
python.go.fuzzy_search = "search buffer matches using approximation (default: "off")"
python.go.message = "message to display before list of buffers (default: "Go to: ")"
python.go.short_name = "display and search in short names instead of buffer name (default: "off")"
python.go.sort = "comma-separated list of keys to sort buffers (the order is important, sorts are performed in the given order): name = sort by name (or short name), (default: "number,beginning")"
python.go.use_core_instead_weechat = "use name "core" instead of "weechat" for core buffer (default: "off")"
python.slack.auto_open_threads = "Automatically open threads when mentioned or inresponse to own messages."
python.slack.background_load_all_history = "Load history for each channel in the background as soon as it opens, rather than waiting for the user to look at it."
python.slack.channel_name_typing_indicator = "Change the prefix of a channel from # to > when someone is typing in it. Note that this will (temporarily) affect the sort order if you sort buffers by name rather than by number."
python.slack.color_buflist_muted_channels = "Color to use for muted channels in the buflist"
python.slack.color_edited_suffix = "Color to use for (edited) suffix on messages that have been edited."
python.slack.color_reaction_suffix = "Color to use for the [:wave:(@user)] suffix on messages that have reactions attached to them."
python.slack.color_thread_suffix = "Color to use for the [thread: XXX] suffix on messages that have threads attached to them."
python.slack.colorize_private_chats = "Whether to use nick-colors in DM windows."
python.slack.debug_level = "Show only this level of debug info (or higher) when debug_mode is on. Lower levels -> more messages."
python.slack.debug_mode = "Open a dedicated buffer for debug messages and start logging to it. How verbose the logging is depends on log_level."
python.slack.distracting_channels = "List of channels to hide."
python.slack.external_user_suffix = "The suffix appended to nicks to indicate external users."
python.slack.files_download_location = "If set, file attachments will be automatically downloaded to this location."
python.slack.group_name_prefix = "The prefix of buffer names for groups (private channels)."
python.slack.map_underline_to = "When sending underlined text to slack, use this formatting character for it. The default ("_") sends it as italics. Use "*" to send bold instead."
python.slack.muted_channels_activity = "Control which activity you see from muted channels, either none, personal_highlights, all_highlights or all. none: Don't show any activity. personal_highlights: Only show personal highlights, i.e. not @channel and @here. all_highlights: Show all highlights, but not other messages. all: Show all activity, like other channels."
python.slack.never_away = "Poke Slack every five minutes so that it never marks you "away"."
python.slack.notify_usergroup_handle_updated = "Control if you want to see notification when a usergroup's handle has changed, either true or false"
python.slack.record_events = "Log all traffic from Slack to disk as JSON."
python.slack.render_bold_as = "When receiving bold text from Slack, render it as this in weechat."
python.slack.render_italic_as = "When receiving bold text from Slack, render it as this in weechat. If your terminal lacks italic support, consider using "underline" instead."
python.slack.send_typing_notice = "Alert Slack users when you are typing a message in the input bar (Requires reload)"
python.slack.server_aliases = "A comma separated list of `subdomain:alias` pairs. The alias will be used instead of the actual name of the slack (in buffer names, logging, etc). E.g `work:no_fun_allowed` would make your work slack show up as `no_fun_allowed` rather than `work.slack.com`."
python.slack.shared_name_prefix = "The prefix of buffer names for shared channels."
python.slack.short_buffer_names = "Use `foo.#channel` rather than `foo.slack.com.#channel` as the internal name for Slack buffers."
python.slack.show_buflist_presence = "Display a `+` character in the buffer list for present users."
python.slack.show_reaction_nicks = "Display the name of the reacting user(s) alongside each reactji."
python.slack.slack_api_token = "List of Slack API tokens, one per Slack instance you want to connect to. See the README for details on how to get these."
python.slack.slack_timeout = "How long (ms) to wait when communicating with Slack."
python.slack.switch_buffer_on_join = "When /joining a channel, automatically switch to it as well."
python.slack.thread_messages_in_channel = "When enabled shows thread messages in the parent channel."
python.slack.unfurl_auto_link_display = "When displaying ("unfurling") links to channels/users/etc, determine what is displayed when the text matches the url without the protocol. This happens when Slack automatically creates links, e.g. from words separated by dots or email addresses. Set it to "text" to only display the text written by the user, "url" to only display the url or "both" (the default) to display both."
python.slack.unfurl_ignore_alt_text = "When displaying ("unfurling") links to channels/users/etc, ignore the "alt text" present in the message and instead use the canonical name of the thing being linked to."
python.slack.unhide_buffers_with_activity = "When activity occurs on a buffer, unhide it even if it was previously hidden (whether by the user or by the distracting_channels setting)."

14
apps/weechat/python.conf Normal file
View File

@ -0,0 +1,14 @@
#
# weechat -- python.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
check_license = off
eval_keep_context = on

55
apps/weechat/relay.conf Normal file
View File

@ -0,0 +1,55 @@
#
# weechat -- relay.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
auto_open_buffer = on
raw_messages = 256
[color]
client = cyan
status_active = lightblue
status_auth_failed = lightred
status_connecting = yellow
status_disconnected = lightred
status_waiting_auth = brown
text = default
text_bg = default
text_selected = white
[network]
allow_empty_password = off
allowed_ips = ""
bind_address = ""
clients_purge_delay = 0
compression_level = 6
ipv6 = on
max_clients = 5
password = ""
ssl_cert_key = "%h/ssl/relay.pem"
ssl_priorities = "NORMAL:-VERS-SSL3.0"
totp_secret = ""
totp_window = 0
websocket_allowed_origins = ""
[irc]
backlog_max_minutes = 1440
backlog_max_number = 256
backlog_since_last_disconnect = on
backlog_since_last_message = off
backlog_tags = "irc_privmsg"
backlog_time_format = "[%H:%M] "
[weechat]
commands = ""
[port]
[path]

56
apps/weechat/script.conf Normal file
View File

@ -0,0 +1,56 @@
#
# weechat -- script.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
columns = "%s %n %V %v %u | %d | %t"
diff_color = on
diff_command = "auto"
display_source = on
quiet_actions = on
sort = "i,p,n"
translate_description = on
use_keys = on
[color]
status_autoloaded = cyan
status_held = white
status_installed = lightcyan
status_obsolete = lightmagenta
status_popular = yellow
status_running = lightgreen
status_unknown = lightred
text = default
text_bg = default
text_bg_selected = red
text_date = default
text_date_selected = white
text_delimiters = default
text_description = default
text_description_selected = white
text_extension = default
text_extension_selected = white
text_name = cyan
text_name_selected = lightcyan
text_selected = white
text_tags = brown
text_tags_selected = yellow
text_version = magenta
text_version_loaded = default
text_version_loaded_selected = white
text_version_selected = lightmagenta
[scripts]
autoload = on
cache_expire = 1440
download_timeout = 30
hold = ""
path = "%h/script"
url = "https://weechat.org/files/plugins.xml.gz"

33
apps/weechat/spell.conf Normal file
View File

@ -0,0 +1,33 @@
#
# weechat -- spell.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[color]
misspelled = lightred
suggestion = default
suggestion_delimiter_dict = cyan
suggestion_delimiter_word = cyan
[check]
commands = "away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"
default_dict = ""
during_search = off
enabled = off
real_time = off
suggestions = -1
word_min_length = 2
[dict]
[look]
suggestion_delimiter_dict = " / "
suggestion_delimiter_word = ","
[option]

14
apps/weechat/tcl.conf Normal file
View File

@ -0,0 +1,14 @@
#
# weechat -- tcl.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
check_license = off
eval_keep_context = on

67
apps/weechat/trigger.conf Normal file
View File

@ -0,0 +1,67 @@
#
# weechat -- trigger.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
enabled = on
monitor_strip_colors = off
[color]
flag_command = lightgreen
flag_conditions = yellow
flag_post_action = lightblue
flag_regex = lightcyan
flag_return_code = lightmagenta
regex = white
replace = cyan
trigger = green
trigger_disabled = red
[trigger]
beep.arguments = ""
beep.command = "/print -beep"
beep.conditions = "${tg_displayed} && (${tg_highlight} || ${tg_msg_pv})"
beep.enabled = on
beep.hook = print
beep.post_action = none
beep.regex = ""
beep.return_code = ok
cmd_pass.arguments = "5000|input_text_display;5000|history_add;5000|irc_command_auth"
cmd_pass.command = ""
cmd_pass.conditions = ""
cmd_pass.enabled = on
cmd_pass.hook = modifier
cmd_pass.post_action = none
cmd_pass.regex = "==^((/(msg|m|quote) +(-server +[^ ]+ +)?nickserv +(id|identify|set +password|ghost +[^ ]+|release +[^ ]+|regain +[^ ]+|recover +[^ ]+) +)|/oper +[^ ]+ +|/quote +pass +|/set +[^ ]*password[^ ]* +|/secure +(passphrase|decrypt|set +[^ ]+) +)(.*)==${re:1}${hide:*,${re:+}}"
cmd_pass.return_code = ok
cmd_pass_register.arguments = "5000|input_text_display;5000|history_add;5000|irc_command_auth"
cmd_pass_register.command = ""
cmd_pass_register.conditions = ""
cmd_pass_register.enabled = on
cmd_pass_register.hook = modifier
cmd_pass_register.post_action = none
cmd_pass_register.regex = "==^(/(msg|m|quote) +nickserv +register +)([^ ]+)(.*)==${re:1}${hide:*,${re:3}}${re:4}"
cmd_pass_register.return_code = ok
msg_auth.arguments = "5000|irc_message_auth"
msg_auth.command = ""
msg_auth.conditions = ""
msg_auth.enabled = on
msg_auth.hook = modifier
msg_auth.post_action = none
msg_auth.regex = "==^(.*(id|identify|set +password|register|ghost +[^ ]+|release +[^ ]+|regain +[^ ]+|recover +[^ ]+) +)(.*)==${re:1}${hide:*,${re:+}}"
msg_auth.return_code = ok
server_pass.arguments = "5000|input_text_display;5000|history_add"
server_pass.command = ""
server_pass.conditions = ""
server_pass.enabled = on
server_pass.hook = modifier
server_pass.post_action = none
server_pass.regex = "==^(/(server|connect) .*-(sasl_)?password=)([^ ]+)(.*)==${re:1}${hide:*,${re:4}}${re:5}"
server_pass.return_code = ok

673
apps/weechat/weechat.conf Normal file
View File

@ -0,0 +1,673 @@
#
# weechat -- weechat.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[debug]
[startup]
command_after_plugins = ""
command_before_plugins = ""
display_logo = on
display_version = on
sys_rlimit = ""
[look]
align_end_of_lines = message
align_multiline_words = on
bar_more_down = "++"
bar_more_left = "<<"
bar_more_right = ">>"
bar_more_up = "--"
bare_display_exit_on_input = on
bare_display_time_format = "%H:%M"
buffer_auto_renumber = on
buffer_notify_default = all
buffer_position = end
buffer_search_case_sensitive = off
buffer_search_force_default = off
buffer_search_regex = off
buffer_search_where = prefix_message
buffer_time_format = "%H:%M:%S"
buffer_time_same = ""
color_basic_force_bold = off
color_inactive_buffer = on
color_inactive_message = on
color_inactive_prefix = on
color_inactive_prefix_buffer = on
color_inactive_time = off
color_inactive_window = on
color_nick_offline = off
color_pairs_auto_reset = 5
color_real_white = off
command_chars = ""
command_incomplete = off
confirm_quit = off
confirm_upgrade = off
day_change = on
day_change_message_1date = "-- %a, %d %b %Y --"
day_change_message_2dates = "-- %%a, %%d %%b %%Y (%a, %d %b %Y) --"
eat_newline_glitch = off
emphasized_attributes = ""
highlight = ""
highlight_regex = ""
highlight_tags = ""
hotlist_add_conditions = "${away} || ${buffer.num_displayed} == 0 || ${info:relay_client_count,weechat,connected} > 0"
hotlist_buffer_separator = ", "
hotlist_count_max = 2
hotlist_count_min_msg = 2
hotlist_names_count = 3
hotlist_names_length = 0
hotlist_names_level = 12
hotlist_names_merged_buffers = off
hotlist_prefix = "H: "
hotlist_remove = merged
hotlist_short_names = on
hotlist_sort = group_time_asc
hotlist_suffix = ""
hotlist_unique_numbers = on
input_cursor_scroll = 20
input_share = none
input_share_overwrite = off
input_undo_max = 32
item_away_message = on
item_buffer_filter = "*"
item_buffer_zoom = "!"
item_mouse_status = "M"
item_time_format = "%H:%M"
jump_current_to_previous_buffer = on
jump_previous_buffer_when_closing = on
jump_smart_back_to_buffer = on
key_bind_safe = on
key_grab_delay = 800
mouse = off
mouse_timer_delay = 100
nick_color_force = ""
nick_color_hash = djb2
nick_color_stop_chars = "_|["
nick_prefix = ""
nick_suffix = ""
paste_auto_add_newline = on
paste_bracketed = on
paste_bracketed_timer_delay = 10
paste_max_lines = 1
prefix_action = " *"
prefix_align = right
prefix_align_max = 0
prefix_align_min = 0
prefix_align_more = "+"
prefix_align_more_after = on
prefix_buffer_align = right
prefix_buffer_align_max = 0
prefix_buffer_align_more = "+"
prefix_buffer_align_more_after = on
prefix_error = "=!="
prefix_join = "-->"
prefix_network = "--"
prefix_quit = "<--"
prefix_same_nick = ""
prefix_same_nick_middle = ""
prefix_suffix = "|"
quote_nick_prefix = "<"
quote_nick_suffix = ">"
quote_time_format = "%H:%M:%S"
read_marker = line
read_marker_always_show = off
read_marker_string = "- "
save_config_on_exit = on
save_config_with_fsync = off
save_layout_on_exit = none
scroll_amount = 3
scroll_bottom_after_switch = off
scroll_page_percent = 100
search_text_not_found_alert = on
separator_horizontal = "-"
separator_vertical = ""
tab_width = 1
time_format = "%a, %d %b %Y %T"
window_auto_zoom = off
window_separator_horizontal = on
window_separator_vertical = on
window_title = ""
word_chars_highlight = "!\u00A0,-,_,|,alnum"
word_chars_input = "!\u00A0,-,_,|,alnum"
[palette]
[color]
bar_more = lightmagenta
chat = default
chat_bg = default
chat_buffer = white
chat_channel = white
chat_day_change = cyan
chat_delimiters = green
chat_highlight = yellow
chat_highlight_bg = magenta
chat_host = cyan
chat_inactive_buffer = default
chat_inactive_window = default
chat_nick = lightcyan
chat_nick_colors = "cyan,magenta,green,brown,lightblue,default,lightcyan,lightmagenta,lightgreen,blue"
chat_nick_offline = default
chat_nick_offline_highlight = default
chat_nick_offline_highlight_bg = blue
chat_nick_other = cyan
chat_nick_prefix = green
chat_nick_self = white
chat_nick_suffix = green
chat_prefix_action = white
chat_prefix_buffer = brown
chat_prefix_buffer_inactive_buffer = default
chat_prefix_error = yellow
chat_prefix_join = lightgreen
chat_prefix_more = lightmagenta
chat_prefix_network = magenta
chat_prefix_quit = lightred
chat_prefix_suffix = green
chat_read_marker = magenta
chat_read_marker_bg = default
chat_server = brown
chat_tags = red
chat_text_found = yellow
chat_text_found_bg = lightmagenta
chat_time = default
chat_time_delimiters = brown
chat_value = cyan
chat_value_null = blue
emphasized = yellow
emphasized_bg = magenta
input_actions = lightgreen
input_text_not_found = red
item_away = yellow
nicklist_away = cyan
nicklist_group = green
separator = blue
status_count_highlight = magenta
status_count_msg = brown
status_count_other = default
status_count_private = green
status_data_highlight = lightmagenta
status_data_msg = yellow
status_data_other = default
status_data_private = lightgreen
status_filter = green
status_more = yellow
status_mouse = green
status_name = white
status_name_ssl = lightgreen
status_nicklist_count = default
status_number = yellow
status_time = default
[completion]
base_word_until_cursor = on
command_inline = on
default_template = "%(nicks)|%(irc_channels)"
nick_add_space = on
nick_case_sensitive = off
nick_completer = ": "
nick_first_only = off
nick_ignore_chars = "[]`_-^"
partial_completion_alert = on
partial_completion_command = off
partial_completion_command_arg = off
partial_completion_count = on
partial_completion_other = off
partial_completion_templates = "config_options"
[history]
display_default = 5
max_buffer_lines_minutes = 0
max_buffer_lines_number = 4096
max_commands = 100
max_visited_buffers = 50
[proxy]
[network]
connection_timeout = 60
gnutls_ca_file = "/etc/ssl/certs/ca-certificates.crt"
gnutls_handshake_timeout = 30
proxy_curl = ""
[plugin]
autoload = "*"
debug = off
extension = ".so,.dll"
path = "%h/plugins"
save_config_on_unload = on
[bar]
buflist.color_bg = default
buflist.color_delim = default
buflist.color_fg = default
buflist.conditions = ""
buflist.filling_left_right = vertical
buflist.filling_top_bottom = columns_vertical
buflist.hidden = off
buflist.items = "buflist"
buflist.position = left
buflist.priority = 0
buflist.separator = on
buflist.size = 0
buflist.size_max = 0
buflist.type = root
fset.color_bg = default
fset.color_delim = cyan
fset.color_fg = default
fset.conditions = "${buffer.full_name} == fset.fset"
fset.filling_left_right = vertical
fset.filling_top_bottom = horizontal
fset.hidden = off
fset.items = "fset"
fset.position = top
fset.priority = 0
fset.separator = on
fset.size = 3
fset.size_max = 3
fset.type = window
input.color_bg = default
input.color_delim = cyan
input.color_fg = default
input.conditions = ""
input.filling_left_right = vertical
input.filling_top_bottom = horizontal
input.hidden = off
input.items = "[input_prompt]+(away),[input_search],[input_paste],input_text"
input.position = bottom
input.priority = 1000
input.separator = off
input.size = 1
input.size_max = 0
input.type = window
nicklist.color_bg = default
nicklist.color_delim = cyan
nicklist.color_fg = default
nicklist.conditions = "${nicklist}"
nicklist.filling_left_right = vertical
nicklist.filling_top_bottom = columns_vertical
nicklist.hidden = on
nicklist.items = "buffer_nicklist"
nicklist.position = right
nicklist.priority = 200
nicklist.separator = on
nicklist.size = 0
nicklist.size_max = 10
nicklist.type = window
status.color_bg = 0
status.color_delim = cyan
status.color_fg = default
status.conditions = ""
status.filling_left_right = vertical
status.filling_top_bottom = horizontal
status.hidden = off
status.items = "[time],[buffer_last_number],[buffer_plugin],buffer_number+:+buffer_name+(buffer_modes)+{buffer_nicklist_count}+buffer_zoom+buffer_filter,scroll,[lag],[hotlist],completion"
status.position = bottom
status.priority = 500
status.separator = off
status.size = 1
status.size_max = 0
status.type = window
title.color_bg = 0
title.color_delim = cyan
title.color_fg = default
title.conditions = ""
title.filling_left_right = vertical
title.filling_top_bottom = horizontal
title.hidden = off
title.items = "buffer_title"
title.position = top
title.priority = 500
title.separator = off
title.size = 1
title.size_max = 0
title.type = window
[layout]
[notify]
perl.highmon = none
[filter]
[key]
ctrl-? = "/input delete_previous_char"
ctrl-A = "/input move_beginning_of_line"
ctrl-B = "/input move_previous_char"
ctrl-C_ = "/input insert \x1F"
ctrl-Cb = "/input insert \x02"
ctrl-Cc = "/input insert \x03"
ctrl-Ci = "/input insert \x1D"
ctrl-Co = "/input insert \x0F"
ctrl-Cv = "/input insert \x16"
ctrl-D = "/input delete_next_char"
ctrl-E = "/input move_end_of_line"
ctrl-F = "/input move_next_char"
ctrl-H = "/input delete_previous_char"
ctrl-I = "/input complete_next"
ctrl-J = "/input return"
ctrl-K = "/input delete_end_of_line"
ctrl-L = "/window refresh"
ctrl-M = "/input return"
ctrl-N = "/buffer +1"
ctrl-P = "/buffer -1"
ctrl-R = "/input search_text_here"
ctrl-Sctrl-U = "/input set_unread"
ctrl-T = "/input transpose_chars"
ctrl-U = "/input delete_beginning_of_line"
ctrl-W = "/input delete_previous_word"
ctrl-X = "/input switch_active_buffer"
ctrl-Y = "/input clipboard_paste"
meta-meta-OP = "/bar scroll buflist * b"
meta-meta-OQ = "/bar scroll buflist * e"
meta-meta2-11~ = "/bar scroll buflist * b"
meta-meta2-12~ = "/bar scroll buflist * e"
meta-meta2-1~ = "/window scroll_top"
meta-meta2-23~ = "/bar scroll nicklist * b"
meta-meta2-24~ = "/bar scroll nicklist * e"
meta-meta2-4~ = "/window scroll_bottom"
meta-meta2-5~ = "/window scroll_up"
meta-meta2-6~ = "/window scroll_down"
meta-meta2-7~ = "/window scroll_top"
meta-meta2-8~ = "/window scroll_bottom"
meta-meta2-A = "/buffer -1"
meta-meta2-B = "/buffer +1"
meta-meta2-C = "/buffer +1"
meta-meta2-D = "/buffer -1"
meta-- = "/filter toggle @"
meta-/ = "/input jump_last_buffer_displayed"
meta-0 = "/buffer *10"
meta-1 = "/buffer *1"
meta-2 = "/buffer *2"
meta-3 = "/buffer *3"
meta-4 = "/buffer *4"
meta-5 = "/buffer *5"
meta-6 = "/buffer *6"
meta-7 = "/buffer *7"
meta-8 = "/buffer *8"
meta-9 = "/buffer *9"
meta-< = "/input jump_previously_visited_buffer"
meta-= = "/filter toggle"
meta-> = "/input jump_next_visited_buffer"
meta-OA = "/input history_global_previous"
meta-OB = "/input history_global_next"
meta-OC = "/input move_next_word"
meta-OD = "/input move_previous_word"
meta-OF = "/input move_end_of_line"
meta-OH = "/input move_beginning_of_line"
meta-OP = "/bar scroll buflist * -100%"
meta-OQ = "/bar scroll buflist * +100%"
meta-Oa = "/input history_global_previous"
meta-Ob = "/input history_global_next"
meta-Oc = "/input move_next_word"
meta-Od = "/input move_previous_word"
meta2-11^ = "/bar scroll buflist * -100%"
meta2-11~ = "/bar scroll buflist * -100%"
meta2-12^ = "/bar scroll buflist * +100%"
meta2-12~ = "/bar scroll buflist * +100%"
meta2-15~ = "/buffer -1"
meta2-17~ = "/buffer +1"
meta2-18~ = "/window -1"
meta2-19~ = "/window +1"
meta2-1;3A = "/buffer -1"
meta2-1;3B = "/buffer +1"
meta2-1;3C = "/buffer +1"
meta2-1;3D = "/buffer -1"
meta2-1;3F = "/window scroll_bottom"
meta2-1;3H = "/window scroll_top"
meta2-1;3P = "/bar scroll buflist * b"
meta2-1;3Q = "/bar scroll buflist * e"
meta2-1;5A = "/input history_global_previous"
meta2-1;5B = "/input history_global_next"
meta2-1;5C = "/input move_next_word"
meta2-1;5D = "/input move_previous_word"
meta2-1;5P = "/bar scroll buflist * -100%"
meta2-1;5Q = "/bar scroll buflist * +100%"
meta2-1~ = "/input move_beginning_of_line"
meta2-200~ = "/input paste_start"
meta2-201~ = "/input paste_stop"
meta2-20~ = "/bar scroll title * -30%"
meta2-21~ = "/bar scroll title * +30%"
meta2-23;3~ = "/bar scroll nicklist * b"
meta2-23;5~ = "/bar scroll nicklist * -100%"
meta2-23^ = "/bar scroll nicklist * -100%"
meta2-23~ = "/bar scroll nicklist * -100%"
meta2-24;3~ = "/bar scroll nicklist * e"
meta2-24;5~ = "/bar scroll nicklist * +100%"
meta2-24^ = "/bar scroll nicklist * +100%"
meta2-24~ = "/bar scroll nicklist * +100%"
meta2-3~ = "/input delete_next_char"
meta2-4~ = "/input move_end_of_line"
meta2-5;3~ = "/window scroll_up"
meta2-5~ = "/window page_up"
meta2-6;3~ = "/window scroll_down"
meta2-6~ = "/window page_down"
meta2-7~ = "/input move_beginning_of_line"
meta2-8~ = "/input move_end_of_line"
meta2-A = "/input history_previous"
meta2-B = "/input history_next"
meta2-C = "/input move_next_char"
meta2-D = "/input move_previous_char"
meta2-F = "/input move_end_of_line"
meta2-G = "/window page_down"
meta2-H = "/input move_beginning_of_line"
meta2-I = "/window page_up"
meta2-Z = "/input complete_previous"
meta2-[E = "/buffer -1"
meta-_ = "/input redo"
meta-a = "/input jump_smart"
meta-b = "/input move_previous_word"
meta-d = "/input delete_next_word"
meta-f = "/input move_next_word"
meta-h = "/input hotlist_clear"
meta-jmeta-f = "/buffer -"
meta-jmeta-l = "/buffer +"
meta-jmeta-r = "/server raw"
meta-jmeta-s = "/server jump"
meta-j01 = "/buffer *1"
meta-j02 = "/buffer *2"
meta-j03 = "/buffer *3"
meta-j04 = "/buffer *4"
meta-j05 = "/buffer *5"
meta-j06 = "/buffer *6"
meta-j07 = "/buffer *7"
meta-j08 = "/buffer *8"
meta-j09 = "/buffer *9"
meta-j10 = "/buffer *10"
meta-j11 = "/buffer *11"
meta-j12 = "/buffer *12"
meta-j13 = "/buffer *13"
meta-j14 = "/buffer *14"
meta-j15 = "/buffer *15"
meta-j16 = "/buffer *16"
meta-j17 = "/buffer *17"
meta-j18 = "/buffer *18"
meta-j19 = "/buffer *19"
meta-j20 = "/buffer *20"
meta-j21 = "/buffer *21"
meta-j22 = "/buffer *22"
meta-j23 = "/buffer *23"
meta-j24 = "/buffer *24"
meta-j25 = "/buffer *25"
meta-j26 = "/buffer *26"
meta-j27 = "/buffer *27"
meta-j28 = "/buffer *28"
meta-j29 = "/buffer *29"
meta-j30 = "/buffer *30"
meta-j31 = "/buffer *31"
meta-j32 = "/buffer *32"
meta-j33 = "/buffer *33"
meta-j34 = "/buffer *34"
meta-j35 = "/buffer *35"
meta-j36 = "/buffer *36"
meta-j37 = "/buffer *37"
meta-j38 = "/buffer *38"
meta-j39 = "/buffer *39"
meta-j40 = "/buffer *40"
meta-j41 = "/buffer *41"
meta-j42 = "/buffer *42"
meta-j43 = "/buffer *43"
meta-j44 = "/buffer *44"
meta-j45 = "/buffer *45"
meta-j46 = "/buffer *46"
meta-j47 = "/buffer *47"
meta-j48 = "/buffer *48"
meta-j49 = "/buffer *49"
meta-j50 = "/buffer *50"
meta-j51 = "/buffer *51"
meta-j52 = "/buffer *52"
meta-j53 = "/buffer *53"
meta-j54 = "/buffer *54"
meta-j55 = "/buffer *55"
meta-j56 = "/buffer *56"
meta-j57 = "/buffer *57"
meta-j58 = "/buffer *58"
meta-j59 = "/buffer *59"
meta-j60 = "/buffer *60"
meta-j61 = "/buffer *61"
meta-j62 = "/buffer *62"
meta-j63 = "/buffer *63"
meta-j64 = "/buffer *64"
meta-j65 = "/buffer *65"
meta-j66 = "/buffer *66"
meta-j67 = "/buffer *67"
meta-j68 = "/buffer *68"
meta-j69 = "/buffer *69"
meta-j70 = "/buffer *70"
meta-j71 = "/buffer *71"
meta-j72 = "/buffer *72"
meta-j73 = "/buffer *73"
meta-j74 = "/buffer *74"
meta-j75 = "/buffer *75"
meta-j76 = "/buffer *76"
meta-j77 = "/buffer *77"
meta-j78 = "/buffer *78"
meta-j79 = "/buffer *79"
meta-j80 = "/buffer *80"
meta-j81 = "/buffer *81"
meta-j82 = "/buffer *82"
meta-j83 = "/buffer *83"
meta-j84 = "/buffer *84"
meta-j85 = "/buffer *85"
meta-j86 = "/buffer *86"
meta-j87 = "/buffer *87"
meta-j88 = "/buffer *88"
meta-j89 = "/buffer *89"
meta-j90 = "/buffer *90"
meta-j91 = "/buffer *91"
meta-j92 = "/buffer *92"
meta-j93 = "/buffer *93"
meta-j94 = "/buffer *94"
meta-j95 = "/buffer *95"
meta-j96 = "/buffer *96"
meta-j97 = "/buffer *97"
meta-j98 = "/buffer *98"
meta-j99 = "/buffer *99"
meta-k = "/input grab_key_command"
meta-l = "/window bare"
meta-m = "/mute mouse toggle"
meta-n = "/window scroll_next_highlight"
meta-p = "/window scroll_previous_highlight"
meta-r = "/input delete_line"
meta-s = "/mute spell toggle"
meta-u = "/window scroll_unread"
meta-wmeta-meta2-A = "/window up"
meta-wmeta-meta2-B = "/window down"
meta-wmeta-meta2-C = "/window right"
meta-wmeta-meta2-D = "/window left"
meta-wmeta2-1;3A = "/window up"
meta-wmeta2-1;3B = "/window down"
meta-wmeta2-1;3C = "/window right"
meta-wmeta2-1;3D = "/window left"
meta-wmeta-b = "/window balance"
meta-wmeta-s = "/window swap"
meta-x = "/input zoom_merged_buffer"
meta-z = "/window zoom"
ctrl-_ = "/input undo"
[key_search]
ctrl-I = "/input search_switch_where"
ctrl-J = "/input search_stop_here"
ctrl-M = "/input search_stop_here"
ctrl-Q = "/input search_stop"
ctrl-R = "/input search_switch_regex"
meta2-A = "/input search_previous"
meta2-B = "/input search_next"
meta-c = "/input search_switch_case"
[key_cursor]
ctrl-J = "/cursor stop"
ctrl-M = "/cursor stop"
meta-meta2-A = "/cursor move area_up"
meta-meta2-B = "/cursor move area_down"
meta-meta2-C = "/cursor move area_right"
meta-meta2-D = "/cursor move area_left"
meta2-1;3A = "/cursor move area_up"
meta2-1;3B = "/cursor move area_down"
meta2-1;3C = "/cursor move area_right"
meta2-1;3D = "/cursor move area_left"
meta2-A = "/cursor move up"
meta2-B = "/cursor move down"
meta2-C = "/cursor move right"
meta2-D = "/cursor move left"
@chat(python.*):D = "hsignal:slack_cursor_delete"
@chat(python.*):L = "hsignal:slack_cursor_linkarchive"
@chat(python.*):M = "hsignal:slack_cursor_message"
@chat(python.*):R = "hsignal:slack_cursor_reply"
@chat(python.*):T = "hsignal:slack_cursor_thread"
@item(buffer_nicklist):K = "/window ${_window_number};/kickban ${nick}"
@item(buffer_nicklist):b = "/window ${_window_number};/ban ${nick}"
@item(buffer_nicklist):k = "/window ${_window_number};/kick ${nick}"
@item(buffer_nicklist):q = "/window ${_window_number};/query ${nick};/cursor stop"
@item(buffer_nicklist):w = "/window ${_window_number};/whois ${nick}"
@chat:Q = "hsignal:chat_quote_time_prefix_message;/cursor stop"
@chat:m = "hsignal:chat_quote_message;/cursor stop"
@chat:q = "hsignal:chat_quote_prefix_message;/cursor stop"
[key_mouse]
@bar(buflist):ctrl-wheeldown = "hsignal:buflist_mouse"
@bar(buflist):ctrl-wheelup = "hsignal:buflist_mouse"
@bar(input):button2 = "/input grab_mouse_area"
@bar(nicklist):button1-gesture-down = "/bar scroll nicklist ${_window_number} +100%"
@bar(nicklist):button1-gesture-down-long = "/bar scroll nicklist ${_window_number} e"
@bar(nicklist):button1-gesture-up = "/bar scroll nicklist ${_window_number} -100%"
@bar(nicklist):button1-gesture-up-long = "/bar scroll nicklist ${_window_number} b"
@chat(fset.fset):button1 = "/window ${_window_number};/fset -go ${_chat_line_y}"
@chat(fset.fset):button2* = "hsignal:fset_mouse"
@chat(fset.fset):wheeldown = "/fset -down 5"
@chat(fset.fset):wheelup = "/fset -up 5"
@chat(python.*):button2 = "hsignal:slack_mouse"
@chat(script.scripts):button1 = "/window ${_window_number};/script go ${_chat_line_y}"
@chat(script.scripts):button2 = "/window ${_window_number};/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}"
@chat(script.scripts):wheeldown = "/script down 5"
@chat(script.scripts):wheelup = "/script up 5"
@item(buffer_nicklist):button1 = "/window ${_window_number};/query ${nick}"
@item(buffer_nicklist):button1-gesture-left = "/window ${_window_number};/kick ${nick}"
@item(buffer_nicklist):button1-gesture-left-long = "/window ${_window_number};/kickban ${nick}"
@item(buffer_nicklist):button2 = "/window ${_window_number};/whois ${nick}"
@item(buffer_nicklist):button2-gesture-left = "/window ${_window_number};/ban ${nick}"
@item(buflist):button1* = "hsignal:buflist_mouse"
@item(buflist):button2* = "hsignal:buflist_mouse"
@item(buflist2):button1* = "hsignal:buflist_mouse"
@item(buflist2):button2* = "hsignal:buflist_mouse"
@item(buflist3):button1* = "hsignal:buflist_mouse"
@item(buflist3):button2* = "hsignal:buflist_mouse"
@bar:wheeldown = "/bar scroll ${_bar_name} ${_window_number} +20%"
@bar:wheelup = "/bar scroll ${_bar_name} ${_window_number} -20%"
@chat:button1 = "/window ${_window_number}"
@chat:button1-gesture-left = "/window ${_window_number};/buffer -1"
@chat:button1-gesture-left-long = "/window ${_window_number};/buffer 1"
@chat:button1-gesture-right = "/window ${_window_number};/buffer +1"
@chat:button1-gesture-right-long = "/window ${_window_number};/input jump_last_buffer"
@chat:ctrl-wheeldown = "/window scroll_horiz -window ${_window_number} +10%"
@chat:ctrl-wheelup = "/window scroll_horiz -window ${_window_number} -10%"
@chat:wheeldown = "/window scroll_down -window ${_window_number}"
@chat:wheelup = "/window scroll_up -window ${_window_number}"
@*:button3 = "/cursor go ${_x},${_y}"

48
apps/weechat/xfer.conf Normal file
View File

@ -0,0 +1,48 @@
#
# weechat -- xfer.conf
#
# WARNING: It is NOT recommended to edit this file by hand,
# especially if WeeChat is running.
#
# Use /set or similar command to change settings in WeeChat.
#
# For more info, see: https://weechat.org/doc/quickstart
#
[look]
auto_open_buffer = on
progress_bar_size = 20
pv_tags = "notify_private"
[color]
status_aborted = lightred
status_active = lightblue
status_connecting = yellow
status_done = lightgreen
status_failed = lightred
status_waiting = lightcyan
text = default
text_bg = default
text_selected = white
[network]
blocksize = 65536
fast_send = on
own_ip = ""
port_range = ""
send_ack = on
speed_limit_recv = 0
speed_limit_send = 0
timeout = 300
[file]
auto_accept_chats = off
auto_accept_files = off
auto_accept_nicks = ""
auto_check_crc32 = off
auto_rename = on
auto_resume = on
convert_spaces = on
download_path = "%h/xfer"
upload_path = "~"
use_nick_in_filename = on

View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash
source "$DOTFILES_PATH/de/bar/bar.bash" --just-vars
source "$DOTFILES_PATH/apps/de/bar/bar.bash" --just-vars
LAUNCHER_FONT="$BAR_FONT"
LAUNCHER_FONT_SIZE="$BAR_FONT_SIZE"

5
bin/archive Executable file
View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
archive_name="${1}.tar.gz"; shift
tar czvf "${archive_name}" ${@}
echo "Archive created at: ${archive_name}"

5
bin/clip Executable file
View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
xclip -selection primary
xclip -selection primary -out | xclip -selection clipboard
xclip -selection primary -out | xclip -selection secondary

2
bin/image-viewer Executable file
View File

@ -0,0 +1,2 @@
#!/usr/bin/env bash
feh -C /usr/share/fonts/ttf-iosevka-type -e "iosevka-type-regular/12" -d -., "$@"

View File

@ -0,0 +1,45 @@
Code Description Category
Notes For use with the ANSI `\e[TS;FG;BGm` escape sequence N/A
0 Reset all (default) Text Style (TS)
1 Bold Text Style (TS)
2 Dim Text Style (TS)
3 Italic Text Style (TS)
4 Underlined Text Style (TS)
5 Blinking Text Style (TS)
6 ??? UNKNOWN Text Style (TS)
7 Inverted colors Text Style (TS)
8 Hidden (passwords) Text Style (TS)
39 Default (reset) Foreground Colors (FG)
30 Black Foreground Colors (FG)
31 Red Foreground Colors (FG)
32 Green Foreground Colors (FG)
33 Yellow Foreground Colors (FG)
34 Blue Foreground Colors (FG)
35 Magenta Foreground Colors (FG)
36 Cyan Foreground Colors (FG)
37 Light Gray Foreground Colors (FG)
90 Dark Gray Foreground Colors (FG)
91 Light Red Foreground Colors (FG)
92 Light Green Foreground Colors (FG)
93 Light Yellow Foreground Colors (FG)
94 Light Blue Foreground Colors (FG)
95 Light Magenta Foreground Colors (FG)
96 Light Cyan Foreground Colors (FG)
97 White Foreground Colors (FG)
49 Default (reset) Background Colors (BG)
40 Black Background Colors (BG)
41 Red Background Colors (BG)
42 Green Background Colors (BG)
43 Yellow Background Colors (BG)
44 Blue Background Colors (BG)
45 Magenta Background Colors (BG)
46 Cyan Background Colors (BG)
47 Light Gray Background Colors (BG)
100 Dark Gray Background Colors (BG)
101 Light Red Background Colors (BG)
102 Light Green Background Colors (BG)
103 Light Yellow Background Colors (BG)
104 Light Blue Background Colors (BG)
105 Light Magenta Background Colors (BG)
106 Light Cyan Background Colors (BG)
107 White Background Colors (BG)
1 Code Description Category
2 Notes For use with the ANSI `\e[TS;FG;BGm` escape sequence N/A
3 0 Reset all (default) Text Style (TS)
4 1 Bold Text Style (TS)
5 2 Dim Text Style (TS)
6 3 Italic Text Style (TS)
7 4 Underlined Text Style (TS)
8 5 Blinking Text Style (TS)
9 6 ??? UNKNOWN Text Style (TS)
10 7 Inverted colors Text Style (TS)
11 8 Hidden (passwords) Text Style (TS)
12 39 Default (reset) Foreground Colors (FG)
13 30 Black Foreground Colors (FG)
14 31 Red Foreground Colors (FG)
15 32 Green Foreground Colors (FG)
16 33 Yellow Foreground Colors (FG)
17 34 Blue Foreground Colors (FG)
18 35 Magenta Foreground Colors (FG)
19 36 Cyan Foreground Colors (FG)
20 37 Light Gray Foreground Colors (FG)
21 90 Dark Gray Foreground Colors (FG)
22 91 Light Red Foreground Colors (FG)
23 92 Light Green Foreground Colors (FG)
24 93 Light Yellow Foreground Colors (FG)
25 94 Light Blue Foreground Colors (FG)
26 95 Light Magenta Foreground Colors (FG)
27 96 Light Cyan Foreground Colors (FG)
28 97 White Foreground Colors (FG)
29 49 Default (reset) Background Colors (BG)
30 40 Black Background Colors (BG)
31 41 Red Background Colors (BG)
32 42 Green Background Colors (BG)
33 43 Yellow Background Colors (BG)
34 44 Blue Background Colors (BG)
35 45 Magenta Background Colors (BG)
36 46 Cyan Background Colors (BG)
37 47 Light Gray Background Colors (BG)
38 100 Dark Gray Background Colors (BG)
39 101 Light Red Background Colors (BG)
40 102 Light Green Background Colors (BG)
41 103 Light Yellow Background Colors (BG)
42 104 Light Blue Background Colors (BG)
43 105 Light Magenta Background Colors (BG)
44 106 Light Cyan Background Colors (BG)
45 107 White Background Colors (BG)

View File

@ -47,6 +47,7 @@ pacaur --needed -S \
scrot `# Screenshot Tool` \
libinput libinput-gestures `# Trackpad Control` \
xcape `# Escape Better` \
dunst `# Desktop Notifications` \
--noconfirm --noedit
# TODO: recommend systemd services?

View File

@ -0,0 +1,14 @@
#!/usr/bin/env bash
pacaur --needed -S --noconfirm --noedit \
weechat-poljar-matrix-git weechat-discord-git wee-slack
wcpm="/usr/lib/weechat/python/matrix"
hwcp="${HOME}/.weechat/python"
ln -s "${wcpm}/" "${hwcp}/"
ln -s "${wcpm}.py" "${hwcp}/"
ln -s "${wcpm}.py" "${hwcp}/autoload/"
ln -s "/usr/lib/weechat/python/wee_slack.py" "${hwcp}/"
ln -s "/usr/lib/weechat/python/wee_slack.py" "${hwcp}/autoload/"
# Scripts are in /usr/lib/weechat/python/matrix/contrib/

View File

@ -0,0 +1,20 @@
#!/usr/bin/env moon
scheme_file = "donokai"
template_file = [
"shell"
]
scheme = require(scheme_file)!
scheme.meta = scheme.meta || {}
scheme.meta.author = scheme.meta.author || "Unknown Author"
scheme.meta.name = scheme.meta.name || "Unnamed Color Scheme"
for f in template_files
template_data = require(t)!
colors = scheme.colors
if "function" == type template_data.color_map
colors = {template_data.color_map(k, v) for k, v in pairs(colors)}

View File

@ -0,0 +1,22 @@
=>
meta:
name: "Donokai"
author: "Daniel Flanagan (https://lyte.dev)"
colors:
base00: "111111" -- background, dark grey
base01: "383830" -- lighter grey
base02: "49483e" -- lighter grey
base03: "75715e" -- pale-ish yellow
base04: "a59f85" -- lighter peuce
base05: "f8f8f2" -- foreground white
base06: "f5f4f1" -- foreground 2 white
base07: "f9f8f5" -- foreground 3 white
base08: "f92672" -- magenta
base09: "fd971f" -- orange
base0A: "f4bf75" -- yellow
base0B: "a6e22e" -- green
base0C: "a1efe4" -- cyan
base0D: "66d9ef" -- blue
base0E: "ae81ff" -- purple
base0F: "cc6633" -- pale orange

View File

@ -0,0 +1,251 @@
[[
#!/bin/sh
# Base16 <%= @.scheme %> - Shell color setup script
# <%= @author %>
if [ "${TERM%%-*}" = 'linux' ]; then
# This script doesn't support linux console (use 'vconsole' template instead)
return 2>/dev/null || exit 0
fi
color00="<%= split_by_slash(@base["00"]["hex"]) %>" # Base 00 - Black
color01="<%= split_by_slash(@base["08"]["hex"]) %>" # Base 08 - Red
color02="<%= split_by_slash(@base["0B"]["hex"]) %>" # Base 0B - Green
color03="<%= split_by_slash(@base["0A"]["hex"]) %>" # Base 0A - Yellow
color04="<%= split_by_slash(@base["0D"]["hex"]) %>" # Base 0D - Blue
color05="<%= split_by_slash(@base["0E"]["hex"]) %>" # Base 0E - Magenta
color06="<%= split_by_slash(@base["0C"]["hex"]) %>" # Base 0C - Cyan
color07="<%= split_by_slash(@base["05"]["hex"]) %>" # Base 05 - White
color08="<%= split_by_slash(@base["03"]["hex"]) %>" # Base 03 - Bright Black
color09=$color01 # Base 08 - Bright Red
color10=$color02 # Base 0B - Bright Green
color11=$color03 # Base 0A - Bright Yellow
color12=$color04 # Base 0D - Bright Blue
color13=$color05 # Base 0E - Bright Magenta
color14=$color06 # Base 0C - Bright Cyan
color15="<%= split_by_slash(@base["07"]["hex"]) %>" # Base 07 - Bright White
color16="<%= split_by_slash(@base["09"]["hex"]) %>" # Base 09
color17="<%= split_by_slash(@base["0F"]["hex"]) %>" # Base 0F
color18="<%= split_by_slash(@base["01"]["hex"]) %>" # Base 01
color19="<%= split_by_slash(@base["02"]["hex"]) %>" # Base 02
color20="<%= split_by_slash(@base["04"]["hex"]) %>" # Base 04
color21="<%= split_by_slash(@base["06"]["hex"]) %>" # Base 06
color_foreground="<%= split_by_slash(@base["05"]["hex"]) %>" # Base 05
color_background="<%= split_by_slash(@base["00"]["hex"]) %>" # Base 00
color_cursor="<%= split_by_slash(@base["05"]["hex"]) %>" # Base 05
if [ -n "$TMUX" ]; then
# tell tmux to pass the escape sequences through
# (Source: http://permalink.gmane.org/gmane.comp.terminal-emulators.tmux.user/1324)
printf_template="\033Ptmux;\033\033]4;%d;rgb:%s\007\033\\"
printf_template_var="\033Ptmux;\033\033]%d;rgb:%s\007\033\\"
printf_template_custom="\033Ptmux;\033\033]%s%s\007\033\\"
elif [ "${TERM%%-*}" = "screen" ]; then
# GNU screen (screen, screen-256color, screen-256color-bce)
printf_template="\033P\033]4;%d;rgb:%s\007\033\\"
printf_template_var="\033P\033]%d;rgb:%s\007\033\\"
printf_template_custom="\033P\033]%s%s\007\033\\"
elif [[ $- != *i* ]]; then
# non-interactive
alias printf=/bin/false
else
printf_template="\033]4;%d;rgb:%s\033\\"
printf_template_var="\033]%d;rgb:%s\033\\"
printf_template_custom="\033]%s%s\033\\"
fi
# 16 color space
printf $printf_template 0 $color00
printf $printf_template 1 $color01
printf $printf_template 2 $color02
printf $printf_template 3 $color03
printf $printf_template 4 $color04
printf $printf_template 5 $color05
printf $printf_template 6 $color06
printf $printf_template 7 $color07
printf $printf_template 8 $color08
printf $printf_template 9 $color09
printf $printf_template 10 $color10
printf $printf_template 11 $color11
printf $printf_template 12 $color12
printf $printf_template 13 $color13
printf $printf_template 14 $color14
printf $printf_template 15 $color15
# 256 color space
printf $printf_template 16 $color16
printf $printf_template 17 $color17
printf $printf_template 18 $color18
printf $printf_template 19 $color19
printf $printf_template 20 $color20
printf $printf_template 21 $color21
# foreground / background / cursor color
if [ -n "$ITERM_SESSION_ID" ]; then
# iTerm2 proprietary escape codes
printf $printf_template_custom Pg <%= @base["05"]["hex"] %> # forground
printf $printf_template_custom Ph <%= @base["00"]["hex"] %> # background
printf $printf_template_custom Pi <%= @base["05"]["hex"] %> # bold color
printf $printf_template_custom Pj <%= @base["02"]["hex"] %> # selection color
printf $printf_template_custom Pk <%= @base["05"]["hex"] %> # selected text color
printf $printf_template_custom Pl <%= @base["05"]["hex"] %> # cursor
printf $printf_template_custom Pm <%= @base["00"]["hex"] %> # cursor text
else
printf $printf_template_var 10 $color_foreground
printf $printf_template_var 11 $color_background
printf $printf_template_custom 12 ";7" # cursor (reverse video)
fi
# clean up
unset printf_template
unset printf_template_var
unset color00
unset color01
unset color02
unset color03
unset color04
unset color05
unset color06
unset color07
unset color08
unset color09
unset color10
unset color11
unset color12
unset color13
unset color14
unset color15
unset color16
unset color17
unset color18
unset color19
unset color20
unset color21
unset color_foreground
unset color_background
unset color_cursor
#!/bin/sh
# Base16 Donokai - Shell color setup script
# Daniel Flanagan(https://lytedev.io)
if [ "${TERM%%-*}" = 'linux' ]; then
# This script doesn't support linux console (use 'vconsole' template instead)
return 2>/dev/null || exit 0
fi
color00="11/11/11" # Base 00 - Black
color01="f9/26/72" # Base 08 - Red
color02="a6/e2/2e" # Base 0B - Green
color03="f4/bf/75" # Base 0A - Yellow
color04="66/d9/ef" # Base 0D - Blue
color05="ae/81/ff" # Base 0E - Magenta
color06="a1/ef/e4" # Base 0C - Cyan
color07="f8/f8/f2" # Base 05 - White
color08="75/71/5e" # Base 03 - Bright Black
color09=$color01 # Base 08 - Bright Red
color10=$color02 # Base 0B - Bright Green
color11=$color03 # Base 0A - Bright Yellow
color12=$color04 # Base 0D - Bright Blue
color13=$color05 # Base 0E - Bright Magenta
color14=$color06 # Base 0C - Bright Cyan
color15="f9/f8/f5" # Base 07 - Bright White
color16="fd/97/1f" # Base 09
color17="cc/66/33" # Base 0F
color18="38/38/30" # Base 01
color19="49/48/3e" # Base 02
color20="a5/9f/85" # Base 04
color21="f5/f4/f1" # Base 06
color_foreground="f8/f8/f2" # Base 05
color_background="11/11/11" # Base 00
color_cursor="f8/f8/f2" # Base 05
if [ -n "$TMUX" ]; then
# tell tmux to pass the escape sequences through
# (Source: http://permalink.gmane.org/gmane.comp.terminal-emulators.tmux.user/1324)
printf_template="\033Ptmux;\033\033]4;%d;rgb:%s\007\033\\"
printf_template_var="\033Ptmux;\033\033]%d;rgb:%s\007\033\\"
printf_template_custom="\033Ptmux;\033\033]%s%s\007\033\\"
elif [ "${TERM%%-*}" = "screen" ]; then
# GNU screen (screen, screen-256color, screen-256color-bce)
printf_template="\033P\033]4;%d;rgb:%s\007\033\\"
printf_template_var="\033P\033]%d;rgb:%s\007\033\\"
printf_template_custom="\033P\033]%s%s\007\033\\"
elif [[ $- != *i* ]]; then
# non-interactive
alias printf=/bin/false
else
printf_template="\033]4;%d;rgb:%s\033\\"
printf_template_var="\033]%d;rgb:%s\033\\"
printf_template_custom="\033]%s%s\033\\"
fi
# 16 color space
printf $printf_template 0 $color00
printf $printf_template 1 $color01
printf $printf_template 2 $color02
printf $printf_template 3 $color03
printf $printf_template 4 $color04
printf $printf_template 5 $color05
printf $printf_template 6 $color06
printf $printf_template 7 $color07
printf $printf_template 8 $color08
printf $printf_template 9 $color09
printf $printf_template 10 $color10
printf $printf_template 11 $color11
printf $printf_template 12 $color12
printf $printf_template 13 $color13
printf $printf_template 14 $color14
printf $printf_template 15 $color15
# 256 color space
printf $printf_template 16 $color16
printf $printf_template 17 $color17
printf $printf_template 18 $color18
printf $printf_template 19 $color19
printf $printf_template 20 $color20
printf $printf_template 21 $color21
# foreground / background / cursor color
if [ -n "$ITERM_SESSION_ID" ]; then
# iTerm2 proprietary escape codes
printf $printf_template_custom Pg f8f8f2 # forground
printf $printf_template_custom Ph 111111 # background
printf $printf_template_custom Pi f8f8f2 # bold color
printf $printf_template_custom Pj 49483e # selection color
printf $printf_template_custom Pk f8f8f2 # selected text color
printf $printf_template_custom Pl f8f8f2 # cursor
printf $printf_template_custom Pm 111111 # cursor text
else
printf $printf_template_var 10 $color_foreground
printf $printf_template_var 11 $color_background
printf $printf_template_custom 12 ";7" # cursor (reverse video)
fi
# clean up
unset printf_template
unset printf_template_var
unset color00
unset color01
unset color02
unset color03
unset color04
unset color05
unset color06
unset color07
unset color08
unset color09
unset color10
unset color11
unset color12
unset color13
unset color14
unset color15
unset color16
unset color17
unset color18
unset color19
unset color20
unset color21
unset color_foreground
unset color_background
unset color_cursor

View File

@ -0,0 +1,255 @@
=>
color_map: (k, v) ->
r, g, b = v\match "(%d%d)(%d%d)(%d%d)"
k, "#{r}/#{g}/#{b}"
content: [===[#!/bin/sh
# #{@.meta.name} by #{@.meta.author} %>
if [ "${TERM%%-*}" = 'linux' ]; then
# This script doesn't support linux console (use 'vconsole' template instead)
return 2>/dev/null || exit 0
fi
color00="<%= split_by_slash(@base["00"]["hex"]) %>" # Base 00 - Black
color01="<%= split_by_slash(@base["08"]["hex"]) %>" # Base 08 - Red
color02="<%= split_by_slash(@base["0B"]["hex"]) %>" # Base 0B - Green
color03="<%= split_by_slash(@base["0A"]["hex"]) %>" # Base 0A - Yellow
color04="<%= split_by_slash(@base["0D"]["hex"]) %>" # Base 0D - Blue
color05="<%= split_by_slash(@base["0E"]["hex"]) %>" # Base 0E - Magenta
color06="<%= split_by_slash(@base["0C"]["hex"]) %>" # Base 0C - Cyan
color07="<%= split_by_slash(@base["05"]["hex"]) %>" # Base 05 - White
color08="<%= split_by_slash(@base["03"]["hex"]) %>" # Base 03 - Bright Black
color09=$color01 # Base 08 - Bright Red
color10=$color02 # Base 0B - Bright Green
color11=$color03 # Base 0A - Bright Yellow
color12=$color04 # Base 0D - Bright Blue
color13=$color05 # Base 0E - Bright Magenta
color14=$color06 # Base 0C - Bright Cyan
color15="<%= split_by_slash(@base["07"]["hex"]) %>" # Base 07 - Bright White
color16="<%= split_by_slash(@base["09"]["hex"]) %>" # Base 09
color17="<%= split_by_slash(@base["0F"]["hex"]) %>" # Base 0F
color18="<%= split_by_slash(@base["01"]["hex"]) %>" # Base 01
color19="<%= split_by_slash(@base["02"]["hex"]) %>" # Base 02
color20="<%= split_by_slash(@base["04"]["hex"]) %>" # Base 04
color21="<%= split_by_slash(@base["06"]["hex"]) %>" # Base 06
color_foreground="<%= split_by_slash(@base["05"]["hex"]) %>" # Base 05
color_background="<%= split_by_slash(@base["00"]["hex"]) %>" # Base 00
color_cursor="<%= split_by_slash(@base["05"]["hex"]) %>" # Base 05
if [ -n "$TMUX" ]; then
# tell tmux to pass the escape sequences through
# (Source: http://permalink.gmane.org/gmane.comp.terminal-emulators.tmux.user/1324)
printf_template="\033Ptmux;\033\033]4;%d;rgb:%s\007\033\\"
printf_template_var="\033Ptmux;\033\033]%d;rgb:%s\007\033\\"
printf_template_custom="\033Ptmux;\033\033]%s%s\007\033\\"
elif [ "${TERM%%-*}" = "screen" ]; then
# GNU screen (screen, screen-256color, screen-256color-bce)
printf_template="\033P\033]4;%d;rgb:%s\007\033\\"
printf_template_var="\033P\033]%d;rgb:%s\007\033\\"
printf_template_custom="\033P\033]%s%s\007\033\\"
elif [[ $- != *i* ]]; then
# non-interactive
alias printf=/bin/false
else
printf_template="\033]4;%d;rgb:%s\033\\"
printf_template_var="\033]%d;rgb:%s\033\\"
printf_template_custom="\033]%s%s\033\\"
fi
# 16 color space
printf $printf_template 0 $color00
printf $printf_template 1 $color01
printf $printf_template 2 $color02
printf $printf_template 3 $color03
printf $printf_template 4 $color04
printf $printf_template 5 $color05
printf $printf_template 6 $color06
printf $printf_template 7 $color07
printf $printf_template 8 $color08
printf $printf_template 9 $color09
printf $printf_template 10 $color10
printf $printf_template 11 $color11
printf $printf_template 12 $color12
printf $printf_template 13 $color13
printf $printf_template 14 $color14
printf $printf_template 15 $color15
# 256 color space
printf $printf_template 16 $color16
printf $printf_template 17 $color17
printf $printf_template 18 $color18
printf $printf_template 19 $color19
printf $printf_template 20 $color20
printf $printf_template 21 $color21
# foreground / background / cursor color
if [ -n "$ITERM_SESSION_ID" ]; then
# iTerm2 proprietary escape codes
printf $printf_template_custom Pg <%= @base["05"]["hex"] %> # forground
printf $printf_template_custom Ph <%= @base["00"]["hex"] %> # background
printf $printf_template_custom Pi <%= @base["05"]["hex"] %> # bold color
printf $printf_template_custom Pj <%= @base["02"]["hex"] %> # selection color
printf $printf_template_custom Pk <%= @base["05"]["hex"] %> # selected text color
printf $printf_template_custom Pl <%= @base["05"]["hex"] %> # cursor
printf $printf_template_custom Pm <%= @base["00"]["hex"] %> # cursor text
else
printf $printf_template_var 10 $color_foreground
printf $printf_template_var 11 $color_background
printf $printf_template_custom 12 ";7" # cursor (reverse video)
fi
# clean up
unset printf_template
unset printf_template_var
unset color00
unset color01
unset color02
unset color03
unset color04
unset color05
unset color06
unset color07
unset color08
unset color09
unset color10
unset color11
unset color12
unset color13
unset color14
unset color15
unset color16
unset color17
unset color18
unset color19
unset color20
unset color21
unset color_foreground
unset color_background
unset color_cursor
#!/bin/sh
# Base16 Donokai - Shell color setup script
# Daniel Flanagan(https://lytedev.io)
if [ "${TERM%%-*}" = 'linux' ]; then
# This script doesn't support linux console (use 'vconsole' template instead)
return 2>/dev/null || exit 0
fi
color00="11/11/11" # Base 00 - Black
color01="f9/26/72" # Base 08 - Red
color02="a6/e2/2e" # Base 0B - Green
color03="f4/bf/75" # Base 0A - Yellow
color04="66/d9/ef" # Base 0D - Blue
color05="ae/81/ff" # Base 0E - Magenta
color06="a1/ef/e4" # Base 0C - Cyan
color07="f8/f8/f2" # Base 05 - White
color08="75/71/5e" # Base 03 - Bright Black
color09=$color01 # Base 08 - Bright Red
color10=$color02 # Base 0B - Bright Green
color11=$color03 # Base 0A - Bright Yellow
color12=$color04 # Base 0D - Bright Blue
color13=$color05 # Base 0E - Bright Magenta
color14=$color06 # Base 0C - Bright Cyan
color15="f9/f8/f5" # Base 07 - Bright White
color16="fd/97/1f" # Base 09
color17="cc/66/33" # Base 0F
color18="38/38/30" # Base 01
color19="49/48/3e" # Base 02
color20="a5/9f/85" # Base 04
color21="f5/f4/f1" # Base 06
color_foreground="f8/f8/f2" # Base 05
color_background="11/11/11" # Base 00
color_cursor="f8/f8/f2" # Base 05
if [ -n "$TMUX" ]; then
# tell tmux to pass the escape sequences through
# (Source: http://permalink.gmane.org/gmane.comp.terminal-emulators.tmux.user/1324)
printf_template="\033Ptmux;\033\033]4;%d;rgb:%s\007\033\\"
printf_template_var="\033Ptmux;\033\033]%d;rgb:%s\007\033\\"
printf_template_custom="\033Ptmux;\033\033]%s%s\007\033\\"
elif [ "${TERM%%-*}" = "screen" ]; then
# GNU screen (screen, screen-256color, screen-256color-bce)
printf_template="\033P\033]4;%d;rgb:%s\007\033\\"
printf_template_var="\033P\033]%d;rgb:%s\007\033\\"
printf_template_custom="\033P\033]%s%s\007\033\\"
elif [[ $- != *i* ]]; then
# non-interactive
alias printf=/bin/false
else
printf_template="\033]4;%d;rgb:%s\033\\"
printf_template_var="\033]%d;rgb:%s\033\\"
printf_template_custom="\033]%s%s\033\\"
fi
# 16 color space
printf $printf_template 0 $color00
printf $printf_template 1 $color01
printf $printf_template 2 $color02
printf $printf_template 3 $color03
printf $printf_template 4 $color04
printf $printf_template 5 $color05
printf $printf_template 6 $color06
printf $printf_template 7 $color07
printf $printf_template 8 $color08
printf $printf_template 9 $color09
printf $printf_template 10 $color10
printf $printf_template 11 $color11
printf $printf_template 12 $color12
printf $printf_template 13 $color13
printf $printf_template 14 $color14
printf $printf_template 15 $color15
# 256 color space
printf $printf_template 16 $color16
printf $printf_template 17 $color17
printf $printf_template 18 $color18
printf $printf_template 19 $color19
printf $printf_template 20 $color20
printf $printf_template 21 $color21
# foreground / background / cursor color
if [ -n "$ITERM_SESSION_ID" ]; then
# iTerm2 proprietary escape codes
printf $printf_template_custom Pg f8f8f2 # forground
printf $printf_template_custom Ph 111111 # background
printf $printf_template_custom Pi f8f8f2 # bold color
printf $printf_template_custom Pj 49483e # selection color
printf $printf_template_custom Pk f8f8f2 # selected text color
printf $printf_template_custom Pl f8f8f2 # cursor
printf $printf_template_custom Pm 111111 # cursor text
else
printf $printf_template_var 10 $color_foreground
printf $printf_template_var 11 $color_background
printf $printf_template_custom 12 ";7" # cursor (reverse video)
fi
# clean up
unset printf_template
unset printf_template_var
unset color00
unset color01
unset color02
unset color03
unset color04
unset color05
unset color06
unset color07
unset color08
unset color09
unset color10
unset color11
unset color12
unset color13
unset color14
unset color15
unset color16
unset color17
unset color18
unset color19
unset color20
unset color21
unset color_foreground
unset color_background
unset color_cursor
]===]

View File

@ -7,7 +7,7 @@ THEME="$1"
echo "$THEME"
"$DIR/generator/gen.bash" "$THEME"
"$DOTFILES_PATH/de/x/loadresources"
"$DOTFILES_PATH/apps/de/x/loadresources"
resrc
restartbar
# TODO: set GTK theme to "Arc-Dark" or "Arc-Light"

View File

@ -1,7 +1,7 @@
#!/usr/bin/env bash
dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/.." && pwd)
source "${dfp}/shell/bash/bashrc"
dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/../../" && pwd)
source "${dfp}/apps/shell/bash/bashrc"
USER_DISAGREE_CODE=120
NO_AGREEMENT_CODE=121
@ -73,6 +73,6 @@ _dotfiles_setup_run_setup() {
echo "Quitting due to lack of user agreement."
return "${NO_AGREEMENT_CODE}"
fi
}
export -f _dotfiles_setup_run_setup

View File

@ -8,16 +8,16 @@ if [[ $UID -ne 0 ]]; then
exit
fi
dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/" && pwd)
dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/../" && pwd)
source "${dfp}/scripts/setup_helpers.bash"
links=(
# display manager files
"$dfp/de/sway/sway-init" "/usr/bin/sway-lytedev"
"$dfp/de/sway/dm_entry" "/usr/share/wayland-sessions/sway-lytedev.desktop"
"$dfp/apps/de/sway/sway-init" "/usr/bin/sway-lytedev"
"$dfp/apps/de/sway/dm_entry" "/usr/share/wayland-sessions/sway-lytedev.desktop"
# touchpad
"$dfp/de/libinput/touchpad.conf" "/etc/X11/xorg.conf.d/41-libinput-lytedev-touchpad-options.conf"
"$dfp/apps/de/libinput/touchpad.conf" "/etc/X11/xorg.conf.d/41-libinput-lytedev-touchpad-options.conf"
)
_dotfiles_setup_run_setup "$dfp/.agreed-to-erasing-root-files.lock" "${links[@]}"

18
bin/optimize-image-for-web Executable file
View File

@ -0,0 +1,18 @@
#!/usr/bin/env bash
mogrify \
-filter Triangle \
-define filter:support=2 \
-resize 2000x2000\> \
-unsharp 0.25x0.08+8.3+0.045 \
-dither None \
-posterize 136 \
-quality 82 \
-define jpeg:fancy-upsampling=off \
-define png:compression-filter=5 \
-define png:compression-level=9 \
-define png:compression-strategy=1 \
-define png:exclude-chunk=all \
-interlace none \
-colorspace sRGB \
$1

View File

@ -3,5 +3,6 @@
index="${2}"
wp_file="${HOME}/.wallpaper${index}"
rm -f "${wp_file}"
echo "Setting ${1} as ${wp_file}"
ln -s "$(realpath "${1}")" "${wp_file}"
"${HOME}/.fehbg"

View File

@ -1,3 +1,3 @@
#!/usr/bin/env bash
"${DOTFILES_PATH}/de/bar/bar.bash"
"${DOTFILES_PATH}/apps/de/bar/bar.bash"

21
bin/terminal-rendering-test Executable file
View File

@ -0,0 +1,21 @@
#!/usr/bin/env bash
# sources:
# https://askubuntu.com/questions/528928/how-to-do-underline-bold-italic-strikethrough-color-background-and-size-i
# https://askubuntu.com/questions/27314/script-to-display-all-terminal-colors
indent=" "
padding=" "
reset="\e[0;39;49m"
for s in {0..8}; do # text styles
for t in {30..37}; do # text color
for b in {40..47}; do # background
echo -ne "${indent}\e[$s;$t;${b}m${padding}\\\e[$s;$t;${b}m${padding}${reset}"
done
echo
done
echo
done
echo -e "Emoji: 😱😍😬🎉"
echo

View File

@ -2,7 +2,7 @@
sess="$1"; shift
d="$(date +%Y-%m-%d_%H-%M-%S)"
f="$HOME/$d.tmux-buffer.log"
f="${HOME}/${d}.${sess}.tmux-buffer.log"
touch "$f"
chmod 600 "$f"
tmux capture-pane -pS -1000000000 > "$f"

9
bin/unarchive Executable file
View File

@ -0,0 +1,9 @@
#!/usr/bin/env bash
archive_name="${1}"; shift
to_dir="$(basename $archive_name)"
mkdir -p "${to_dir}"
pushd "${to_dir}"
tar xzvf "${archive_name}"
echo "Unarchived to: ${to_dir}"
popd

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash
resrc
"${DOTFILES_PATH}/de/x/loadresources"
"${DOTFILES_PATH}/apps/de/x/loadresources"
autorandr --change
"${DOTFILES_PATH}/de/bspwm/bspwmrc"
"${DOTFILES_PATH}/de/x/loadresources"
"${DOTFILES_PATH}/apps/de/bspwm/bspwmrc"
"${DOTFILES_PATH}/apps/de/x/loadresources"
restartbar
"${HOME}/.fehbg"

View File

@ -2,9 +2,9 @@
resrc
source "$HOME/.workdock.env"
"${DOTFILES_PATH}/de/x/loadresources" lodpi
"${DOTFILES_PATH}/apps/de/x/loadresources" lodpi
autorandr --change
"${DOTFILES_PATH}/de/bspwm/bspwmrc"
"${DOTFILES_PATH}/de/x/loadresources" lodpi
"${DOTFILES_PATH}/apps/de/bspwm/bspwmrc"
"${DOTFILES_PATH}/apps/de/x/loadresources" lodpi
restartbar
"${HOME}/.fehbg"

66
setup
View File

@ -1,10 +1,20 @@
#!/usr/bin/env bash
# TODO: ascii art header since I'm a leet haxx0r
# #
# _ _ _ #
# | |_ _| |_,___ __| | _____ __ #
# | | | | | __/ _ \/ ,` |/ _ \ \ / / #
# | | |_| | || __/ (_| | __/\ V / #
# |_|\__, |\__\___|\__,_|\___| \_/ #
# \__/ #
# #
# D O T F I L E S #
# #
# TODO: quiet mode?
dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/" && pwd)
source "${dfp}/scripts/setup_helpers.bash"
source "${dfp}/bin/lib/setup_helpers.bash"
edfp="${dfp}/.env"
INTERACTIVE=1
@ -20,35 +30,35 @@ done
links=(
# desktop environment files
"$dfp/de/bspwm/bspwmrc" "$XDG_CONFIG_HOME/bspwm/bspwmrc"
"$dfp/de/bspwm/fehbg" "$HOME/.fehbg"
"$dfp/de/sway/config" "$XDG_CONFIG_HOME/sway/config"
"$dfp/de/sxhkd/sxhkdrc" "$XDG_CONFIG_HOME/sxhkd/sxhkdrc"
"$dfp/de/x/resources" "$HOME/.Xresources"
"$dfp/de/x/initrc" "$HOME/.xinitrc"
"$dfp/de/x/initrc" "$HOME/.vnc/xstartup"
"$dfp/de/x/profile" "$HOME/.xprofile"
"$dfp/de/x/modmap" "$HOME/.xmodmap"
"$dfp/de/compton/compton.conf" "$XDG_CONFIG_HOME/compton.conf"
"$dfp/de/dunst/dunstrc" "$XDG_CONFIG_HOME/dunst/dunstrc"
"$dfp/scripts/colors/xresources" "$HOME/.Xresources.colors"
"$dfp/apps/de/bspwm/bspwmrc" "$XDG_CONFIG_HOME/bspwm/bspwmrc"
"$dfp/apps/de/bspwm/fehbg" "$HOME/.fehbg"
"$dfp/apps/de/sway/config" "$XDG_CONFIG_HOME/sway/config"
"$dfp/apps/de/sxhkd/sxhkdrc" "$XDG_CONFIG_HOME/sxhkd/sxhkdrc"
"$dfp/apps/de/x/resources" "$HOME/.Xresources"
"$dfp/apps/de/x/initrc" "$HOME/.xinitrc"
"$dfp/apps/de/x/initrc" "$HOME/.vnc/xstartup"
"$dfp/apps/de/x/profile" "$HOME/.xprofile"
"$dfp/apps/de/x/modmap" "$HOME/.xmodmap"
"$dfp/apps/de/compton/compton.conf" "$XDG_CONFIG_HOME/compton.conf"
"$dfp/apps/de/dunst/dunstrc" "$XDG_CONFIG_HOME/dunst/dunstrc"
"$dfp/bin/lib/colors/xresources" "$HOME/.Xresources.colors"
# shell files
"$dfp/shell/bash/bashrc" "$HOME/.bashrc"
"$dfp/shell/bash/bash_profile" "$HOME/.bash_profile"
"$dfp/shell/tmux/tmux.conf" "$HOME/.tmux.conf"
"$dfp/shell/tmux/layouts" "$HOME/.tmux/layouts"
"$dfp/apps/shell/bash/bashrc" "$HOME/.bashrc"
"$dfp/apps/shell/bash/bash_profile" "$HOME/.bash_profile"
"$dfp/apps/shell/tmux/tmux.conf" "$HOME/.tmux.conf"
"$dfp/apps/shell/tmux/layouts" "$HOME/.tmux/layouts"
# text editor files
"$dfp/apps/neovim/" "$XDG_CONFIG_HOME/nvim"
"$dfp/apps/neovim/" "$HOME/.vim"
"$dfp/apps/neovim/init.vim" "$HOME/.vimrc"
"$dfp/scripts/colors/vim" "$XDG_CONFIG_HOME/nvim/colors/base16-donokai.vim"
"$dfp/bin/lib/colors/vim" "$XDG_CONFIG_HOME/nvim/colors/base16-donokai.vim"
# gtk configuration files
"$dfp/de/gtk/2rc" "$HOME/.gtkrc-2.0"
"$dfp/de/gtk/2rc" "$HOME/.gtkrc"
"$dfp/de/gtk/3settings.ini" "$XDG_CONFIG_HOME/gtk-3.0/settings.ini"
"$dfp/apps/de/gtk/2rc" "$HOME/.gtkrc-2.0"
"$dfp/apps/de/gtk/2rc" "$HOME/.gtkrc"
"$dfp/apps/de/gtk/3settings.ini" "$XDG_CONFIG_HOME/gtk-3.0/settings.ini"
# irc files
"$dfp/apps/irssi/" "$HOME/.irssi"
@ -63,7 +73,7 @@ links=(
"$dfp/apps/scim/lua" "$HOME/.scim/lua"
# libinput configuration
"$dfp/de/libinput/gestures.conf" "$XDG_CONFIG_HOME/libinput-gestures.conf"
"$dfp/apps/de/libinput/gestures.conf" "$XDG_CONFIG_HOME/libinput-gestures.conf"
# document viewer
"$dfp/apps/zathura/" "$XDG_CONFIG_HOME/zathura"
@ -81,7 +91,7 @@ links=(
"$dfp/apps/rofi/config" "$XDG_CONFIG_HOME/rofi/config"
# bar files
"$dfp/de/bar/polybar-config" "$XDG_CONFIG_HOME/polybar/config"
"$dfp/apps/de/bar/polybar-config" "$XDG_CONFIG_HOME/polybar/config"
# ranger config
"$dfp/apps/ranger/" "$XDG_CONFIG_HOME/ranger"
@ -97,10 +107,10 @@ links=(
"$dfp/apps/git/config" "$HOME/.gitconfig"
# fontconfig
"$dfp/de/fontconfig/" "$XDG_CONFIG_HOME/fontconfig"
"$dfp/apps/de/fontconfig/" "$XDG_CONFIG_HOME/fontconfig"
# XDG user directories
"$dfp/shell/user-dirs" "$XDG_CONFIG_HOME/user-dirs.dirs"
"$dfp/apps/shell/user-dirs" "$XDG_CONFIG_HOME/user-dirs.dirs"
)
mkdir -p "$edfp/"
@ -132,12 +142,12 @@ chmod 700 -R "$HOME/.bin"
_dotfiles_setup_run_setup "$dfp/.agreed-to-erasing-files.lock" "${links[@]}"
if [[ "$INTERACTIVE" = 1 ]]; then
echo -n -e "Do you want to run the sudo_setup script for changes to /etc"
echo -n -e "Do you want to run the bin/lib/sudo_setup script for changes to /etc"
echo -n -e "\nand other root directories?"
read -r -p " [y/N] " response
response=${response,,} # to lower case
if [[ $response =~ ^(yes|y)$ ]]; then
"$dfp/sudo_setup"
"$dfp/bin/lib/sudo_setup"
fi
echo -e "Dotfiles Installed! Running 'exec bash'...\n"