dotfiles

configuration files for shell, text editor, graphical environment, etc.
git clone git://src.adamsgaard.dk/dotfiles
Log | Files | Refs | README | LICENSE Back to index

commit eca806be21013b3c10354104dcce531525214fa1
parent 9ce855245750f46ee239db9295a2daaaefe8e1a8
Author: Anders Damsgaard <anders@adamsgaard.dk>
Date:   Tue, 26 Mar 2019 13:03:34 +0100

Move dotfiles to root directory

Diffstat:
Rlinks/.Xdefaults-light -> .Xdefaults-light | 0
Rlinks/.Xmodmap -> .Xmodmap | 0
Rlinks/.Xresources -> .Xresources | 0
Rlinks/.abcde.conf -> .abcde.conf | 0
Rlinks/.bash_profile -> .bash_profile | 0
Rlinks/.bashrc -> .bashrc | 0
Rlinks/.bmdirs -> .bmdirs | 0
Rlinks/.bmfiles -> .bmfiles | 0
Rlinks/.calcurse/conf -> .calcurse/conf | 0
Rlinks/.calcurse/keys -> .calcurse/keys | 0
Rlinks/.colors/NES -> .colors/NES | 0
Rlinks/.colors/Tomorrow -> .colors/Tomorrow | 0
Rlinks/.colors/TomorrowNight -> .colors/TomorrowNight | 0
Rlinks/.colors/TomorrowNightBlue -> .colors/TomorrowNightBlue | 0
Rlinks/.colors/TomorrowNightBright -> .colors/TomorrowNightBright | 0
Rlinks/.colors/TomorrowNightEighties -> .colors/TomorrowNightEighties | 0
Rlinks/.colors/ancient -> .colors/ancient | 0
Rlinks/.colors/beastie -> .colors/beastie | 0
Rlinks/.colors/blackburn -> .colors/blackburn | 0
Rlinks/.colors/blackgum -> .colors/blackgum | 0
Rlinks/.colors/blue -> .colors/blue | 0
Rlinks/.colors/bw_b -> .colors/bw_b | 0
Rlinks/.colors/bw_w -> .colors/bw_w | 0
Rlinks/.colors/charlie_brown -> .colors/charlie_brown | 0
Rlinks/.colors/clean -> .colors/clean | 0
Rlinks/.colors/clear -> .colors/clear | 0
Rlinks/.colors/clouds -> .colors/clouds | 0
Rlinks/.colors/colors -> .colors/colors | 0
Rlinks/.colors/crypt -> .colors/crypt | 0
Rlinks/.colors/cryptedit -> .colors/cryptedit | 0
Rlinks/.colors/cryptetsy -> .colors/cryptetsy | 0
Rlinks/.colors/cryptmatrix -> .colors/cryptmatrix | 0
Rlinks/.colors/cryptred -> .colors/cryptred | 0
Rlinks/.colors/erosion -> .colors/erosion | 0
Rlinks/.colors/erosion2 -> .colors/erosion2 | 0
Rlinks/.colors/erosionedit -> .colors/erosionedit | 0
Rlinks/.colors/euphrasia -> .colors/euphrasia | 0
Rlinks/.colors/fallac -> .colors/fallac | 0
Rlinks/.colors/form -> .colors/form | 0
Rlinks/.colors/genie -> .colors/genie | 0
Rlinks/.colors/genie5 -> .colors/genie5 | 0
Rlinks/.colors/gohucolor -> .colors/gohucolor | 0
Rlinks/.colors/gutter -> .colors/gutter | 0
Rlinks/.colors/jellybean -> .colors/jellybean | 0
Rlinks/.colors/nebula -> .colors/nebula | 0
Rlinks/.colors/neeee -> .colors/neeee | 0
Rlinks/.colors/ok100 -> .colors/ok100 | 0
Rlinks/.colors/pantsu -> .colors/pantsu | 0
Rlinks/.colors/papey -> .colors/papey | 0
Rlinks/.colors/plain -> .colors/plain | 0
Rlinks/.colors/plastique -> .colors/plastique | 0
Rlinks/.colors/poppy -> .colors/poppy | 0
Rlinks/.colors/ratpoison -> .colors/ratpoison | 0
Rlinks/.colors/redhead -> .colors/redhead | 0
Rlinks/.colors/sinatra -> .colors/sinatra | 0
Rlinks/.colors/solarized -> .colors/solarized | 0
Rlinks/.colors/solarized_black -> .colors/solarized_black | 0
Rlinks/.colors/solarized_light -> .colors/solarized_light | 0
Rlinks/.colors/space -> .colors/space | 0
Rlinks/.colors/thaw -> .colors/thaw | 0
Rlinks/.colors/venam -> .colors/venam | 0
Rlinks/.colors/vintage -> .colors/vintage | 0
Rlinks/.colors/vintage2 -> .colors/vintage2 | 0
Rlinks/.colors/waterfront -> .colors/waterfront | 0
Rlinks/.colors/wooly -> .colors/wooly | 0
Rlinks/.colors/xmas -> .colors/xmas | 0
A.commands.sh | 208+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Rlinks/.compton.conf -> .compton.conf | 0
Rlinks/.config/awesome/rc.lua -> .config/awesome/rc.lua | 0
Rlinks/.config/bspwm/bspwmrc -> .config/bspwm/bspwmrc | 0
Rlinks/.config/bspwm/panel/panel -> .config/bspwm/panel/panel | 0
Rlinks/.config/bspwm/panel/panel_bar -> .config/bspwm/panel/panel_bar | 0
Rlinks/.config/bspwm/panel/panel_colors -> .config/bspwm/panel/panel_colors | 0
Rlinks/.config/dunst/dunstrc -> .config/dunst/dunstrc | 0
Rlinks/.config/dwb/keys -> .config/dwb/keys | 0
Rlinks/.config/dwb/searchengines -> .config/dwb/searchengines | 0
Rlinks/.config/dwb/settings -> .config/dwb/settings | 0
Rlinks/.config/dwb/userscripts/wget -> .config/dwb/userscripts/wget | 0
Rlinks/.config/dwb/userscripts/youtube-mplayer -> .config/dwb/userscripts/youtube-mplayer | 0
Rlinks/.config/feh/keys -> .config/feh/keys | 0
Rlinks/.config/fffs/plugins-zsh -> .config/fffs/plugins-zsh | 0
Rlinks/.config/firejail/signal-desktop.profile -> .config/firejail/signal-desktop.profile | 0
Rlinks/.config/firejail/signal-scli.profile -> .config/firejail/signal-scli.profile | 0
Rlinks/.config/firejail/surf.config -> .config/firejail/surf.config | 0
Rlinks/.config/gopass/config.yml -> .config/gopass/config.yml | 0
Rlinks/.config/i3/config -> .config/i3/config | 0
Rlinks/.config/i3/i3blocks -> .config/i3/i3blocks | 0
Rlinks/.config/i3/i3scripts/i3battery -> .config/i3/i3scripts/i3battery | 0
Rlinks/.config/i3/i3scripts/i3cpu -> .config/i3/i3scripts/i3cpu | 0
Rlinks/.config/i3/i3scripts/i3date -> .config/i3/i3scripts/i3date | 0
Rlinks/.config/i3/i3scripts/i3disk -> .config/i3/i3scripts/i3disk | 0
Rlinks/.config/i3/i3scripts/i3internet -> .config/i3/i3scripts/i3internet | 0
Rlinks/.config/i3/i3scripts/i3layout -> .config/i3/i3scripts/i3layout | 0
Rlinks/.config/i3/i3scripts/i3mail -> .config/i3/i3scripts/i3mail | 0
Rlinks/.config/i3/i3scripts/i3mem -> .config/i3/i3scripts/i3mem | 0
Rlinks/.config/i3/i3scripts/i3mpd -> .config/i3/i3scripts/i3mpd | 0
Rlinks/.config/i3/i3scripts/i3mpdupdate -> .config/i3/i3scripts/i3mpdupdate | 0
Rlinks/.config/i3/i3scripts/i3news -> .config/i3/i3scripts/i3news | 0
Rlinks/.config/i3/i3scripts/i3pacman -> .config/i3/i3scripts/i3pacman | 0
Rlinks/.config/i3/i3scripts/i3torrent -> .config/i3/i3scripts/i3torrent | 0
Rlinks/.config/i3/i3scripts/i3volume -> .config/i3/i3scripts/i3volume | 0
Rlinks/.config/i3/i3scripts/i3weather -> .config/i3/i3scripts/i3weather | 0
Rlinks/.config/i3/status -> .config/i3/status | 0
Rlinks/.config/kitty/kitty.conf -> .config/kitty/kitty.conf | 0
Rlinks/.config/luakit/binds.lua -> .config/luakit/binds.lua | 0
Rlinks/.config/luakit/globals.lua -> .config/luakit/globals.lua | 0
Rlinks/.config/luakit/modes.lua -> .config/luakit/modes.lua | 0
Rlinks/.config/luakit/rc.lua -> .config/luakit/rc.lua | 0
Rlinks/.config/luakit/theme.lua -> .config/luakit/theme.lua | 0
Rlinks/.config/luakit/webview.lua -> .config/luakit/webview.lua | 0
Rlinks/.config/luakit/window.lua -> .config/luakit/window.lua | 0
Rlinks/.config/mimeapps.list -> .config/mimeapps.list | 0
Rlinks/.config/mpd/mpd.conf -> .config/mpd/mpd.conf | 0
Rlinks/.config/mps-youtube/config -> .config/mps-youtube/config | 0
Rlinks/.config/mpv/mpv.conf -> .config/mpv/mpv.conf | 0
Rlinks/.config/newsboat/config -> .config/newsboat/config | 0
Rlinks/.config/newsboat/urls -> .config/newsboat/urls | 0
Rlinks/.config/nnn/copy-selection-to-clipboard -> .config/nnn/copy-selection-to-clipboard | 0
Rlinks/.config/nnn/fzf-edit -> .config/nnn/fzf-edit | 0
Rlinks/.config/nnn/fzf-open -> .config/nnn/fzf-open | 0
Rlinks/.config/nnn/open-images -> .config/nnn/open-images | 0
Rlinks/.config/nnn/unpack -> .config/nnn/unpack | 0
Rlinks/.config/nvim/init.vim -> .config/nvim/init.vim | 0
Rlinks/.config/openbox/autostart -> .config/openbox/autostart | 0
Rlinks/.config/openbox/menu.xml -> .config/openbox/menu.xml | 0
Rlinks/.config/openbox/rc.xml -> .config/openbox/rc.xml | 0
Rlinks/.config/ranger/commands.py -> .config/ranger/commands.py | 0
Rlinks/.config/ranger/luke_ranger_readme.md -> .config/ranger/luke_ranger_readme.md | 0
Rlinks/.config/ranger/rc.conf -> .config/ranger/rc.conf | 0
Rlinks/.config/ranger/rifle.conf -> .config/ranger/rifle.conf | 0
Rlinks/.config/ranger/scope.sh -> .config/ranger/scope.sh | 0
Rlinks/.config/rofi/config -> .config/rofi/config | 0
Rlinks/.config/surfraw/conf -> .config/surfraw/conf | 0
Rlinks/.config/surfraw/elvi/ddg -> .config/surfraw/elvi/ddg | 0
Rlinks/.config/sxhkd/sxhkdrc -> .config/sxhkd/sxhkdrc | 0
Rlinks/.config/sxiv/exec/key-handler -> .config/sxiv/exec/key-handler | 0
Rlinks/.config/uzbl/config -> .config/uzbl/config | 0
Rlinks/.config/uzbl/config-default -> .config/uzbl/config-default | 0
Rlinks/.config/uzbl/style.css -> .config/uzbl/style.css | 0
Rlinks/.config/xmoto/config.dat -> .config/xmoto/config.dat | 0
Rlinks/.config/zathura/zathurarc -> .config/zathura/zathurarc | 0
Rlinks/.conkyrc -> .conkyrc | 0
Rlinks/.ctags -> .ctags | 0
Rlinks/.emoji -> .emoji | 0
Rlinks/.festivalrc -> .festivalrc | 0
Rlinks/.gitconfig -> .gitconfig | 0
D.gitignore | 3---
M.gitmodules | 2+-
Rlinks/.imapfilter/adamsgaard.lua -> .imapfilter/adamsgaard.lua | 0
Rlinks/.imapfilter/noaa.lua -> .imapfilter/noaa.lua | 0
Rlinks/.imapfilter/riseup.lua -> .imapfilter/riseup.lua | 0
Rlinks/.inputrc -> .inputrc | 0
Rlinks/.ipython/profile_default/ipython_config.py -> .ipython/profile_default/ipython_config.py | 0
Rlinks/.kwm/kwmrc -> .kwm/kwmrc | 0
Rlinks/.local/share/applications/surf-usercreated-1.desktop -> .local/share/applications/surf-usercreated-1.desktop | 0
Rlinks/.locale -> .locale | 0
Rlinks/.mailcap -> .mailcap | 0
Rlinks/.msmtprc -> .msmtprc | 0
Rlinks/.mutt/cert.pem -> .mutt/cert.pem | 0
Rlinks/.mutt/colors -> .mutt/colors | 0
Rlinks/.mutt/colors2 -> .mutt/colors2 | 0
Rlinks/.mutt/muttrc -> .mutt/muttrc | 0
Rlinks/.mutt/offlineimap-password-store.py -> .mutt/offlineimap-password-store.py | 0
Rlinks/.mutt/offlineimap.py -> .mutt/offlineimap.py | 0
Rlinks/.mutt/view_attachment.sh -> .mutt/view_attachment.sh | 0
Rlinks/.ncmpcpp/bindings -> .ncmpcpp/bindings | 0
Rlinks/.ncmpcpp/config -> .ncmpcpp/config | 0
Rlinks/.notmuch-config -> .notmuch-config | 0
Rlinks/.offlineimaprc -> .offlineimaprc | 0
Rlinks/.profile -> .profile | 0
Rlinks/.scimrc -> .scimrc | 0
Rlinks/.signature -> .signature | 0
Rlinks/.spacemacs -> .spacemacs | 0
Rlinks/.surf/script.js -> .surf/script.js | 0
Rlinks/.taskrc -> .taskrc | 0
Rlinks/.tmux.conf -> .tmux.conf | 0
Rlinks/.tmuxinator/article2.yml -> .tmuxinator/article2.yml | 0
Rlinks/.tmuxinator/cosmo.yml -> .tmuxinator/cosmo.yml | 0
Rlinks/.tmuxinator/dev.yml -> .tmuxinator/dev.yml | 0
Rlinks/.tmuxinator/tmuxinator.bash -> .tmuxinator/tmuxinator.bash | 0
Rlinks/.tmuxinator/tmuxinator.zsh -> .tmuxinator/tmuxinator.zsh | 0
Rlinks/.tmuxinator/tutorial.yml -> .tmuxinator/tutorial.yml | 0
Rlinks/.tmuxinator/utility.yml -> .tmuxinator/utility.yml | 0
Rlinks/.urlview -> .urlview | 0
Rlinks/.vim/UltiSnips/html.snippets -> .vim/UltiSnips/html.snippets | 0
Rlinks/.vim/UltiSnips/mail.snippets -> .vim/UltiSnips/mail.snippets | 0
Rlinks/.vim/UltiSnips/markdown.snippets -> .vim/UltiSnips/markdown.snippets | 0
Rlinks/.vim/UltiSnips/tex.snippets -> .vim/UltiSnips/tex.snippets | 0
Rlinks/.vim/colors/adbasic.vim -> .vim/colors/adbasic.vim | 0
A.vim/colors/tender.vim | 2++
Rlinks/.vim/ftdetect/arduino.vim -> .vim/ftdetect/arduino.vim | 0
Rlinks/.vim/ftdetect/cuda.vim -> .vim/ftdetect/cuda.vim | 0
Rlinks/.vim/ftdetect/markdown.vim -> .vim/ftdetect/markdown.vim | 0
Rlinks/.vim/ftdetect/qgislayer.vim -> .vim/ftdetect/qgislayer.vim | 0
Rlinks/.vim/ftplugin/binary.vim -> .vim/ftplugin/binary.vim | 0
Rlinks/.vim/ftplugin/fortran.vim -> .vim/ftplugin/fortran.vim | 0
Rlinks/.vim/ftplugin/gitcommit.vim -> .vim/ftplugin/gitcommit.vim | 0
Rlinks/.vim/ftplugin/mail.vim -> .vim/ftplugin/mail.vim | 0
Rlinks/.vim/ftplugin/markdown.vim -> .vim/ftplugin/markdown.vim | 0
Rlinks/.vim/ftplugin/python.vim -> .vim/ftplugin/python.vim | 0
Rlinks/.vim/ftplugin/startify.vim -> .vim/ftplugin/startify.vim | 0
A.vim/ftplugin/tex.vim | 41+++++++++++++++++++++++++++++++++++++++++
A.vim/ftplugin/yaml.vim | 23+++++++++++++++++++++++
A.vim/plugin/00-general.vim | 40++++++++++++++++++++++++++++++++++++++++
A.vim/plugin/appearance.vim | 135+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.vim/plugin/correct.vim | 21+++++++++++++++++++++
A.vim/plugin/keybinds.vim | 227+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.vim/plugins.vim | 171+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.vim/vimrc | 11+++++++++++
A.vim/vimrc.noplugs | 8++++++++
A.vim/vimrc.tiny | 13+++++++++++++
A.vimpcrc | 56++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.vimperator/colors/darkness2.vimp | 68++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.vimperator/colors/phallus.vimp | 75+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.vimperatorrc | 47+++++++++++++++++++++++++++++++++++++++++++++++
A.w3m/bookmark.html | 100+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.w3m/config | 139+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.w3m/keymap | 143+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.weechat/alias.conf | 49+++++++++++++++++++++++++++++++++++++++++++++++++
A.weechat/aspell.conf | 33+++++++++++++++++++++++++++++++++
A.weechat/autosort.conf | 22++++++++++++++++++++++
A.weechat/buffer_autoset.conf | 16++++++++++++++++
A.weechat/buffers.conf | 80+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.weechat/buflist.conf | 39+++++++++++++++++++++++++++++++++++++++
A.weechat/charset.conf | 18++++++++++++++++++
A.weechat/exec.conf | 18++++++++++++++++++
A.weechat/fifo.conf | 14++++++++++++++
A.weechat/irc.conf | 531+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.weechat/iset.conf | 38++++++++++++++++++++++++++++++++++++++
A.weechat/logger.conf | 35+++++++++++++++++++++++++++++++++++
A.weechat/plugins.conf | 232+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.weechat/python/weechat-vimode | 1+
A.weechat/relay.conf | 48++++++++++++++++++++++++++++++++++++++++++++++++
A.weechat/script.conf | 56++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.weechat/sec.conf | 39+++++++++++++++++++++++++++++++++++++++
A.weechat/trigger.conf | 59+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.weechat/weechat.conf | 748+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.weechat/xfer.conf | 39+++++++++++++++++++++++++++++++++++++++
A.xbindkeysrc | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.xinitrc | 56++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A.xpdfrc | 10++++++++++
A.zprofile | 3+++
A.zshrc | 226+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Dlinks/.commands.sh | 207-------------------------------------------------------------------------------
Dlinks/.gitignore | 2--
Dlinks/.vim/colors/tender.vim | 2--
Dlinks/.vim/ftplugin/tex.vim | 41-----------------------------------------
Dlinks/.vim/ftplugin/yaml.vim | 23-----------------------
Dlinks/.vim/plugin/00-general.vim | 40----------------------------------------
Dlinks/.vim/plugin/appearance.vim | 135-------------------------------------------------------------------------------
Dlinks/.vim/plugin/correct.vim | 21---------------------
Dlinks/.vim/plugin/keybinds.vim | 227-------------------------------------------------------------------------------
Dlinks/.vim/plugins.vim | 171-------------------------------------------------------------------------------
Dlinks/.vim/vimrc | 11-----------
Dlinks/.vim/vimrc.noplugs | 8--------
Dlinks/.vim/vimrc.tiny | 13-------------
Dlinks/.vimpcrc | 56--------------------------------------------------------
Dlinks/.vimperator/colors/darkness2.vimp | 68--------------------------------------------------------------------
Dlinks/.vimperator/colors/phallus.vimp | 75---------------------------------------------------------------------------
Dlinks/.vimperatorrc | 47-----------------------------------------------
Dlinks/.w3m/bookmark.html | 100-------------------------------------------------------------------------------
Dlinks/.w3m/config | 139-------------------------------------------------------------------------------
Dlinks/.w3m/keymap | 143-------------------------------------------------------------------------------
Dlinks/.weechat/alias.conf | 49-------------------------------------------------
Dlinks/.weechat/aspell.conf | 33---------------------------------
Dlinks/.weechat/autosort.conf | 22----------------------
Dlinks/.weechat/buffer_autoset.conf | 16----------------
Dlinks/.weechat/buffers.conf | 80-------------------------------------------------------------------------------
Dlinks/.weechat/buflist.conf | 39---------------------------------------
Dlinks/.weechat/charset.conf | 18------------------
Dlinks/.weechat/exec.conf | 18------------------
Dlinks/.weechat/fifo.conf | 14--------------
Dlinks/.weechat/irc.conf | 531-------------------------------------------------------------------------------
Dlinks/.weechat/iset.conf | 38--------------------------------------
Dlinks/.weechat/logger.conf | 35-----------------------------------
Dlinks/.weechat/plugins.conf | 232-------------------------------------------------------------------------------
Dlinks/.weechat/python/weechat-vimode | 1-
Dlinks/.weechat/relay.conf | 48------------------------------------------------
Dlinks/.weechat/script.conf | 56--------------------------------------------------------
Dlinks/.weechat/sec.conf | 39---------------------------------------
Dlinks/.weechat/trigger.conf | 59-----------------------------------------------------------
Dlinks/.weechat/weechat.conf | 748-------------------------------------------------------------------------------
Dlinks/.weechat/xfer.conf | 39---------------------------------------
Dlinks/.xbindkeysrc | 57---------------------------------------------------------
Dlinks/.xinitrc | 56--------------------------------------------------------
Dlinks/.xpdfrc | 10----------
Dlinks/.zprofile | 3---
Dlinks/.zshrc | 226-------------------------------------------------------------------------------
288 files changed, 3996 insertions(+), 4000 deletions(-)

diff --git a/links/.Xdefaults-light b/.Xdefaults-light diff --git a/links/.Xmodmap b/.Xmodmap diff --git a/links/.Xresources b/.Xresources diff --git a/links/.abcde.conf b/.abcde.conf diff --git a/links/.bash_profile b/.bash_profile diff --git a/links/.bashrc b/.bashrc diff --git a/links/.bmdirs b/.bmdirs diff --git a/links/.bmfiles b/.bmfiles diff --git a/links/.calcurse/conf b/.calcurse/conf diff --git a/links/.calcurse/keys b/.calcurse/keys diff --git a/links/.colors/NES b/.colors/NES diff --git a/links/.colors/Tomorrow b/.colors/Tomorrow diff --git a/links/.colors/TomorrowNight b/.colors/TomorrowNight diff --git a/links/.colors/TomorrowNightBlue b/.colors/TomorrowNightBlue diff --git a/links/.colors/TomorrowNightBright b/.colors/TomorrowNightBright diff --git a/links/.colors/TomorrowNightEighties b/.colors/TomorrowNightEighties diff --git a/links/.colors/ancient b/.colors/ancient diff --git a/links/.colors/beastie b/.colors/beastie diff --git a/links/.colors/blackburn b/.colors/blackburn diff --git a/links/.colors/blackgum b/.colors/blackgum diff --git a/links/.colors/blue b/.colors/blue diff --git a/links/.colors/bw_b b/.colors/bw_b diff --git a/links/.colors/bw_w b/.colors/bw_w diff --git a/links/.colors/charlie_brown b/.colors/charlie_brown diff --git a/links/.colors/clean b/.colors/clean diff --git a/links/.colors/clear b/.colors/clear diff --git a/links/.colors/clouds b/.colors/clouds diff --git a/links/.colors/colors b/.colors/colors diff --git a/links/.colors/crypt b/.colors/crypt diff --git a/links/.colors/cryptedit b/.colors/cryptedit diff --git a/links/.colors/cryptetsy b/.colors/cryptetsy diff --git a/links/.colors/cryptmatrix b/.colors/cryptmatrix diff --git a/links/.colors/cryptred b/.colors/cryptred diff --git a/links/.colors/erosion b/.colors/erosion diff --git a/links/.colors/erosion2 b/.colors/erosion2 diff --git a/links/.colors/erosionedit b/.colors/erosionedit diff --git a/links/.colors/euphrasia b/.colors/euphrasia diff --git a/links/.colors/fallac b/.colors/fallac diff --git a/links/.colors/form b/.colors/form diff --git a/links/.colors/genie b/.colors/genie diff --git a/links/.colors/genie5 b/.colors/genie5 diff --git a/links/.colors/gohucolor b/.colors/gohucolor diff --git a/links/.colors/gutter b/.colors/gutter diff --git a/links/.colors/jellybean b/.colors/jellybean diff --git a/links/.colors/nebula b/.colors/nebula diff --git a/links/.colors/neeee b/.colors/neeee diff --git a/links/.colors/ok100 b/.colors/ok100 diff --git a/links/.colors/pantsu b/.colors/pantsu diff --git a/links/.colors/papey b/.colors/papey diff --git a/links/.colors/plain b/.colors/plain diff --git a/links/.colors/plastique b/.colors/plastique diff --git a/links/.colors/poppy b/.colors/poppy diff --git a/links/.colors/ratpoison b/.colors/ratpoison diff --git a/links/.colors/redhead b/.colors/redhead diff --git a/links/.colors/sinatra b/.colors/sinatra diff --git a/links/.colors/solarized b/.colors/solarized diff --git a/links/.colors/solarized_black b/.colors/solarized_black diff --git a/links/.colors/solarized_light b/.colors/solarized_light diff --git a/links/.colors/space b/.colors/space diff --git a/links/.colors/thaw b/.colors/thaw diff --git a/links/.colors/venam b/.colors/venam diff --git a/links/.colors/vintage b/.colors/vintage diff --git a/links/.colors/vintage2 b/.colors/vintage2 diff --git a/links/.colors/waterfront b/.colors/waterfront diff --git a/links/.colors/wooly b/.colors/wooly diff --git a/links/.colors/xmas b/.colors/xmas diff --git a/.commands.sh b/.commands.sh @@ -0,0 +1,208 @@ +#!/bin/bash + + +#### FUNCTIONS AND ALIASES + +alias b='bash' +alias z='zsh' +alias v='vim' +alias n='nnn' + +## cd +alias cg='c "$(git rev-parse --show-toplevel)"' # cd under git repo +alias ch='cd "$(dirs -lp | sort -u | fzf --preview-window=right:hidden )"' # cd from history + +# change to directory under pwd +c() { + local dir + dir=$(find "${1:-.}" -type d | grep -v '/\.' | fzf --preview '') + + [ -n "$dir" ] && cd "$dir" || return +} + + +## ls + +if [[ "$(uname)" != 'Darwin' ]]; then + alias ls='ls --color=auto -F' +else + alias ls='ls -G -F' +fi +alias l='ls -alFh' +alias la='ls -A' + + +## Open files +o() { + [[ "$(uname)" == 'Darwin' ]] && open="open" || open="xdg-open" + if [[ "$#" -gt 0 && -f "$1" ]]; then + nohup $open "$1" >/dev/null 2>&1 & + else + IFS=$'\n' out=($(fzf --query="$1" --exit-0 --expect=ctrl-o,ctrl-e --preview-window=hidden)) + key=$(head -1 <<< "$out") + file=$(head -2 <<< "$out" | tail -1) + if [ -n "$file" ]; then + if [ "$key" = ctrl-e ]; then + ${EDITOR:-vim} "$file" + elif [ "$key" = ctrl-o ]; then + cd "$(dirname "$file")" + else + nohup $open "$file" >/dev/null 2>&1 & + fi + fi + fi +} + +## editor +alias vi='vim -u ~/.vim/vimrc.noplugs' + + +## dotfiles +alias zshreload="source ~/.zshrc" +alias dotfiles="git --git-dir=$HOME/code/dotfiles/ --work-tree=$HOME" +alias dotfiles-update="cd ~/code/dotfiles && git pull ; zshreload ; cd -" +alias dotfiles-commit="cd ~/code/dotfiles && git commit -a -S -v ; git push ; cd -" + + +## python +alias ipython-prof='ipython -m cProfile -s time' +alias python-prof='python -m cProfile -s time' + +## make +alias m="make" +alias mc="make clean" +alias me="make edit" + +## date +alias date-denmark='TZ=Europe/Copenhagen date' +alias date-eastern='TZ=US/Eastern date' +alias date-pacific='TZ=US/Pacific date' +alias date-mountain='TZ=US/Mountain date' +alias date-central='TZ=US/Central date' +alias date-uk='TZ=Europe/London date' +alias date-israel='TZ=Israel date' + +## git +alias gs='git status | less' +alias gl='git log --graph --oneline --decorate --all' +alias ga='git add' +alias gd='git diff --' +alias gch='git diff HEAD^..HEAD' +alias gc='git commit --verbose --gpg-sign' +alias gca='git commit --all --verbose --gpg-sign' +alias gp='git push' +alias gpu='git pull && git fetch --all' +alias gcgp='git commit --verbose --gpg-sign && git push' +alias gcagp='git commit --all --verbose --gpg-sign && git push' + +# redefine git log alias +alias gl="git log --graph --oneline --decorate --all --color=always | + fzf --ansi +s --preview='git show --color=always {2}' \ + --bind='pgdn:preview-page-down' \ + --bind='pgup:preview-page-up' \ + --bind='enter:execute:git show --color=always {2} | less -R' \ + --bind='ctrl-x:execute:git checkout {2} .'" + +## grep +alias grep='grep --color=auto' + +## speech synthesis +if [ "$(uname)" != 'Darwin' ]; then + say() { echo "$@" | festival --tts; } + sayfile() { festival --tts "$@"; } +else + sayfile() { say -f "$@"; } +fi + +## w3m +alias w3m="w3m -B" +w3mtor() { + local url + if [ $# -eq 0 ]; then + url="https://check.torproject.org/" + else + url=$1 + fi + torify w3m "$url" +} + +w3mddg() { torify surfraw ddg "$@"; } + +news() { + local url + if [ $# -eq 0 ]; then + url="https://text.npr.org" + elif [ "$1" = "npr" ]; then + url="https://text.npr.org" + elif [ "$1" = "cnn" ]; then + url="https://lite.cnn.io/en" + else + url=$1 + fi + torify w3m "$url" +} + + +## web services +alias youtube-dl='youtube-dl -f bestvideo+bestaudio/best --all-subs --embed-subs' +weather() { curl "wttr.in/?m"; } +transfer() { # use transfer.sh to share files over the net + if [ $# -eq 0 ]; then + echo -e "No arguments specified. Usage: transfer.sh <file>" + return 1 + fi + tmpfile=$( mktemp -t transferXXX ) + if tty -s; then + basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g') + curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" \ + >> "$tmpfile" + else + curl --progress-bar --upload-file "-" "https://transfer.sh/$1" \ + >> "$tmpfile" + fi + cat "$tmpfile" + rm -f "$tmpfile" + echo "" +} + +t-add() { + transmission-remote --add --download-dir "$PWD" --encryption-required "$@" +} +t-list() { + transmission-remote --list +} +t-stop() { + transmission-remote --torrent "$@" --stop +} +t-stop-idle() { + for id in $(t-list | grep Done | grep Idle | awk '{ print $1 }' | tr '\n' ','); do + t-stop "$id" + done +} +t-remove() { + transmission-remote --torrent "$@" --remove +} +t-remove-all() { + transmission-remote -tall --remove +} + +m-all-sl() { + for d in ~/code/dotfiles/lib/{dwm,slstatus,st,surf,tabbed}; do + echo + echo "## Building $d" + (cd "$d" && make clean && make install) + done +} + +gcagp-all-sl() { + msg="Update color scheme" + read -r "input?commit message [$msg]: " + msg="${input:-$msg}" + for d in ~/code/dotfiles/lib/{dwm,slstatus,st,surf,tabbed}; do + cd "$d" && \ + git commit --all -m "$msg" --verbose --gpg-sign && git push; + cd - || return + done +} + +[ -f ~/.shortcuts ] && source ~/.shortcuts diff --git a/links/.compton.conf b/.compton.conf diff --git a/links/.config/awesome/rc.lua b/.config/awesome/rc.lua diff --git a/links/.config/bspwm/bspwmrc b/.config/bspwm/bspwmrc diff --git a/links/.config/bspwm/panel/panel b/.config/bspwm/panel/panel diff --git a/links/.config/bspwm/panel/panel_bar b/.config/bspwm/panel/panel_bar diff --git a/links/.config/bspwm/panel/panel_colors b/.config/bspwm/panel/panel_colors diff --git a/links/.config/dunst/dunstrc b/.config/dunst/dunstrc diff --git a/links/.config/dwb/keys b/.config/dwb/keys diff --git a/links/.config/dwb/searchengines b/.config/dwb/searchengines diff --git a/links/.config/dwb/settings b/.config/dwb/settings diff --git a/links/.config/dwb/userscripts/wget b/.config/dwb/userscripts/wget diff --git a/links/.config/dwb/userscripts/youtube-mplayer b/.config/dwb/userscripts/youtube-mplayer diff --git a/links/.config/feh/keys b/.config/feh/keys diff --git a/links/.config/fffs/plugins-zsh b/.config/fffs/plugins-zsh diff --git a/links/.config/firejail/signal-desktop.profile b/.config/firejail/signal-desktop.profile diff --git a/links/.config/firejail/signal-scli.profile b/.config/firejail/signal-scli.profile diff --git a/links/.config/firejail/surf.config b/.config/firejail/surf.config diff --git a/links/.config/gopass/config.yml b/.config/gopass/config.yml diff --git a/links/.config/i3/config b/.config/i3/config diff --git a/links/.config/i3/i3blocks b/.config/i3/i3blocks diff --git a/links/.config/i3/i3scripts/i3battery b/.config/i3/i3scripts/i3battery diff --git a/links/.config/i3/i3scripts/i3cpu b/.config/i3/i3scripts/i3cpu diff --git a/links/.config/i3/i3scripts/i3date b/.config/i3/i3scripts/i3date diff --git a/links/.config/i3/i3scripts/i3disk b/.config/i3/i3scripts/i3disk diff --git a/links/.config/i3/i3scripts/i3internet b/.config/i3/i3scripts/i3internet diff --git a/links/.config/i3/i3scripts/i3layout b/.config/i3/i3scripts/i3layout diff --git a/links/.config/i3/i3scripts/i3mail b/.config/i3/i3scripts/i3mail diff --git a/links/.config/i3/i3scripts/i3mem b/.config/i3/i3scripts/i3mem diff --git a/links/.config/i3/i3scripts/i3mpd b/.config/i3/i3scripts/i3mpd diff --git a/links/.config/i3/i3scripts/i3mpdupdate b/.config/i3/i3scripts/i3mpdupdate diff --git a/links/.config/i3/i3scripts/i3news b/.config/i3/i3scripts/i3news diff --git a/links/.config/i3/i3scripts/i3pacman b/.config/i3/i3scripts/i3pacman diff --git a/links/.config/i3/i3scripts/i3torrent b/.config/i3/i3scripts/i3torrent diff --git a/links/.config/i3/i3scripts/i3volume b/.config/i3/i3scripts/i3volume diff --git a/links/.config/i3/i3scripts/i3weather b/.config/i3/i3scripts/i3weather diff --git a/links/.config/i3/status b/.config/i3/status diff --git a/links/.config/kitty/kitty.conf b/.config/kitty/kitty.conf diff --git a/links/.config/luakit/binds.lua b/.config/luakit/binds.lua diff --git a/links/.config/luakit/globals.lua b/.config/luakit/globals.lua diff --git a/links/.config/luakit/modes.lua b/.config/luakit/modes.lua diff --git a/links/.config/luakit/rc.lua b/.config/luakit/rc.lua diff --git a/links/.config/luakit/theme.lua b/.config/luakit/theme.lua diff --git a/links/.config/luakit/webview.lua b/.config/luakit/webview.lua diff --git a/links/.config/luakit/window.lua b/.config/luakit/window.lua diff --git a/links/.config/mimeapps.list b/.config/mimeapps.list diff --git a/links/.config/mpd/mpd.conf b/.config/mpd/mpd.conf diff --git a/links/.config/mps-youtube/config b/.config/mps-youtube/config Binary files differ. diff --git a/links/.config/mpv/mpv.conf b/.config/mpv/mpv.conf diff --git a/links/.config/newsboat/config b/.config/newsboat/config diff --git a/links/.config/newsboat/urls b/.config/newsboat/urls diff --git a/links/.config/nnn/copy-selection-to-clipboard b/.config/nnn/copy-selection-to-clipboard diff --git a/links/.config/nnn/fzf-edit b/.config/nnn/fzf-edit diff --git a/links/.config/nnn/fzf-open b/.config/nnn/fzf-open diff --git a/links/.config/nnn/open-images b/.config/nnn/open-images diff --git a/links/.config/nnn/unpack b/.config/nnn/unpack diff --git a/links/.config/nvim/init.vim b/.config/nvim/init.vim diff --git a/links/.config/openbox/autostart b/.config/openbox/autostart diff --git a/links/.config/openbox/menu.xml b/.config/openbox/menu.xml diff --git a/links/.config/openbox/rc.xml b/.config/openbox/rc.xml diff --git a/links/.config/ranger/commands.py b/.config/ranger/commands.py diff --git a/links/.config/ranger/luke_ranger_readme.md b/.config/ranger/luke_ranger_readme.md diff --git a/links/.config/ranger/rc.conf b/.config/ranger/rc.conf diff --git a/links/.config/ranger/rifle.conf b/.config/ranger/rifle.conf diff --git a/links/.config/ranger/scope.sh b/.config/ranger/scope.sh diff --git a/links/.config/rofi/config b/.config/rofi/config diff --git a/links/.config/surfraw/conf b/.config/surfraw/conf diff --git a/links/.config/surfraw/elvi/ddg b/.config/surfraw/elvi/ddg diff --git a/links/.config/sxhkd/sxhkdrc b/.config/sxhkd/sxhkdrc diff --git a/links/.config/sxiv/exec/key-handler b/.config/sxiv/exec/key-handler diff --git a/links/.config/uzbl/config b/.config/uzbl/config diff --git a/links/.config/uzbl/config-default b/.config/uzbl/config-default diff --git a/links/.config/uzbl/style.css b/.config/uzbl/style.css diff --git a/links/.config/xmoto/config.dat b/.config/xmoto/config.dat diff --git a/links/.config/zathura/zathurarc b/.config/zathura/zathurarc diff --git a/links/.conkyrc b/.conkyrc diff --git a/links/.ctags b/.ctags diff --git a/links/.emoji b/.emoji diff --git a/links/.festivalrc b/.festivalrc diff --git a/links/.gitconfig b/.gitconfig diff --git a/.gitignore b/.gitignore @@ -1,3 +0,0 @@ -tags -.DS_Store -links/.vim/vim-plugs diff --git a/.gitmodules b/.gitmodules @@ -1,5 +1,5 @@ [submodule "links/.weechat/python/weechat-vimode"] - path = links/.weechat/python/weechat-vimode + path = .weechat/python/weechat-vimode url = https://github.com/anders-dc/weechat-vimode [submodule "dwm"] path = lib/dwm diff --git a/links/.imapfilter/adamsgaard.lua b/.imapfilter/adamsgaard.lua diff --git a/links/.imapfilter/noaa.lua b/.imapfilter/noaa.lua diff --git a/links/.imapfilter/riseup.lua b/.imapfilter/riseup.lua diff --git a/links/.inputrc b/.inputrc diff --git a/links/.ipython/profile_default/ipython_config.py b/.ipython/profile_default/ipython_config.py diff --git a/links/.kwm/kwmrc b/.kwm/kwmrc diff --git a/links/.local/share/applications/surf-usercreated-1.desktop b/.local/share/applications/surf-usercreated-1.desktop diff --git a/links/.locale b/.locale diff --git a/links/.mailcap b/.mailcap diff --git a/links/.msmtprc b/.msmtprc diff --git a/links/.mutt/cert.pem b/.mutt/cert.pem diff --git a/links/.mutt/colors b/.mutt/colors diff --git a/links/.mutt/colors2 b/.mutt/colors2 diff --git a/links/.mutt/muttrc b/.mutt/muttrc diff --git a/links/.mutt/offlineimap-password-store.py b/.mutt/offlineimap-password-store.py diff --git a/links/.mutt/offlineimap.py b/.mutt/offlineimap.py diff --git a/links/.mutt/view_attachment.sh b/.mutt/view_attachment.sh diff --git a/links/.ncmpcpp/bindings b/.ncmpcpp/bindings diff --git a/links/.ncmpcpp/config b/.ncmpcpp/config diff --git a/links/.notmuch-config b/.notmuch-config diff --git a/links/.offlineimaprc b/.offlineimaprc diff --git a/links/.profile b/.profile diff --git a/links/.scimrc b/.scimrc diff --git a/links/.signature b/.signature diff --git a/links/.spacemacs b/.spacemacs diff --git a/links/.surf/script.js b/.surf/script.js diff --git a/links/.taskrc b/.taskrc diff --git a/links/.tmux.conf b/.tmux.conf diff --git a/links/.tmuxinator/article2.yml b/.tmuxinator/article2.yml diff --git a/links/.tmuxinator/cosmo.yml b/.tmuxinator/cosmo.yml diff --git a/links/.tmuxinator/dev.yml b/.tmuxinator/dev.yml diff --git a/links/.tmuxinator/tmuxinator.bash b/.tmuxinator/tmuxinator.bash diff --git a/links/.tmuxinator/tmuxinator.zsh b/.tmuxinator/tmuxinator.zsh diff --git a/links/.tmuxinator/tutorial.yml b/.tmuxinator/tutorial.yml diff --git a/links/.tmuxinator/utility.yml b/.tmuxinator/utility.yml diff --git a/links/.urlview b/.urlview diff --git a/links/.vim/UltiSnips/html.snippets b/.vim/UltiSnips/html.snippets diff --git a/links/.vim/UltiSnips/mail.snippets b/.vim/UltiSnips/mail.snippets diff --git a/links/.vim/UltiSnips/markdown.snippets b/.vim/UltiSnips/markdown.snippets diff --git a/links/.vim/UltiSnips/tex.snippets b/.vim/UltiSnips/tex.snippets diff --git a/links/.vim/colors/adbasic.vim b/.vim/colors/adbasic.vim diff --git a/.vim/colors/tender.vim b/.vim/colors/tender.vim @@ -0,0 +1 @@ +../vim-plugs/tender/colors/tender.vim+ \ No newline at end of file diff --git a/links/.vim/ftdetect/arduino.vim b/.vim/ftdetect/arduino.vim diff --git a/links/.vim/ftdetect/cuda.vim b/.vim/ftdetect/cuda.vim diff --git a/links/.vim/ftdetect/markdown.vim b/.vim/ftdetect/markdown.vim diff --git a/links/.vim/ftdetect/qgislayer.vim b/.vim/ftdetect/qgislayer.vim diff --git a/links/.vim/ftplugin/binary.vim b/.vim/ftplugin/binary.vim diff --git a/links/.vim/ftplugin/fortran.vim b/.vim/ftplugin/fortran.vim diff --git a/links/.vim/ftplugin/gitcommit.vim b/.vim/ftplugin/gitcommit.vim diff --git a/links/.vim/ftplugin/mail.vim b/.vim/ftplugin/mail.vim diff --git a/links/.vim/ftplugin/markdown.vim b/.vim/ftplugin/markdown.vim diff --git a/links/.vim/ftplugin/python.vim b/.vim/ftplugin/python.vim diff --git a/links/.vim/ftplugin/startify.vim b/.vim/ftplugin/startify.vim diff --git a/.vim/ftplugin/tex.vim b/.vim/ftplugin/tex.vim @@ -0,0 +1,41 @@ +augroup latex_options + + let g:vimtex_quickfix_latexlog = { + \ 'overfull' : 0, + \ 'underfull' : 0} + + " customize what is concealed in LaTeX documents: + " a = conceal accents/ligatures + " d = conceal delimiters + " g = conceal Greek + " m = conceal math symbols + " s = conceal superscripts/subscripts + let g:tex_conceal="agm" + + NoMatchParen " disable paranthesis matching for faster performance + + " use latexmk as make program for continuous compilation + "setlocal makeprg=latexmk\ -pdf\ % + setlocal makeprg=latexmk\ -lualatex\ % + + " or run in tmux pane: + nnoremap <leader>p :!tmux new-window -a -n "latexmk" "latexmk -pdf -pvc %" \; select-window -l<cr><cr> + + " disable continuous and slow chktex linting + let g:ale_lint_on_text_changed = 'never' + let g:ale_lint_on_enter = 0 + + setlocal commentstring=%\ %s + +augroup END + +augroup latex_typography + call pencil#init({'wrap': 'soft', 'textwidth': 80, 'conceallevel': 0}) + setlocal spell spl=en_us + setlocal fdo+=search + setlocal list + setlocal formatoptions=alw2qt " automatically reflow paragraphs + IndentLinesDisable + AdVIMsorEnable " detect weasel words, use of passive voice, word duplicates + "DittoOn +augroup END diff --git a/.vim/ftplugin/yaml.vim b/.vim/ftplugin/yaml.vim @@ -0,0 +1,23 @@ +augroup yaml_config + + " Inspired by Ian Young's script + setlocal autoindent shiftwidth=2 expandtab + setlocal indentexpr=GetYamlIndent() + setlocal indentkeys=o,O,*<Return>,!^F + + function! GetYamlIndent() + let lnum = v:lnum - 1 + if lnum == 0 + return 0 + endif + let line = substitute(getline(lnum),'\s\+$','','') + let indent = indent(lnum) + let increase = indent + &sw + if line =~ ':$' + return increase + else + return indent + endif + endfunction + +augroup END diff --git a/.vim/plugin/00-general.vim b/.vim/plugin/00-general.vim @@ -0,0 +1,40 @@ +set autoread " reload files when changed on disk +set backspace=2 " fix broken backspace in some setups +set backupcopy=yes " see :help crontab +set clipboard=unnamed " use system clipboard +set dictionary+=/usr/share/dict/words " word completion using Ctrl-x Ctrl-k +set expandtab " use the appropriate number of spaces for <Tab> +set go+=c " do not show popups in gui +set hlsearch " highlight search matches +set ignorecase " case-insensitive search +set incsearch " search as you type +set laststatus=2 " always show the statusline +set lbr " break lines between words +set list " rendering of invisible characters +set listchars=tab:▸\ ,eol:¬ " Use symbols for tab and end-of-line +set nojoinspaces " disable double spaces after periods +set pastetoggle=<F2> " toggle paste mode +set scrolloff=3 " show context above-below cursorline +set shiftwidth=4 " width for autoindents +set smartcase " case-sensitive search if any caps +set splitright " new vertical splits on the right side +set tabstop=4 " number of spaces for tab +set textwidth=80 " default line width in number of characters +set wildmenu " show a navigable menu for tab completion +set wildmode=longest,list,full + +" specify mutt aliases path, autocomplete aliases with @@ in insert mode +let g:mutt_aliases_file = '~/.mutt/aliases' + +" split size for :Lex[plore] and :Hex[plore]. Percentage when positive, line/col +" number when negative +let g:netrw_winsize = 20 + +" use faster :grep alternatives when available +if executable("rg") + set grepprg=rg\ --vimgrep\ --no-heading + set grepformat=%f:%l:%c:%m,%f:%l:%m +elseif executable("ag") + set grepprg=ag\ --nogroup\ --nocolor\ --ignore-case\ --column + set grepformat=%f:%l:%c:%m,%f:%l:%m +endif diff --git a/.vim/plugin/appearance.vim b/.vim/plugin/appearance.vim @@ -0,0 +1,135 @@ +" terminal colors +"set t_Co=16 +"set t_Co=256 + +" highlight 81st column +set colorcolumn=+1 + +function! ColorSchemeTweaks() abort + + highlight ColorColumn ctermbg=7 + + highlight Normal cterm=NONE ctermfg=NONE ctermbg=NONE + highlight Search cterm=NONE ctermfg=0 ctermbg=2 + highlight MatchParen cterm=NONE ctermfg=255 ctermbg=199 + + " tab, nbsp, trail + highlight SpecialKey ctermfg=7 guifg=#555555 + + " eol, extends, precedes + highlight NonText ctermfg=7 guifg=#555555 + + " split divider appearance + highlight VertSplit ctermfg=7 guifg=#555555 ctermbg=15 term=NONE + + " hide end-of-buffer tilde symbols + highlight EndOfBuffer cterm=NONE ctermfg=0 ctermbg=NONE + +endfunction + +augroup ColorSchemeCmds + autocmd ColorScheme * call ColorSchemeTweaks() +augroup end + +augroup GVimTweaks + if has("gui_running") + set guioptions-=T " no toolbar + set guioptions-=m " no menubar + set guioptions-=r " no right-hand scroll bar + set guioptions-=L " no left-hand scroll bar + if has("gui_gtk2") || has("gui_gtk3") + set guifont=Pragmata\ Pro\ 10 + elseif has("gui_macvim") + set guifont=Menlo\ Regular:h14 + elseif has("gui_win32") + "set guifont=Consolas:h11:cANSI + set guifont=PragmataPro:h11 + endif + endif +augroup end + +"colorscheme tender +colorscheme adbasic + +" Show syntax highlighting groups for word under cursor +nnoremap <C-S-P> :call <SID>SynStack()<CR> +function! <SID>SynStack() + if !exists("*synstack") + return + endif + echo map(synstack(line('.'), col('.')), 'synIDattr(v:val, "name")') +endfunc + +augroup AleAppearance + let g:ale_sign_error = '✖' + let g:ale_sign_warning = '⚠' + + highlight ALEErrorSign ctermbg=NONE ctermfg=Red + highlight ALEWarningSign ctermbg=NONE ctermfg=Yellow +augroup end + +" statusline helper functions +function! StatuslineLinterWarnings() abort + let l:counts = ale#statusline#Count(bufnr('')) + let l:all_errors = l:counts.error + l:counts.style_error + let l:all_non_errors = l:counts.total - l:all_errors + return l:all_non_errors == 0 ? '' : printf(' %d ⚠ ', all_non_errors) +endfunction +" +function! StatuslineLinterErrors() abort + let l:counts = ale#statusline#Count(bufnr('')) + let l:all_errors = l:counts.error + l:counts.style_error + let l:all_non_errors = l:counts.total - l:all_errors + return l:all_errors == 0 ? '' : printf(' %d ✖', all_errors) +endfunction + +function! StatuslineLinterOK() abort + let l:counts = ale#statusline#Count(bufnr('')) + let l:all_errors = l:counts.error + l:counts.style_error + let l:all_non_errors = l:counts.total - l:all_errors + return l:counts.total == 0 ? '✓' : '' +endfunction + +augroup StatuslineConfig + + " define 3 custom highlight groups for statusline coloring + " highlight User1 ctermfg=252 guifg=#d0d0d0 ctermbg=240 guibg=#585858 + " highlight User2 ctermfg=247 guifg=#969696 ctermbg=240 guibg=#585858 + " highlight User3 ctermbg=244 guibg=#808080 ctermfg=238 guifg=#444444 + " highlight User4 ctermfg=252 guifg=#d0d0d0 ctermbg=238 guibg=#444444 + " highlight User5 ctermfg=252 guifg=#d0d0d0 ctermbg=238 guibg=#444444 + " highlight User6 ctermfg=238 guifg=#444444 ctermbg=203 guibg=#e5786d + " highlight User7 ctermfg=238 guifg=#444444 ctermbg=173 guibg=#e5786d + highlight User1 ctermfg=NONE guifg=#d0d0d0 ctermbg=NONE guibg=#585858 + highlight User2 ctermfg=NONE guifg=#969696 ctermbg=NONE guibg=#585858 + highlight User3 ctermbg=NONE guibg=#808080 ctermfg=NONE guifg=#444444 + highlight User4 ctermfg=NONE guifg=#d0d0d0 ctermbg=NONE guibg=#444444 + + " empty statusline and populate later + set statusline= + + " left + set statusline+=%1* " set User1 color + set statusline+=\%t\ " tail of filename + set statusline+=%4* " set User4 color + set statusline+=\ %h%w%m%r\ " flags for help file, preview, modified, R/O + set statusline+=%#LineNr# " set default background + + " center spacing + set statusline+=%= " add separation between left and right items + + " right + set statusline+=%4* " set background color + if &rtp =~ 'ale' + set statusline+=%7*%{StatuslineLinterWarnings()}%4* " ALE warnings + set statusline+=%6*%{StatuslineLinterErrors()}%4* " ALE errors + set statusline+=%{StatuslineLinterOK()} " ALE ok + endif + set statusline+=%2* " set User2 color + if &rtp =~ 'vim-line-no-indicator' + set statusline+=\ %{LineNoIndicator()}\ " show position w. single char + endif + set statusline+=%3* " set User3 color + set statusline+=\%2l:%-2c\ " line and column view + +augroup END diff --git a/.vim/plugin/correct.vim b/.vim/plugin/correct.vim @@ -0,0 +1,21 @@ +let user_correct_dict = { + \ 'Anders': ['ANders'], + \ 'anders@adamsgaard.dk': ['@@'], + \ 'https://adamsgaard.dk': ['adweb'], + \ } + +augroup litecorrect + autocmd! + autocmd FileType mail,markdown,tex call litecorrect#init(user_correct_dict) +augroup END + +augroup danish_symbols + " escape any of these by pressinv C-v before inserting the character + inoremap AE æ + inoremap OE ø + inoremap AA å +augroup END + +augroup abbreviations + iabbrev ssig -- <cr>Anders Damsgaard, Ph.D.<cr>https://adamsgaard.dk +augroup END diff --git a/.vim/plugin/keybinds.vim b/.vim/plugin/keybinds.vim @@ -0,0 +1,227 @@ +""" Keyboard shortcuts + +" Save with ZX +nnoremap ZX :w<CR> + +" use space instead of \ as leader +let mapleader="\<Space>" + +" Shortcut to reload .vimrc and ~/.vim/plugin/*.vim +nnoremap <leader>R :source $MYVIMRC<CR>:runtime! plugin/*.vim<CR>:echo "Configuration reloaded"<CR> + +" toggle distraction-free editing +nnoremap <leader>y :set nolist<CR>:Goyo<CR> +nnoremap <leader>Y :set nolist<CR>:Goyo!<CR>:source $MYVIMRC<CR> +"nmap <leader>Y :set nolist<CR>:Goyo!<CR>:source $MYVIMRC<CR> + +nnoremap <Leader>w :w<CR> +nnoremap <Leader>W :wa<CR> +nnoremap <Leader>q :q<CR> +nnoremap <leader>Q :qa<CR> +nnoremap <Leader>x :x<CR> + +" Jump to previous buffer +nnoremap <leader><tab> :e#<CR> + +" toggle spelling +nnoremap <leader>s :set spell!<CR> + +" toggle line numbering +nnoremap <leader>N :set number!<CR> + +" toggle relative line numbering +nnoremap <leader>n :set relativenumber!<CR> + +" toggle cursorline/column +"nnoremap <leader>c :set cursorline!<CR>:set cursorcolumn!<CR> + +" netrw +nnoremap <leader>d :Lex<CR> +nnoremap <leader>h :Hex<CR> + +" Toggle TAB and EOL symbols +"nnoremap <leader>l :set list!<CR> + +nnoremap <leader>e :e +nnoremap <leader>% :vsplit +nnoremap <leader>" :split + +" shortcuts to commonly used files +nnoremap <leader>CC :e $MYVIMRC<CR> +nnoremap <leader>CO :e ~/.vim/plugin/ +nnoremap <leader>CK :e ~/.vim/plugin/keybinds.vim<CR> +nnoremap <leader>CA :e ~/.vim/plugin/appearance.vim<CR> +nnoremap <leader>CG :e ~/.vim/plugin/00-general.vim<CR> +nnoremap <leader>CP :e ~/.vim/plugins.vim<CR> +nnoremap <leader>T :e ~/doc/todo.md<CR> +nnoremap <leader>B :e ~/articles/own/BIB.bib<CR> + +nnoremap <leader>r :ScholarRef + +" insert date and time +nnoremap <leader>D :read !date +"\# \%Y-\%m-\%d \%T \%Z (\%z UTC)"<CR> + +" job execution +nnoremap <leader>m :Make<CR> +nnoremap <leader>M :Make!<CR> +nnoremap <leader>! :Start! +nnoremap <leader>c :Copen<CR> + +" toggle x mark in checklist fields +nnoremap <leader>X :s/\[[x ]\]/\=submatch(0) == '[x]' ? '[ ]': '[x]'/<CR>:noh<CR> + +" toggle view of completed items in todo (using vim-foldsearch) +nnoremap <leader>u :Fp ^- \[ \]<CR> +nnoremap <leader>U :Fe<CR> + +if exists(':tnoremap') + " escape from terminal mode + tnoremap <Esc> <C-\><C-n> + + " send escape to terminal + tnoremap <M-[> <Esc> + tnoremap <C-v><Esc> <Esc> + + " navigate away from terminals + tnoremap <C-h> <C-\><C-n><C-w>h + tnoremap <C-j> <C-\><C-n><C-w>j + tnoremap <C-k> <C-\><C-n><C-w>k + tnoremap <C-l> <C-\><C-n><C-w>l +end + +" launch terminal in current window +"nnoremap <leader><CR> :terminal bash<CR> +nnoremap <leader><CR> :terminal<CR> + +if exists(':TmuxNavigateLeft') + let g:tmux_navigator_no_mappings = 1 + nnoremap <silent> <C-h> :TmuxNavigateLeft<CR> + nnoremap <silent> <C-j> :TmuxNavigateDown<CR> + nnoremap <silent> <C-k> :TmuxNavigateUp<CR> + nnoremap <silent> <C-l> :TmuxNavigateRight<CR> +end + +" equal split size +nnoremap <leader>= <C-w>= + +" bindings to git cmd +"nmap <leader>g :Start git commit -a -v -S<CR> +"nmap <leader>G :Start git commit -a -v -S && git push<CR> + +" bindings to fugitive +nnoremap <leader>ga :Gwrite<CR> +nnoremap <leader>gm :Gmove +nnoremap <leader>gb :Gblame<CR> +nnoremap <leader>gw :Gbrowse<CR> +nnoremap <leader>gs :Gstatus<CR> +nnoremap <leader>gc :Gcommit -v -S<CR> +nnoremap <leader>gp :Gpush<CR> +nnoremap <leader>gP :Gpull<CR> + +" Use home row keys as Esc +inoremap jk <Esc> +inoremap lkj <Esc>:write<CR> + +" Improve navigation on wrapped lines +"nnoremap j gj +"nnoremap k gk + +" Disable arrow keys +noremap <Left> <Nop> +noremap <Right> <Nop> +noremap <Up> <Nop> +noremap <Down> <Nop> +inoremap <Left> <Nop> +inoremap <Right> <Nop> +inoremap <Up> <Nop> +inoremap <Down> <Nop> + +" Update ctags +"nnoremap <leader>c :Start ctags -R --python-kinds=-i --langmap=c++:.cu,c++:.cuh .<CR> + +" file search +if executable("rg") + command! -bang -nargs=* Rg + \ call fzf#vim#grep( + \ 'rg --column --line-number --no-heading --color=always --ignore-case '.shellescape(<q-args>), 1, + \ <bang>0 ? fzf#vim#with_preview('up:60%') + \ : fzf#vim#with_preview('right:50%:hidden', '?'), + \ <bang>0) + nnoremap <Leader>a :Rg<CR> +elseif executable("ag") + nnoremap <Leader>a :Ag<CR> +end + +" using fzf.vim +if exists(':Buffers') + nnoremap , :Buffers<CR> +else + nnoremap , :ls<CR>:buffer<Space> +end +nnoremap <leader>o :History<CR> +nnoremap <leader>f :Files<CR> +nnoremap <leader>F :GFiles<CR> +nnoremap <leader>l :Lines<CR> +nnoremap <leader>L :BLines<CR> +nnoremap <leader>t :Tags<CR> + +" Copy and paste to system clipboard with <Space>v and <Space>y +xnoremap <Leader>y "+y +xnoremap <Leader>d "+d +nnoremap <Leader>p "+p +nnoremap <Leader>P "+P +xnoremap <Leader>v "+p +xnoremap <Leader>V "+P + +" align things into columns interactively +xnoremap <silent> <Enter> :EasyAlign<cr> +" Start interactive EasyAlign in visual mode (e.g. vipga) +xnoremap ga <Plug>(EasyAlign) +" Start interactive EasyAlign for a motion/text object (e.g. gaip) +nnoremap ga <Plug>(EasyAlign) + +nnoremap <leader>S :Startify<cr> +let g:startify_custom_header = + \ map(split(system('fortune -s | cowthink'), '\n'), '" ".v:val') + \ + ['',''] + +" lookup word under cursor, dismiss results with q +nnoremap <leader>J :OnlineThesaurusCurrentWord<CR> + +" ALE navigation +nnoremap <silent> [W :ALEFirst<cr> +nnoremap <silent> [w :ALEPreviousWrap<cr> +nnoremap <silent> ]w :ALENextWrap<cr> +nnoremap <silent> ]W :ALELast<cr> + +" cycle through Wordy's writing dictionaries +nnoremap <silent> ]d :NextWordy<cr> +nnoremap <silent> [d :PrevWordy<cr> + +" Add completion bindings (cycle with C-n, C-p), see :h ins-completion +" <C-x><C-l>: while line +" <C-x><C-n>: keywords in current file +" <C-x><C-i>: keywords in current and included files +" <C-x><C-k>: keywords in dictionary (:set dictionary) +" <C-x><C-t>: keywords in thesaurus (not functional) +" <C-x><C-]>: tags +" <C-x><C-f>: file names +" <C-x><C-d>: definitions or macros +" <C-x><C-v>: vim command-line +" <C-x><C-v>: omni completion +" <C-x>s: spelling suggestions +" Other: +" <C-x><C-u>: emoji +" <C-x><C-z>: unicode + +" janko-m/vim-test +" in a test file run tests nearest to the cursor otherwise the last nearest test +nnoremap <silent> t<C-n> :TestNearest<CR> +" in a test file run all tests +nnoremap <silent> t<C-f> :TestFile<CR> +" run entire test suite +nnoremap <silent> t<C-s> :TestSuite<CR> +" run last test +nnoremap <silent> t<C-l> :TestLast<CR> +" visit the test file from the last test +nnoremap <silent> t<C-g> :TestVisit<CR> diff --git a/.vim/plugins.vim b/.vim/plugins.vim @@ -0,0 +1,171 @@ +""""" PLUGIN SOURCES """"""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +call plug#begin('~/.vim/vim-plugs') " Specify a directory for plugins + +""""" Misc """""" +Plug 'tpope/vim-unimpaired' " nav. errors with ]q, newlines with ]spc +Plug 'junegunn/vim-emoji' " autocomplete :smiley: with C-x C-u +Plug 'chrisbra/unicode.vim' " autocomplete unicode with C-x C-z +Plug 'tpope/vim-characterize' " complete info of char under cursor with ga + +""""" Appearance """""" +Plug 'drzel/vim-line-no-indicator' " show current line with single character +"Plug 'jacoborus/tender' " color scheme +Plug 'junegunn/rainbow_parentheses.vim' " colorcode paranthesis pairs +Plug 'mhinz/vim-startify' " startup screen +Plug 'embear/vim-foldsearch' " hide/show lines matching a pattern +Plug 'junegunn/goyo.vim' " distraction-free editing in prose mode +Plug 'junegunn/limelight.vim' " highlight current paragraph in goyo +Plug 'Yggdroot/indentLine' " show indentation level with vertical lines +Plug 'vim-scripts/AnsiEsc.vim' " show ANSI colors with :AnsiEsc + +"""""" File system """"""" +Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } +Plug 'junegunn/fzf.vim' " fzf commands from within vim +Plug 'ludovicchabant/vim-gutentags' " automatic tag generation +Plug 'tpope/vim-eunuch' " :SudoWrite, :Rename, :Move, etc + +"""""" Syntax checking """""" +Plug 'w0rp/ale' " asynchronous syntax check +Plug 'lukhio/adVIMsor', { 'on': 'AdVIMsorEnable' } " checks with :AdVIMsor* + +"""""" Buffer motion """""" +Plug 'christoomey/vim-tmux-navigator' " seamless tmux pane/vim window navigation +Plug 'junegunn/vim-slash' " clear highlight when moving cursor +Plug 'justinmk/vim-sneak' " move cursor s{char}{char}, use cl for sub + +" """""" Text editing """""" +Plug 'tpope/vim-surround' " modify surrounding symbols +Plug 'tpope/vim-repeat' " repeat plugin bindings with . +Plug 'tomtom/tcomment_vim' " comment line with gcc, motion with gc +Plug 'tpope/vim-abolish' " :%Subvert/facilit{y,ies}/building{,s}/g +Plug 'junegunn/vim-easy-align' " align in columns (select > return > space) +Plug 'reedes/vim-litecorrect' " autocorrect common typos +Plug 'reedes/vim-pencil' " used for line wrapping in mails + +"""""" Writing """""" +Plug 'szw/vim-dict' " query dict.org using :Dict +Plug 'junegunn/vim-online-thesaurus' " query with :OnlineThesaurusCurrentWord +Plug 'reedes/vim-wordy' " better writing with :Wordy +Plug 'dbmrq/vim-ditto' " detect duplicates with :Ditto + +"""""" Autocomplete """""" +Plug 'honza/vim-snippets' " snippets are separate from ultisnips +Plug 'SirVer/ultisnips' " complete boilerplate code + +"""""" Version control """""" +Plug 'tpope/vim-fugitive' " :Gread, :Gwrite, etc. +Plug 'tpope/vim-rhubarb' " enables fugitive's :Gbrowse for Github +Plug 'airblade/vim-gitgutter' " show line changes since last git commit + +"""""" Processes """""" +Plug 'tpope/vim-dispatch' " for asynchronous :Make +Plug 'janko-m/vim-test' " test with t<C-n>, t<C-f>, t<C-s> + +"""""" File types """""" + +" Go +Plug 'fatih/vim-go' +Plug 'nsf/gocode' + +" Julia +Plug 'JuliaLang/julia-vim' + +" Python +Plug 'davidhalter/jedi-vim' +Plug 'nvie/vim-flake8' +Plug 'vim-scripts/indentpython.vim' +"Plug 'klen/python-mode' + +" HTML/PHP/JS +Plug 'captbaritone/better-indent-support-for-php-with-html' +Plug 'pangloss/vim-javascript' + +" Markdown +Plug 'tpope/vim-markdown' + +" Mail +Plug 'vim-scripts/mutt-aliases', { 'for': 'mail' } " complete aliases w C-x C-u + +" LaTeX +Plug 'lervag/vimtex' +Plug 'anders-dc/vim-scholarref' " search bibtex refs from web + +" Vimscript +Plug 'junegunn/vader.vim' " testing framework + +" SQL +Plug 'lifepillar/pgsql.vim' " PostgreSQL highlighting and syntax +Plug 'ivalkeen/vim-simpledb' " PostgreSQL/MySQL execution from vim buffer + " add following to top of .sql file: + " -- -h localhost -U postgres -d my_database + " <Enter>: execute entire file + " <leader><Enter>: execute current block + " <Enter>: execute current visual selection + +call plug#end() " Initialize plugin system + + +""""" PLUGIN SETTINGS """""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +let g:foldsearch_disable_mappings = 1 +let g:gitgutter_map_keys = 0 + +let g:go_version_warning = 0 + +let g:sneak#label = 1 + +" better key bindings for UltiSnipsExpandTrigger +let g:UltiSnipsExpandTrigger = "<tab>" +let g:UltiSnipsJumpForwardTrigger = "<tab>" +let g:UltiSnipsJumpBackwardTrigger = "<s-tab>" +let g:UltiSnipsSnippetsDir = "~/.vim/UltiSnips" " default write path + +" vim-markdown configuration +let g:markdown_fenced_languages = ['html', 'python', 'bash=sh', 'julia', 'c', 'cpp'] +let g:markdown_syntax_conceal = 0 + +let g:limelight_conceal_ctermfg = 'gray' +let g:limelight_conceal_ctermfg = 240 +let g:goyo_width = 82 +if !exists('*s:goyo_enter') + function! s:goyo_enter() abort + silent !tmux set status off + silent !tmux list-panes -F '\#F' | grep -q Z || tmux resize-pane -Z + set noshowmode + set noshowcmd + set nolist + set scrolloff=999 + "Limelight + endfunction +end + +if !exists('*s:goyo_leave') + function! s:goyo_leave() abort + silent !tmux set status on + silent !tmux list-panes -F '\#F' | grep -q Z && tmux resize-pane -Z + Limelight! + source $MYVIMRC + endfunction +end + +augroup GoyoEvents + autocmd! User GoyoEnter nested call <SID>goyo_enter() + autocmd! User GoyoLeave nested call <SID>goyo_leave() +augroup END + +" run vim-emoji on entire document +command! -range EmojiReplace <line1>,<line2>s/:\([^:]\+\):/\=emoji#for(submatch(1), submatch(0))/g + +" disable default thesaurus bindings +let g:online_thesaurus_map_keys = 0 + +" select indentation character (:IndentLinesToggle) (¦┆│⎸▏) +"let g:indentLine_char = '┆' +let g:indentLine_char = '▏' + +" ignore .gitignore files from ctags +let g:gutentags_file_list_command = 'rg --files' + +" set postgresql syntax as default for sql files +let g:sql_type_default = 'pgsql' diff --git a/.vim/vimrc b/.vim/vimrc @@ -0,0 +1,11 @@ +" temporarily fix deprecation warning +if has('python3') + silent! python3 1 +endif + +" make sure that plugins are sourced first +if has("win32") + source ~/vimfiles/plugins.vim +else + source ~/.vim/plugins.vim +endif diff --git a/.vim/vimrc.noplugs b/.vim/vimrc.noplugs @@ -0,0 +1,8 @@ +" temporarily fix deprecation warning +if has('python3') + silent! python3 1 +endif + +set nocompatible +filetype plugin indent on +syntax enable diff --git a/.vim/vimrc.tiny b/.vim/vimrc.tiny @@ -0,0 +1,13 @@ +" Vim configuration file, in effect when invoked as "vi". The aim of this +" configuration file is to provide a Vim environment as compatible with the +" original vi as possible. Note that ~/.vimrc configuration files as other +" configuration files in the runtimepath are still sourced. +" When Vim is invoked differently ("vim", "view", "evim", ...) this file is +" _not_ sourced; /etc/vim/vimrc and/or /etc/vim/gvimrc are. + +" Debian system-wide default configuration Vim +set runtimepath=~/.vim,/var/lib/vim/addons,/usr/share/vim/vimfiles,/usr/share/vim/vim74,/usr/share/vim/vimfiles/after,/var/lib/vim/addons/after,~/.vim/after + +set compatible + +" vim: set ft=vim: diff --git a/.vimpcrc b/.vimpcrc @@ -0,0 +1,56 @@ +" Configuration of vimpc is done using vimpc commands +" these can include commands which require an mpd connection +" +" NB: Comments are very basic and must be on their own line +echo Parsing config file + +" Set the default tab +set window playlist + +" Set the windows to show at startup +set windows library,playlist + +" Stop playing music when we quit +"set stoponquit + +" A silly example of an alias +"alias smiths deleteall; findartist! The Smiths; play 1 + +" Example maps +" map the F key to change to the browse window, go to the first line and enter search mode +"map F :browse<C-M>gg/ +" map @ to switch to add next, add a song, then change back +"map @ :set add next<C-M>a:set add end<C-M> + +" Connect to a specific host using the config file +"connect somehost someport + +" Turn consume on when we connect +"consume on + +" Ensure that the database is up to date each connect +"update + +" A more complex example, When we start vimpc +" - clear the playlist +" - add all songs +" - shuffle +" - start playling +"deleteall +"addall +"shuffle +"play 1 + +" Color the statusline and tabs +"highlight status blackbg +"highlight tab blackbg +highlight status default +highlight tab default + +" Case insensitive search +set ignorecase + +" Show albums in library by default +set expand-artists + +echo Config File Complete diff --git a/.vimperator/colors/darkness2.vimp b/.vimperator/colors/darkness2.vimp @@ -0,0 +1,68 @@ +" ==Vimperator_Color_Scheme== +" name: Darkness +" ==Darkness_Colorscheme_Settings== + +"StatusLine settings +"hi StatusLine color: #ffffff; background: #000000; "font-size: 8pt; +hi StatusLine color: #ffffff; background: #000000; font-size: 8pt; +"hi StatusLineBroken color: #000000; background: #afafff; "font-size: 8pt; +"hi StatusLineSecure color: #000000; background: #afffaf; "font-size: 8pt; + +"CmdLine settings excluding Gradient +hi Normal color: #afafaf; background: #222222; +hi CmdLine background: #222222; color: #afafaf; font-size: 9pt; +hi CompDesc color: #c6c6c6; width: 50%; font-size: 9pt; +hi CompIcon width: 16px; min-width: 16px; display: inline-block; margin-right: .5ex; +hi CompItem[selected] background: #666666; color: #afafaf; +"hi CompLess text-align: center; height: 0; line-height: .5ex; padding-top: 1ex; +"hi CompMore text-align: center; height: .5ex; line-height: .5ex; margin-bottom: -.5ex; +hi CompMsg font-style: italic; margin-left: 16px; +hi CompResult width: 45%; overflow: hidden;font-size: 10pt; font-family: monospace; font-weight: normal; +hi CompTitle color: #afafaf; background: #222222; font-weight: bold; +hi CompTitle>* padding: 0 .5ex; +hi Filter font-weight: bold;color: #afafaf; + +"When using tab complete in CmdLine, line separating Title from function and description +"hi Gradient height: 1px; margin-bottom: -1px; margin-top: -1px; +"hi GradientLeft background-color: #00bbff; +"hi GradientRight background-color: #222222; + +"Used with ]f and [f +hi FrameIndicator background-color: #222222; opacity: 0.5; z-index: 999; position: fixed; top: 0; bottom: 0; left: 0; right: 0; + +hi Bell border: 0 none; background-color: #222222; +hi ErrorMsg color: #ffffff; background: red; font-weight: bold; + + +"Hint section +"hi Hint font-family: Sans; font-size: 10px; font-weight: bold; color: #f6e9e9; background-color: red; border-color: ButtonShadow; border-width: 0px; border-style: solid; padding 0px 1px 0px 1px; +hi Hint font-family: Sans; font-size: 12px; font-weight: bold; color: white; background-color: rgba(0, 0, 0, 0.5); border: solid 1px LightGray; +hi Hint::after content: attr(number); +hi HintActive background: blue; color: #f6e9e9; +hi HintElem background-color: #222222; color: #f6e9e9; +hi HintImage opacity: .5; + +"Other important stuff +hi InfoMsg color: #afafaf; background: #222222; +hi Message white-space: normal; min-width: 100%; padding-left: 2em; text-indent: -2em; display: block; +hi WarningMsg color: red; background: #222222; +hi ModeMsg color: #afafaf; background: #222222; "CmdLine when Not in Use +hi MoreMsg color: #afafaf; background: #222222; +hi NonText color: lightblue; min-height: 16px; padding-left: 2px; +hi Question color: #ffffff; background: #222222; font-weight: bold; +"hi Search font-size: inherit; padding: 0; color: #222222; background-color: yellow; padding: 0; +hi Function color: lightgreen; background: #222222; +hi Number color: tan; background: #222222 +hi String color: #222222; background: #afafaf; +hi Tag color: #222222; background: #afafaf; +hi Title color: #222222; background: #afafaf; font-weight: bold; +hi URL text-decoration: none; color: lightblue; background: inherit; +hi URL:hover text-decoration: underline; cursor: pointer; +hi LineNr color: #afafaf; background: #222222; + +"style -name statusbar chrome://* <<EOM +"#status-bar statusbarpanel { padding: 0 1px !important; } +"statusbarpanel > * { margin: 0 !important; padding: 0 2px 0 0 !important; } +"EOM + +"For other descriptions of each item, please see ``Styling'' section included with Vimperator diff --git a/.vimperator/colors/phallus.vimp b/.vimperator/colors/phallus.vimp @@ -0,0 +1,75 @@ +" ==Vimperator_Color_Scheme== +" name: Darkness +" ==Darkness_Colorscheme_Settings== + +"StatusLine settings +hi StatusLine color: #9a875f; background: #181512; font-size: 8pt; +"hi StatusLineBroken color: #9a875f; background: #f9f9f9; "font-size: 8pt; +"hi StatusLineSecure color: #9a875f; background: #f9f9f9; "font-size: 8pt; + +"CmdLine settings excluding Gradient +hi Normal color: #9a875f; background: #181512; +hi CmdLine background: #181512; color: #9f7155; font-size: 9pt; +hi CompDesc color: #766782; width: 50%; font-size: 9pt; +hi CompIcon width: 0px; min-width: 0px; visibility: hidden; display: inline-block; margin-right: .5ex; +hi CompItem[selected] background: #181512; color: #D6C3B6; +"hi CompLess text-align: center; height: 0; line-height: .5ex; padding-top: 1ex; +"hi CompMore text-align: center; height: .5ex; line-height: .5ex; margin-bottom: -.5ex; +hi CompMsg font-style: italic; margin-left: 12px; +hi CompResult width: 45%; overflow: hidden;font-size: 10pt; font-family: lemon; font-weight: normal; +hi CompTitle color: #646a6d; background: #181512; +hi CompTitle>* padding: 0 .5ex; +hi Filter color: #afafaf; + +"When using tab complete in CmdLine, line separating Title from function and description +"hi Gradient height: 1px; margin-bottom: -1px; margin-top: -1px; +"hi GradientLeft background-color: #181512; +"hi GradientRight background-color: #181512; + +"Used with ]f and [f +hi FrameIndicator background-color: #3f3f3f; opacity: 0.5; z-index: 999; position: fixed; top: 0; bottom: 0; left: 0; right: 0; + +hi Bell border: 0 none; background-color: #181512; +hi ErrorMsg color: #1c1c1c; background: #181512; + + +"Hint section +"hi Hint font-family: Sans; font-size: 10px; color: #f6e9e9; background-color: red; border-color: ButtonShadow; border-width: 0px; border-style: solid; padding 0px 1px 0px 1px; +hi Hint font-family: lemon; font-size: 10px; color: white; background-color: rgba(0, 0, 0, 0.5); border: solid 1px black; +hi Hint::after content: attr(number); +hi HintActive background-color: rgba(0,0,0,0.5); +hi HintElem 0; +hi HintImage opacity: .5; + +"Other important stuff +hi InfoMsg color: #1c1c1c; background: #181512; +hi Message white-space: normal; min-width: 100%; padding-left: 2em; text-indent: -2em; display: block; +hi WarningMsg color: 1c1c1c; background: #181512; +hi ModeMsg color: #1c1c1c; background: #181512; "CmdLine when Not in Use +hi MoreMsg color: #1c1c1c; background: #181512; +hi NonText color: lightblue; min-height: 16px; padding-left: 2px; +hi Question color: #1c1c1c; background: #181512; +"hi Search font-size: inherit; padding: 0; color: #eab9d5; background-color: black; padding: 0; +hi Function color: #9a875f; background: #181512; +hi Number color: #9a875f; background: #181512; +hi String color: #9a875f; background: #181512; +hi Tag color: #9a875f; background: #181512; +hi Title color: #1c1c1c; background: #181512; +hi URL text-decoration: none; color: lightblue; background: inherit; +hi URL:hover text-decoration: underline; cursor: pointer; +hi LineNr color: #9a875f; background: #181512; + +"style -name statusbar chrome://* <<EOM +"#status-bar statusbarpanel { padding: 0 1px !important; } +"statusbarpanel > * { margin: 0 !important; padding: 0 2px 0 0 !important; } +"EOM + +hi ContentSeparator border-top: 0px; + +"For other descriptions of each item, please see ``Styling'' section included with Vimperator + +hi CmdLine>* font-family: lemon +hi CompDesc font-family: lemon +hi CompResult font-family: lemon +hi StatusLine font-family: lemon +hi PromptText width: 0px diff --git a/.vimperatorrc b/.vimperatorrc @@ -0,0 +1,47 @@ +""" VIMPERATOR Firefox plugin configuration +" see https://github.com/mashiro/dot-files/blob/master/.vimperatorrc + +"colors darkness2 + +highlight Bell display: none; + +""" What characters to use for labeling hints (f) +" Numbers only +"set hintchars=0123456789 +" Home row +"set hintchars=hjklasdf +" Smart row +set hintchars=hjklasdfgyuiopqwertnmzxcvb +"set hintchars=hutenosa + +" Define appearance of hints (CSS) +highlight Hint font-size:150%;color:black;background-color:yellow;padding:2px; + +""" Default search engine +" Manage search engines with `:dialog searchengine` +"set defsearch=startpage +set defsearch=duckduckgo + +""" General options +set complete=slS +set newtab=all +set popups=tab +set nohlsearch +set ignorecase +set incsearch +set smartcase +set focuscontent +set visualbell +set toolbars=noaddons,nobookmarks,nomenu,nonavigation,tabs + +""" about:config +"set! general.autoScroll=false +"set! browser.tabs.closeButtons=2 +"set! mousewheel.withnokey.numlines=6 + +""" Scrolling +nnoremap j 3j +nnoremap k 3k + + +" vim: ts=2 sw=2 sts=2 fdm=marker ft=vimperator diff --git a/.w3m/bookmark.html b/.w3m/bookmark.html @@ -0,0 +1,100 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta charset="utf-8"/> +<title>Bookmarks</title> +</head> +<body> +<h1><a href="bookmarks.html">Bookmarks</a></h1> +<h2>Search</h2> +<ul> +<li><a href="https://duckduckgo.com/lite/">DuckDuckGo (https)</a> +<li><a href="https://en.wikipedia.org/wiki/Main_Page">Wikipedia (EN) Main Page</a> +<li><a href="https://wiki.archlinux.org/index.php">Arch Wiki</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>News</h2> +<ul> +<li><a href="https://text.npr.org/">NPR (text only)</a> +<li><a href="https://dr.dk/nyheder/">DR Nyheder</a> +<li><a href="https://lite.cnn.io/en">CNN (text only)</a> +<li><a href="https://www.nytimes.com/">New York Times</a> +<li><a href="https://www.bbc.com/news/science_and_environment">BBC Science &amp; Environment</a> +<li><a href="https://news.ycombinator.com/">Hacker News</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>Security</h2> +<ul> +<li><a href="https://check.torproject.org/">Tor check</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>Photography</h2> +<ul> +<li><a href="https://www.reidreviews.com/reidreviews/login.asp">Reid Reviews</a> +<li><a href="http://www.fredmiranda.com/forum/board/55">Fred Miranda: Alternative Gear &amp; Lenses</a> +<li><a href="https://www.photrio.com/forum/">Photrio</a> +<li><a href="https://www.largeformatphotography.info/forum/">Large Format Photography Forum</a> +<li><a href="https://www.photo.net/discuss/forums/film-and-processing.1822/">Photo.net - Film and Processing</a> +<li><a href="http://www.film-and-darkroom-user.org.uk/forum/fadu_front_page.php">Film and Darkroom User</a> +<li><a href="http://www.lensworkonline.com/login.php">LensWork Online</a> +<li><a href="https://luminous-landscape.com/">Luminous Landscape</a> +<li><a href="https://forum.luminous-landscape.com/">Luminous Landscape - Forum</a> +<li><a href="https://www.l-camera-forum.com/forum/216-leica-m-system/">Leica M System - Leica Forum</a> +<li><a href="https://www.rangefinderforum.com/forums/forumdisplay.php?f=226">Rangefinder Forum</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>Work</h2> +<ul> +<li><a href="https://intra.mfvm.dk/mst/Sider/Welcome.aspx">MST Intra</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>Media</h2> +<ul> +<li><a href="https://www.youtube.com/feed/subscriptions">YouTube</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>Development</h2> +<ul> +<li><a href="https://gitlab.com/GeoDataHub/">Gitlab/GeoDataHub</a> +<li><a href="https://gitlab.com/groups/GeoDataHub/-/issues">Gitlab/GeoDataHub Issues</a> +<li><a href="https://github.com/">Github</a> +<li><a href="https://gitlab.com/admesg">Gitlab/admesg</a> +<li><a href="https://github.com/anders-dc">Github/anders-dc</a> +<li><a href="https://gitlab.com/admesg/dotfiles">Gitlab/admesg/dotfiles</a> +<li><a href="https://github.com/anders-dc/sphere">Github/anders-dc/sphere</a> +<li><a href="https://github.com/anders-dc/Granular.jl">Github/anders-dc/Granular.jl</a> +<li><a href="https://travis-ci.org/anders-dc/Granular.jl">Travis-CI/anders-dc/Granular.jl</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>Local</h2> +<ul> +<li><a href="http://skoerpingskole.skoleporten.dk/sp">Skørping Skole</a> +<li><a href="http://www.skoerpingskole.dk/Fi">Skørping Skole Forældreintra</a> +<li><a href="https://rebild.inst.dk/Login.aspx?ReturnUrl=%2fUser%2fEntryPoint.aspx%3fLocation%3dIP.F&Location=IP.F">Skovbjoernen</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>Academia</h2> +<ul> +<li><a href="https://www.library.caltech.edu/journal-title-abbreviations">Journal Title Abbreviations - Caltech Library</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>Docs</h2> +<ul> +<li><a href="https://docs.julialang.org/en/latest/">Julia (latest)</a> +<li><a href="https://anders-dc.github.io/Granular.jl/latest/index.html">Granular.jl (latest)</a> +<li><a href="https://golang.org/doc/">Go Documentation</a> +<li><a href="http://mywiki.wooledge.org/BashGuide">BashGuide - Greg Wooledge's Wiki</a> +<li><a href="https://jekyllrb.com/docs/home/">Jekyll Docs</a> +<!--End of section (do not delete this comment)--> +</ul> +<h2>Weather</h2> +<ul> +<li><a href="https://servlet.dmi.dk/byvejr/servlet/byvejr_dag1?by=9520&mode=long&eps=true">DMI: Skoerping 48h</a> +<li><a href="https://servlet.dmi.dk/byvejr/servlet/byvejr?by=9520&tabel=dag3_9&eps=true">DMI: Skoerping 3-9d</a> +<li><a href="http://www.dmi.dk/vejr/maalinger/radar-nedboer/">DMI: Radar</a> +<li><a href="http://djlorenz.github.io/astronomy/lp2006/overlay/dark.html">Light Pollution Atlas 2006</a> +<!-- <li><a href="http://www.cleardarksky.com/c/AAAP1_NJkey.html?1">Clear Sky Chart - Princeton, NJ</a> --> +<!--End of section (do not delete this comment)--> +</ul> +</body> +</html> diff --git a/.w3m/config b/.w3m/config @@ -0,0 +1,139 @@ +simple_preserve_space 0 +gb18030_as_ucs 0 +strict_iso2022 1 +use_jisx0213 0 +use_jisx0212 0 +use_jisx0201k 0 +use_jisc6226 0 +use_jisx0201 0 +use_gb12345_map 0 +fix_width_conv 1 +search_conv 1 +pre_conv 0 +ucs_conv 1 +use_language_tag 1 +east_asian_width 0 +use_combining 1 +use_wide 1 +ext_halfdump 0 +follow_locale 1 +system_charset UTF-8 +auto_detect 2 +document_charset UTF-8 +display_charset UTF-8 +cookie_avoid_wrong_number_of_dots +cookie_accept_domains +cookie_reject_domains +accept_bad_cookie 0 +accept_cookie 0 +show_cookie 1 +use_cookie 1 +ssl_ca_file +ssl_ca_path /etc/ssl/certs +ssl_key_file +ssl_cert_file +ssl_verify_server 1 +ssl_forbid_method 2 +no_cache 0 +noproxy_netaddr 0 +no_proxy +ftp_proxy +https_proxy +http_proxy +use_proxy 1 +max_news 50 +nntpmode +nntpserver +dns_order 0 +meta_refresh 1 +follow_redirection 10 +default_url 1 +retry_http 1 +argv_is_url 1 +accept_media text/html, text/*;q=0.5, image/*, application/*, video/*, audio/*, zz-application/*, message/*, x-scheme-handler/*, inode/* +accept_encoding gzip, compress, bzip, bzip2, deflate +accept_language en;q=1.0 +no_referer 0 +user_agent +pre_form_file ~/.w3m/pre_form +ftppass_hostnamegen 0 +ftppasswd anonymous@ +disable_secret_security_check 0 +passwd_file ~/.w3m/passwd +use_lessopen 0 +bgextviewer 1 +extbrowser3 +extbrowser2 /Applications/Safari.app +extbrowser /usr/bin/mozilla +mailer +mailto_options 1 +editor sensible-editor +urimethodmap ~/.w3m//urimethodmap, /etc/w3m/urimethodmap +mailcap ~/.w3m/mailcap, /etc/w3m/mailcap, /etc/mailcap +mime_types ~/.w3m/mime.types, /etc/mime.types +index_file +cgi_bin +personal_document_root +document_root +keymap_file keymap +preserve_timestamp 1 +auto_uncompress 0 +decode_cte 0 +clear_buffer 1 +fixed_wheel_scroll_count 5 +relative_wheel_scroll_ratio 30 +relative_wheel_scroll 0 +reverse_mouse 0 +use_mouse 1 +ignorecase_search 1 +wrap_search 1 +mark_all_pages 0 +vi_prec_num 1 +emacs_like_lineedit 0 +mark 0 +close_tab_back 0 +confirm_qq 1 +save_hist 1 +history 10000 +use_history 1 +pagerline 10000 +visited_color magenta +visited_anchor 0 +active_color cyan +active_style 0 +bg_color terminal +mark_color cyan +form_color red +image_color green +anchor_color blue +basic_color terminal +color 1 +nextpage_topline 0 +label_topline 0 +show_srch_str 1 +show_lnum 0 +fold_line 0 +pseudo_inlines 1 +display_image 0 +view_unseenobject 1 +ignore_null_img_alt 1 +display_ins_del 1 +fold_textarea 0 +graphic_char 0 +alt_entity 0 +multicol 0 +dictcommand file:///$LIB/w3mdict.cgi +use_dictcommand 0 +dirlist_cmd file:///$LIB/dirlist.cgi +ext_dirlist 1 +display_lineinfo 0 +decode_url 0 +display_link_number 1 +display_link 1 +open_tab_dl_list 1 +open_tab_blank 0 +target_self 0 +frame 0 +pixel_per_char 10 +indent_incr 4 +tabstop 8 diff --git a/.w3m/keymap b/.w3m/keymap @@ -0,0 +1,143 @@ +# A sample of ~/.w3m/keymap (default) +# +# Ctrl : C-, ^ +# Escape: ESC-, M-, ^[ +# Space : SPC, ' ' +# Tab : TAB, ^i, ^I +# Delete: DEL, ^? +# Up : UP, ^[[A +# Down : DOWN, ^[[B +# Right : RIGHT, ^[[C +# Left : LEFT, ^[[D + +keymap C-@ MARK +keymap C-a LINE_BEGIN +keymap C-b MOVE_LEFT +keymap C-e LINE_END +keymap C-f MOVE_RIGHT +keymap C-g LINE_INFO +keymap C-h HISTORY +keymap TAB NEXT_LINK +keymap C-j GOTO_LINK +keymap C-k COOKIE +keymap C-l REDRAW +keymap C-m GOTO_LINK +keymap C-n MOVE_DOWN +keymap C-p MOVE_UP +keymap C-q CLOSE_TAB +keymap C-r ISEARCH_BACK +keymap C-s ISEARCH +keymap C-t TAB_LINK +keymap C-u PREV_LINK +keymap C-v NEXT_PAGE +keymap C-w WRAP_TOGGLE +keymap C-z SUSPEND + +keymap SPC NEXT_PAGE +keymap ! SHELL +keymap \" REG_MARK +keymap # PIPE_SHELL +keymap $ LINE_END +keymap ( UNDO +keymap ) REDO +keymap + NEXT_PAGE +keymap , LEFT +keymap - PREV_PAGE +keymap . RIGHT +keymap / SEARCH +keymap : MARK_URL +keymap ";" MARK_WORD +keymap < SHIFT_LEFT +keymap = INFO +keymap > SHIFT_RIGHT +keymap ? SEARCH_BACK +keymap @ READ_SHELL +keymap B BACK +keymap D DOWNLOAD_LIST +keymap E EDIT +keymap F FRAME +keymap G END +keymap H HELP +keymap I VIEW_IMAGE +keymap J UP +keymap K DOWN +keymap L LIST +keymap M EXTERN +keymap N SEARCH_PREV +keymap Q EXIT +keymap R RELOAD +keymap S SAVE_SCREEN +keymap T NEW_TAB +keymap U GOTO +keymap V LOAD +keymap W PREV_WORD +keymap Z CENTER_H +keymap [ LINK_BEGIN +keymap ] LINK_END +keymap \^ LINE_BEGIN +keymap a SAVE_LINK +keymap b PREV_PAGE +keymap c PEEK +keymap g BEGIN +keymap h MOVE_LEFT +keymap i PEEK_IMG +keymap j MOVE_DOWN +keymap k MOVE_UP +keymap l MOVE_RIGHT +keymap m MOUSE_TOGGLE +keymap n SEARCH_NEXT +keymap o OPTIONS +keymap q QUIT +keymap r VERSION +keymap s SELECT_MENU +keymap u PEEK_LINK +keymap v VIEW +keymap w NEXT_WORD +keymap z CENTER_V +keymap { PREV_TAB +keymap | PIPE_BUF +keymap } NEXT_TAB + +keymap M-TAB PREV_LINK +keymap M-C-j SAVE_LINK +keymap M-C-m SAVE_LINK + +keymap M-: MARK_MID +keymap M-< BEGIN +keymap M-> END +keymap M-I SAVE_IMAGE +keymap M-M EXTERN_LINK +keymap M-W DICT_WORD_AT +keymap M-a ADD_BOOKMARK +keymap M-b BOOKMARK +keymap M-c COMMAND +keymap M-e EDIT_SCREEN +keymap M-g GOTO_LINE +keymap M-k DEFINE_KEY +keymap M-l LIST_MENU +keymap M-m MOVE_LIST_MENU +keymap M-n NEXT_MARK +keymap M-o SET_OPTION +keymap M-p PREV_MARK +keymap M-s SAVE +keymap M-t TAB_MENU +keymap M-u GOTO_RELATIVE +keymap M-v PREV_PAGE +keymap M-w DICT_WORD + +keymap UP MOVE_UP +keymap DOWN MOVE_DOWN +keymap RIGHT MOVE_RIGHT +keymap LEFT MOVE_LEFT + +keymap M-[E MENU +keymap M-[L MENU +keymap M-[Z PREV_LINK + +keymap M-[1~ BEGIN +keymap M-[2~ MENU +keymap M-[4~ END +keymap M-[5~ PREV_PAGE +keymap M-[6~ NEXT_PAGE +keymap M-[28~ MENU + diff --git a/.weechat/alias.conf b/.weechat/alias.conf @@ -0,0 +1,49 @@ +# +# 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" +add = "toggletime /togglestr weechat.look.buffer_time_format!${color:240}%H${color:239}%M${color:236}%S!${color:238}%d${color:237}%m${color:240}%H${color:239}%M${color:236}%S" +AME = "allchan /me" +AMSG = "allchan /msg *" +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 merge" +WI = "whois" +WII = "whois $1 $1" +WW = "whowas" + +[completion] +MSGBUF = "%(buffers_plugins_names)" diff --git a/.weechat/aspell.conf b/.weechat/aspell.conf @@ -0,0 +1,33 @@ +# +# weechat -- aspell.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 = "ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic" +default_dict = "en" +during_search = off +enabled = on +real_time = off +suggestions = 3 +word_min_length = 2 + +[dict] + +[look] +suggestion_delimiter_dict = " / " +suggestion_delimiter_word = "," + +[option] diff --git a/.weechat/autosort.conf b/.weechat/autosort.conf @@ -0,0 +1,22 @@ +# +# weechat -- autosort.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 +# + +[sorting] +case_sensitive = off +replacements = "[["##", "#"], ["##", "#"], ["##", "#"]]" +rules = "[["core", 0], ["irc", 2], ["*", 1], ["irc.irc_raw", 0], ["irc.server", 1], ["irc.server.*.&*", 0], ["irc.server.*.#*", 1], ["irc.server.*.\\*status", 2], ["irc.server.*.&*", 0], ["irc.server.*.#*", 1], ["irc.server.*.\\*status", 2], ["irc.server.*.&*", 0], ["irc.server.*.#*", 1], ["irc.server.*.\\*status", 2]]" +signal_delay = 5 +signals = "buffer_opened buffer_merged buffer_unmerged buffer_renamed" +sort_on_config_change = on + +[v3] +helpers = "{"core_first": "${if:${buffer.full_name}!=core.weechat}", "irc_raw_last": "${if:${buffer.full_name}==irc.irc_raw}", "irc_last": "${if:${buffer.plugin.name}==irc}", "hashless_name": "${info:autosort_replace,#,,${buffer.name}}", "irc_first": "${if:${buffer.plugin.name}!=irc}", "irc_raw_first": "${if:${buffer.full_name}!=irc.irc_raw}"}" +rules = "["${core_first}", "${irc_last}", "${buffer.plugin.name}", "${irc_raw_first}", "${if:${plugin}==irc?${server}}", "${if:${plugin}==irc?${info:autosort_order,${type},server,*,channel,private}}", "${if:${plugin}==irc?${hashless_name}}", "${buffer.full_name}"]" diff --git a/.weechat/buffer_autoset.conf b/.weechat/buffer_autoset.conf @@ -0,0 +1,16 @@ +# +# weechat -- buffer_autoset.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] +instant = on +timer = 1 + +[buffer] diff --git a/.weechat/buffers.conf b/.weechat/buffers.conf @@ -0,0 +1,80 @@ +# +# weechat -- buffers.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] +current_bg = red +current_fg = lightcyan +default_bg = default +default_fg = default +hotlist_highlight_bg = default +hotlist_highlight_fg = magenta +hotlist_low_bg = default +hotlist_low_fg = white +hotlist_message_bg = default +hotlist_message_fg = yellow +hotlist_private_bg = default +hotlist_private_fg = lightgreen +none_channel_bg = default +none_channel_fg = default +number = lightgreen +number_char = lightgreen +prefix_bufname = default +queries_default_bg = default +queries_default_fg = default +queries_highlight_bg = default +queries_highlight_fg = default +queries_message_bg = default +queries_message_fg = default +suffix_bufname = default +whitelist_default_bg = default +whitelist_default_fg = default +whitelist_highlight_bg = default +whitelist_highlight_fg = default +whitelist_low_bg = default +whitelist_low_fg = default +whitelist_message_bg = default +whitelist_message_fg = default +whitelist_private_bg = default +whitelist_private_fg = default + +[look] +core_to_front = off +detach = 0 +detach_buffer_immediately = "" +detach_buffer_immediately_level = 2 +detach_display_window_number = off +detach_displayed_buffers = on +detach_free_content = off +detach_query = off +hide_merged_buffers = none +hotlist_counter = off +immune_detach_buffers = "" +indenting = off +indenting_amount = 2 +indenting_number = on +jump_prev_next_visited_buffer = off +mark_inactive = off +mouse_move_buffer = on +mouse_wheel = on +name_crop_suffix = "+" +name_size_max = 0 +number_char = "." +prefix = off +prefix_bufname = "" +prefix_empty = on +prefix_for_query = "" +short_names = on +show_lag = off +show_number = on +sort = number +suffix_bufname = "" +toggle_bar = on +whitelist_buffers = "" diff --git a/.weechat/buflist.conf b/.weechat/buflist.conf @@ -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}${eval:${format_name}}${format_hotlist} ${color:238}${buffer.local_variables.filter}${buffer.local_variables.buflist}" +buffer_current = "${if:${type}==server?${color:*blue,235}:${color:*blue}}${hide:>,${buffer[last_gui_buffer].number}} ${indent}${if:${type}==server&&${info:irc_server_isupport_value,${name},NETWORK}?${info:irc_server_isupport_value,${name},NETWORK}:${name}} ${color:235}${buffer.local_variables.filter}${buffer.local_variables.buflist}" +hotlist = " ${color:239}${hotlist}${color:239}" +hotlist_highlight = "${color:163}" +hotlist_low = "${color:white}" +hotlist_message = "${color:229}" +hotlist_none = "${color:default}" +hotlist_private = "${color:121}" +hotlist_separator = "${color:default}," +indent = " " +lag = " ${color:green}[${color:brown}${lag}${color:green}]" +name = "${if:${type}==server?${color:white}:${color_hotlist}}${if:${type}==server||${type}==channel||${type}==private?${if:${cutscr:8,+,${name}}!=${name}?${cutscr:8,${color:${weechat.color.chat_prefix_more}}+,${if:${type}==server&&${info:irc_server_isupport_value,${name},NETWORK}?${info:irc_server_isupport_value,${name},NETWORK}:${name}}}:${cutscr:8, ,${if:${type}==server&&${info:irc_server_isupport_value,${name},NETWORK}?${info:irc_server_isupport_value,${name},NETWORK} :${name} }}}:${name}}" +nick_prefix = "${color_nick_prefix}${nick_prefix}" +number = "${if:${type}==server?${color:black,235}:${color:239}}${number}${if:${number_displayed}?.: }" diff --git a/.weechat/charset.conf b/.weechat/charset.conf @@ -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] diff --git a/.weechat/exec.conf b/.weechat/exec.conf @@ -0,0 +1,18 @@ +# +# 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 + +[color] +flag_finished = lightred +flag_running = lightgreen diff --git a/.weechat/fifo.conf b/.weechat/fifo.conf @@ -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" diff --git a/.weechat/irc.conf b/.weechat/irc.conf @@ -0,0 +1,531 @@ +# +# 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 = on +color_nicks_in_nicklist = on +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,Anders,DamsgaardAnders,Damsgaard,anders,damsgaard,anders.damsgaard" +highlight_pv = "$nick,Anders,DamsgaardAnders,Damsgaard,anders,damsgaard,anders.damsgaard" +highlight_server = "$nick,Anders,DamsgaardAnders,Damsgaard,anders,damsgaard,anders.damsgaard" +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 = independent +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 = "q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue" +notice = green +reason_quit = 244 +topic_current = default +topic_new = 36 +topic_old = 244 + +[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 = 0 +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] +clientinfo = "" +finger = "" +ping = "" +source = "" +time = "" +userinfo = "" +version = "" + +[ignore] +ignore = *;*;^nixOS_GitHub$ + +[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 = 5 +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 = "ad,ad1,ad2,ad3,ad4" +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" +ssl_verify = on +usermode = "" +username = "ad" + +[server] +freenode.addresses = "chat.freenode.net/6667" +freenode.proxy +freenode.ipv6 +freenode.ssl +freenode.ssl_cert +freenode.ssl_priorities +freenode.ssl_dhkey_size +freenode.ssl_fingerprint +freenode.ssl_verify +freenode.password +freenode.capabilities +freenode.sasl_mechanism +freenode.sasl_username = "${sec.data.freenode_username}" +freenode.sasl_password = "${sec.data.freenode_password}" +freenode.sasl_key +freenode.sasl_timeout +freenode.sasl_fail +freenode.autoconnect = on +freenode.autoreconnect +freenode.autoreconnect_delay +freenode.nicks = "adc,adc_,adc__" +freenode.nicks_alternate +freenode.username = "adc" +freenode.realname +freenode.local_hostname +freenode.usermode +freenode.command +freenode.command_delay +freenode.autojoin = "#archlinux,#bash,#debian,#climagic,#GeoDataHub,#julia,#mutt,#tmux,#vim,#zsh" +freenode.autorejoin +freenode.autorejoin_delay +freenode.connection_timeout +freenode.anti_flood_prio_high +freenode.anti_flood_prio_low +freenode.away_check +freenode.away_check_max_nicks +freenode.msg_kick +freenode.msg_part +freenode.msg_quit +freenode.notify +freenode.split_msg_max_length +slack-sigma-stanford.addresses = "sigma-stanford.irc.slack.com/6667" +slack-sigma-stanford.proxy +slack-sigma-stanford.ipv6 +slack-sigma-stanford.ssl = on +slack-sigma-stanford.ssl_cert +slack-sigma-stanford.ssl_priorities +slack-sigma-stanford.ssl_dhkey_size = 512 +slack-sigma-stanford.ssl_fingerprint +slack-sigma-stanford.ssl_verify +slack-sigma-stanford.password = "${sec.data.slack-sigma-stanford_password}" +slack-sigma-stanford.capabilities +slack-sigma-stanford.sasl_mechanism +slack-sigma-stanford.sasl_username = "${sec.data.slack-sigma-stanford_username}" +slack-sigma-stanford.sasl_password = "${sec.data.slack-sigma-stanford_password}" +slack-sigma-stanford.sasl_key +slack-sigma-stanford.sasl_timeout +slack-sigma-stanford.sasl_fail +slack-sigma-stanford.autoconnect = off +slack-sigma-stanford.autoreconnect +slack-sigma-stanford.autoreconnect_delay +slack-sigma-stanford.nicks = "anders.damsgaard" +slack-sigma-stanford.nicks_alternate +slack-sigma-stanford.username = "${sec.data.slack-sigma-stanford_username}" +slack-sigma-stanford.realname +slack-sigma-stanford.local_hostname +slack-sigma-stanford.usermode +slack-sigma-stanford.command +slack-sigma-stanford.command_delay +slack-sigma-stanford.autojoin +slack-sigma-stanford.autorejoin +slack-sigma-stanford.autorejoin_delay +slack-sigma-stanford.connection_timeout +slack-sigma-stanford.anti_flood_prio_high +slack-sigma-stanford.anti_flood_prio_low +slack-sigma-stanford.away_check +slack-sigma-stanford.away_check_max_nicks +slack-sigma-stanford.msg_kick +slack-sigma-stanford.msg_part +slack-sigma-stanford.msg_quit +slack-sigma-stanford.notify +slack-sigma-stanford.split_msg_max_length +bitlbee.addresses = "localhost/6667" +bitlbee.proxy +bitlbee.ipv6 +bitlbee.ssl +bitlbee.ssl_cert +bitlbee.ssl_priorities +bitlbee.ssl_dhkey_size +bitlbee.ssl_fingerprint +bitlbee.ssl_verify +bitlbee.password = "ad/bitlbee:${sec.data.bitlbee_password}" +bitlbee.capabilities +bitlbee.sasl_mechanism +bitlbee.sasl_username +bitlbee.sasl_password +bitlbee.sasl_key +bitlbee.sasl_timeout +bitlbee.sasl_fail +bitlbee.autoconnect = off +bitlbee.autoreconnect +bitlbee.autoreconnect_delay +bitlbee.nicks +bitlbee.nicks_alternate +bitlbee.username +bitlbee.realname +bitlbee.local_hostname +bitlbee.usermode +bitlbee.command +bitlbee.command_delay +bitlbee.autojoin +bitlbee.autorejoin +bitlbee.autorejoin_delay +bitlbee.connection_timeout +bitlbee.anti_flood_prio_high +bitlbee.anti_flood_prio_low +bitlbee.away_check +bitlbee.away_check_max_nicks +bitlbee.msg_kick +bitlbee.msg_part +bitlbee.msg_quit +bitlbee.notify +bitlbee.split_msg_max_length +gitter.addresses = "irc.gitter.im" +gitter.proxy +gitter.ipv6 +gitter.ssl = on +gitter.ssl_cert +gitter.ssl_priorities +gitter.ssl_dhkey_size = 1024 +gitter.ssl_fingerprint +gitter.ssl_verify = on +gitter.password = "${sec.data.gitterpass}" +gitter.capabilities +gitter.sasl_mechanism +gitter.sasl_username +gitter.sasl_password +gitter.sasl_key +gitter.sasl_timeout +gitter.sasl_fail +gitter.autoconnect = on +gitter.autoreconnect +gitter.autoreconnect_delay +gitter.nicks = "anders-dc" +gitter.nicks_alternate +gitter.username +gitter.realname +gitter.local_hostname +gitter.usermode +gitter.command +gitter.command_delay +gitter.autojoin +gitter.autorejoin +gitter.autorejoin_delay +gitter.connection_timeout +gitter.anti_flood_prio_high +gitter.anti_flood_prio_low +gitter.away_check +gitter.away_check_max_nicks +gitter.msg_kick +gitter.msg_part +gitter.msg_quit +gitter.notify +gitter.split_msg_max_length +slack-taku.addresses = "takuglacier.irc.slack.com/6667" +slack-taku.proxy +slack-taku.ipv6 +slack-taku.ssl = on +slack-taku.ssl_cert +slack-taku.ssl_priorities +slack-taku.ssl_dhkey_size +slack-taku.ssl_fingerprint +slack-taku.ssl_verify +slack-taku.password = "${sec.data.slack-taku_password}" +slack-taku.capabilities +slack-taku.sasl_mechanism +slack-taku.sasl_username = "${sec.data.slack-taku_username}" +slack-taku.sasl_password = "${sec.data.slack-taku_password}" +slack-taku.sasl_key +slack-taku.sasl_timeout +slack-taku.sasl_fail +slack-taku.autoconnect = off +slack-taku.autoreconnect +slack-taku.autoreconnect_delay +slack-taku.nicks = "anders.damsgaard" +slack-taku.nicks_alternate +slack-taku.username = "${sec.data.slack-taku_username}" +slack-taku.realname +slack-taku.local_hostname +slack-taku.usermode +slack-taku.command +slack-taku.command_delay +slack-taku.autojoin +slack-taku.autorejoin +slack-taku.autorejoin_delay +slack-taku.connection_timeout +slack-taku.anti_flood_prio_high +slack-taku.anti_flood_prio_low +slack-taku.away_check +slack-taku.away_check_max_nicks +slack-taku.msg_kick +slack-taku.msg_part +slack-taku.msg_quit +slack-taku.notify +slack-taku.split_msg_max_length +qualitystreet.addresses = "qualitystreet.irc.slack.com/6667" +qualitystreet.proxy +qualitystreet.ipv6 +qualitystreet.ssl = on +qualitystreet.ssl_cert +qualitystreet.ssl_priorities +qualitystreet.ssl_dhkey_size = 512 +qualitystreet.ssl_fingerprint +qualitystreet.ssl_verify +qualitystreet.password = "${sec.data.qualitystreet_password}" +qualitystreet.capabilities +qualitystreet.sasl_mechanism +qualitystreet.sasl_username = "${sec.data.qualitystreet_username}" +qualitystreet.sasl_password = "${sec.data.qualitystreet_password}" +qualitystreet.sasl_key +qualitystreet.sasl_timeout +qualitystreet.sasl_fail +qualitystreet.autoconnect = off +qualitystreet.autoreconnect +qualitystreet.autoreconnect_delay +qualitystreet.nicks = "anders" +qualitystreet.nicks_alternate +qualitystreet.username = "${sec.data.qualitystreet_username}" +qualitystreet.realname +qualitystreet.local_hostname +qualitystreet.usermode +qualitystreet.command +qualitystreet.command_delay +qualitystreet.autojoin +qualitystreet.autorejoin +qualitystreet.autorejoin_delay +qualitystreet.connection_timeout +qualitystreet.anti_flood_prio_high +qualitystreet.anti_flood_prio_low +qualitystreet.away_check +qualitystreet.away_check_max_nicks +qualitystreet.msg_kick +qualitystreet.msg_part +qualitystreet.msg_quit +qualitystreet.notify +qualitystreet.split_msg_max_length +iceberg-model.addresses = "iceberg-model.irc.slack.com/6667" +iceberg-model.proxy +iceberg-model.ipv6 +iceberg-model.ssl = on +iceberg-model.ssl_cert +iceberg-model.ssl_priorities +iceberg-model.ssl_dhkey_size = 512 +iceberg-model.ssl_fingerprint +iceberg-model.ssl_verify +iceberg-model.password = "${sec.data.iceberg-model_password}" +iceberg-model.capabilities +iceberg-model.sasl_mechanism +iceberg-model.sasl_username = "${sec.data.iceberg-model_username}" +iceberg-model.sasl_password = "${sec.data.iceberg-model_password}" +iceberg-model.sasl_key +iceberg-model.sasl_timeout +iceberg-model.sasl_fail +iceberg-model.autoconnect = off +iceberg-model.autoreconnect +iceberg-model.autoreconnect_delay +iceberg-model.nicks = "anders" +iceberg-model.nicks_alternate +iceberg-model.username = "${sec.data.iceberg-model_username}" +iceberg-model.realname +iceberg-model.local_hostname +iceberg-model.usermode +iceberg-model.command +iceberg-model.command_delay +iceberg-model.autojoin +iceberg-model.autorejoin +iceberg-model.autorejoin_delay +iceberg-model.connection_timeout +iceberg-model.anti_flood_prio_high +iceberg-model.anti_flood_prio_low +iceberg-model.away_check +iceberg-model.away_check_max_nicks +iceberg-model.msg_kick +iceberg-model.msg_part +iceberg-model.msg_quit +iceberg-model.notify +iceberg-model.split_msg_max_length +MOM6.addresses = "MOM6.irc.slack.com/6667" +MOM6.proxy +MOM6.ipv6 +MOM6.ssl = on +MOM6.ssl_cert +MOM6.ssl_priorities +MOM6.ssl_dhkey_size = 512 +MOM6.ssl_fingerprint +MOM6.ssl_verify +MOM6.password = "${sec.data.MOM6_password}" +MOM6.capabilities +MOM6.sasl_mechanism +MOM6.sasl_username = "${sec.data.MOM6_username}" +MOM6.sasl_password = "${sec.data.MOM6_password}" +MOM6.sasl_key +MOM6.sasl_timeout +MOM6.sasl_fail +MOM6.autoconnect = off +MOM6.autoreconnect +MOM6.autoreconnect_delay +MOM6.nicks = "anders" +MOM6.nicks_alternate +MOM6.username = "${sec.data.MOM6_username}" +MOM6.realname +MOM6.local_hostname +MOM6.usermode +MOM6.command +MOM6.command_delay +MOM6.autojoin +MOM6.autorejoin +MOM6.autorejoin_delay +MOM6.connection_timeout +MOM6.anti_flood_prio_high +MOM6.anti_flood_prio_low +MOM6.away_check +MOM6.away_check_max_nicks +MOM6.msg_kick +MOM6.msg_part +MOM6.msg_quit +MOM6.notify +MOM6.split_msg_max_length +esip-all.addresses = "esip-all.irc.slack.com/6667" +esip-all.proxy +esip-all.ipv6 +esip-all.ssl = on +esip-all.ssl_cert +esip-all.ssl_priorities +esip-all.ssl_dhkey_size = 512 +esip-all.ssl_fingerprint +esip-all.ssl_verify +esip-all.password = "${sec.data.esip-all_password}" +esip-all.capabilities +esip-all.sasl_mechanism +esip-all.sasl_username = "${sec.data.esip-all_username}" +esip-all.sasl_password = "${sec.data.esip-all_password}" +esip-all.sasl_key +esip-all.sasl_timeout +esip-all.sasl_fail +esip-all.autoconnect = off +esip-all.autoreconnect +esip-all.autoreconnect_delay +esip-all.nicks = "andersd" +esip-all.nicks_alternate +esip-all.username = "${sec.data.esip-all_username}" +esip-all.realname +esip-all.local_hostname +esip-all.usermode +esip-all.command +esip-all.command_delay +esip-all.autojoin +esip-all.autorejoin +esip-all.autorejoin_delay +esip-all.connection_timeout +esip-all.anti_flood_prio_high +esip-all.anti_flood_prio_low +esip-all.away_check +esip-all.away_check_max_nicks +esip-all.msg_kick +esip-all.msg_part +esip-all.msg_quit +esip-all.notify +esip-all.split_msg_max_length diff --git a/.weechat/iset.conf b/.weechat/iset.conf @@ -0,0 +1,38 @@ +# +# weechat -- iset.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] +bg_selected = red +help_default_value = green +help_option_name = white +help_text = default +option = default +option_selected = white +type = brown +type_selected = yellow +value = cyan +value_diff = magenta +value_diff_selected = lightmagenta +value_selected = lightcyan +value_undef = green +value_undef_selected = lightgreen + +[help] +show_help_bar = on +show_help_extra_info = on +show_plugin_description = off + +[look] +scroll_horiz = 10 +show_current_line = on +use_color = off +use_mute = off +value_search_char = "=" diff --git a/.weechat/logger.conf b/.weechat/logger.conf @@ -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] diff --git a/.weechat/plugins.conf b/.weechat/plugins.conf @@ -0,0 +1,232 @@ +# +# 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] +fifo.fifo = "on" +guile.check_license = "off" +javascript.check_license = "off" +lua.check_license = "off" +perl.beep.beep_command_dcc = "$bell" +perl.beep.beep_command_highlight = "$bell" +perl.beep.beep_command_pv = "$bell" +perl.beep.beep_command_timeout = "30000" +perl.beep.beep_dcc = "on" +perl.beep.beep_highlight = "on" +perl.beep.beep_highlight_blacklist = "off" +perl.beep.beep_highlight_whitelist = "off" +perl.beep.beep_pv = "on" +perl.beep.beep_pv_blacklist = "off" +perl.beep.beep_pv_whitelist = "off" +perl.beep.beep_trigger_highlight = "" +perl.beep.beep_trigger_pv = "" +perl.beep.bell_always = "" +perl.beep.blacklist_nicks = "" +perl.beep.whitelist_channels = "" +perl.beep.whitelist_nicks = "" +perl.check_license = "off" +perl.highmon.alignment = "nchannel" +perl.highmon.away_only = "off" +perl.highmon.bitlbee.#twitter_damsgaardanders = "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" +perl.pushover.blacklist = "irc.server.*,irc.*.*status" +perl.pushover.enabled = "on" +perl.pushover.free_pass = "" +perl.pushover.free_user = "" +perl.pushover.nma_apikey = "" +perl.pushover.only_if_away = "off" +perl.pushover.only_if_inactive = "off" +perl.pushover.pb_apikey = "${sec.data.pushbulletapikey}" +perl.pushover.pb_device_iden = "" +perl.pushover.priority = "" +perl.pushover.rate_limit = "0" +perl.pushover.redact_priv_msg = "off" +perl.pushover.service = "pushbullet" +perl.pushover.short_name = "on" +perl.pushover.show_highlights = "on" +perl.pushover.show_priv_msg = "on" +perl.pushover.sound = "" +perl.pushover.token = "${sec.data.pushapikey}" +perl.pushover.user = "${sec.data.pushuserkey}" +perl.pushover.verbose = "2" +python.check_license = "off" +python.cmd_help.color_alias = "white" +python.cmd_help.color_alias_name = "green" +python.cmd_help.color_alias_value = "green" +python.cmd_help.color_arguments = "cyan" +python.cmd_help.color_delimiters = "lightgreen" +python.cmd_help.color_list = "green" +python.cmd_help.color_list_count = "white" +python.cmd_help.color_no_help = "red" +python.cmd_help.color_option_help = "brown" +python.cmd_help.color_option_name = "yellow" +python.cmd_help.display_no_help = "on" +python.cmd_help.format_option = "(${white:type}) ${description_nls}" +python.cmd_help.ignore_commands = "map,me,die,restart" +python.cmd_help.max_options = "5" +python.cmd_help.prefix = "[" +python.cmd_help.right_align = "off" +python.cmd_help.right_padding = "15" +python.cmd_help.space = "2" +python.cmd_help.start_on_load = "off" +python.cmd_help.stop_on_enter = "on" +python.cmd_help.suffix = "]" +python.cmd_help.timer = "0" +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.urlserver.buffer_short_name = "off" +python.urlserver.color = "darkgray" +python.urlserver.color_in_msg = "" +python.urlserver.debug = "off" +python.urlserver.display_urls = "on" +python.urlserver.display_urls_in_msg = "off" +python.urlserver.http_allowed_ips = "" +python.urlserver.http_auth = "" +python.urlserver.http_auth_redirect = "on" +python.urlserver.http_autostart = "on" +python.urlserver.http_bg_color = "#f4f4f4" +python.urlserver.http_css_url = "" +python.urlserver.http_embed_image = "off" +python.urlserver.http_embed_youtube = "off" +python.urlserver.http_embed_youtube_size = "480*350" +python.urlserver.http_fg_color = "#000" +python.urlserver.http_hostname = "" +python.urlserver.http_hostname_display = "" +python.urlserver.http_open_in_new_page = "on" +python.urlserver.http_port = "" +python.urlserver.http_port_display = "" +python.urlserver.http_prefix_suffix = " " +python.urlserver.http_scheme_display = "http" +python.urlserver.http_time_format = "%d/%m/%y %H:%M:%S" +python.urlserver.http_title = "WeeChat URLs" +python.urlserver.http_url_prefix = "" +python.urlserver.msg_filtered = "off" +python.urlserver.msg_ignore_buffers = "core.weechat,python.grep" +python.urlserver.msg_ignore_dup_urls = "off" +python.urlserver.msg_ignore_regex = "" +python.urlserver.msg_ignore_tags = "irc_quit,irc_part,notify_none" +python.urlserver.msg_require_tags = "nick_" +python.urlserver.separators = "[|]" +python.urlserver.url_min_length = "0" +python.urlserver.urls_amount = "100" +python.vimode.no_warn = "off" +ruby.check_license = "off" +tcl.check_license = "off" + +[desc] +perl.beep.beep_command_dcc = "command for beep on dcc, special value "$bell" is allowed, as well as "$bell;command" (default: "$bell")" +perl.beep.beep_command_highlight = "command for beep on highlight, special value "$bell" is allowed, as well as "$bell;command" (default: "$bell")" +perl.beep.beep_command_pv = "command for beep on private message, special value "$bell" is allowed, as well as "$bell;command" (default: "$bell")" +perl.beep.beep_command_timeout = "timeout for command run (in milliseconds, 0 = never kill (not recommended)) (default: "30000")" +perl.beep.beep_dcc = "beep on dcc (default: "on")" +perl.beep.beep_highlight = "beep on highlight (default: "on")" +perl.beep.beep_highlight_blacklist = "turn blacklist for highlights on or off (default: "off")" +perl.beep.beep_highlight_whitelist = "turn whitelist for highlights on or off (default: "off")" +perl.beep.beep_pv = "beep on private message (default: "on")" +perl.beep.beep_pv_blacklist = "turn blacklist for private messages on or off (default: "off")" +perl.beep.beep_pv_whitelist = "turn whitelist for private messages on or off (default: "off")" +perl.beep.beep_trigger_highlight = "word that will trigger execution of beep_command_highlight (if empty, anything will trigger) (default: "")" +perl.beep.beep_trigger_pv = "word that will trigger execution of beep_command_pv (it empty, anything will trigger) (default: "")" +perl.beep.bell_always = "use $bell on private messages and/or highlights regardless of trigger and whitelist settings (example: "pv,highlight") (default: "")" +perl.beep.blacklist_nicks = "comma-separated list of "server.nick": if not empty, these nicks will not be able to trigger execution of commands. Cannot be used in conjuction with whitelist (example: "freenode.nick1,freenode.nick2") (default: "")" +perl.beep.whitelist_channels = "comma-separated list of "server.#channel": if not empty, only these channels will trigger execution of commands (example: "freenode.#weechat,freenode.#channel2") (default: "")" +perl.beep.whitelist_nicks = "comma-separated list of "server.nick": if not empty, only these nicks will trigger execution of commands (example: "freenode.nick1,freenode.nick2") (default: "")" +perl.pushover.blacklist = "Comma separated list of buffers (full name) to blacklist for notifications (wildcard "*" is allowed, name beginning with "!" is excluded) (default: "")" +perl.pushover.enabled = "Turn script on or off (default: "on")" +perl.pushover.free_pass = "Automatic generated Free key (default: "")" +perl.pushover.free_user = "Free Mobile User ID (see your account) (default: "")" +perl.pushover.nma_apikey = "nma API key (default: "")" +perl.pushover.only_if_away = "Notify only if away status is active (default: "off")" +perl.pushover.only_if_inactive = "Notify only if buffer is not the active (current) buffer (default: "off")" +perl.pushover.pb_apikey = "Pushbullet API key (default: "")" +perl.pushover.pb_device_iden = "Device Iden of pushbullet device (default: "")" +perl.pushover.priority = "priority (empty for default) (default: "")" +perl.pushover.rate_limit = "Rate limit in seconds (0 = unlimited), will send a maximum of 1 notification per time limit (default: "0")" +perl.pushover.redact_priv_msg = "When receiving private message notifications, hide the actual message text (default: "off")" +perl.pushover.service = "Notification service to use. Multiple services may be supplied as comma separated list. (supported services: pushover, nma, pushbullet) (default: "pushover")" +perl.pushover.short_name = "Use short buffer name in notification (default: "off")" +perl.pushover.show_highlights = "Notify on highlights (default: "on")" +perl.pushover.show_priv_msg = "Notify on private messages (default: "on")" +perl.pushover.sound = "Sound (empty for default) (default: "")" +perl.pushover.token = "pushover API token/key (You may feel free to use your own token, so you get your own monthly quota of messages without being affected by other users. See also: https://pushover.net/faq#overview-distribution ) (default: "ajEX9RWhxs6NgeXFJxSK2jmpY54C9S")" +perl.pushover.user = "pushover user key (default: "")" +perl.pushover.verbose = "Verbosity level (0 = silently ignore any errors, 1 = display brief error, 2 = display full server response) (default: "1")" +python.cmd_help.color_alias = "color for text "Alias" (default: "white")" +python.cmd_help.color_alias_name = "color for alias name (default: "green")" +python.cmd_help.color_alias_value = "color for alias value (default: "green")" +python.cmd_help.color_arguments = "color for command arguments (default: "cyan")" +python.cmd_help.color_delimiters = "color for delimiters (default: "lightgreen")" +python.cmd_help.color_list = "color for list of commands/options (default: "green")" +python.cmd_help.color_list_count = "color for number of commands/options in list found (default: "white")" +python.cmd_help.color_no_help = "color for text "No help" (default: "red")" +python.cmd_help.color_option_help = "color for help on option (default: "brown")" +python.cmd_help.color_option_name = "color for name of option found (by adding "*" to option name) (default: "yellow")" +python.cmd_help.display_no_help = "display "No help" when command is not found (default: "on")" +python.cmd_help.format_option = "format of help for options: free text with identifiers using format: ${name} or ${color:name}: color is a WeeChat color (optional), name is a field of infolist "option": full_name, config_name, section_name, option_name, description, description_nls, string_values, min, max, null_value_allowed, value_is_null, default_value_is_null, type, value, default_value (default: "(${white:type}) ${description_nls}")" +python.cmd_help.ignore_commands = "comma-separated list of commands (without leading "/") to ignore (default: "map,me,die,restart")" +python.cmd_help.max_options = "max number of options displayed in list (default: "5")" +python.cmd_help.prefix = "string displayed before help (default: "[")" +python.cmd_help.right_align = "align help to right (default: "off")" +python.cmd_help.right_padding = "padding to right when aligned to right (default: "15")" +python.cmd_help.space = "minimum space before help (default: "2")" +python.cmd_help.start_on_load = "auto start help when script is loaded (default: "off")" +python.cmd_help.stop_on_enter = "enter key stop help (default: "on")" +python.cmd_help.suffix = "string displayed after help (default: "]")" +python.cmd_help.timer = "number of seconds help is displayed (0 = display until help is toggled) (default: "0")" +python.urlserver.buffer_short_name = "use buffer short name on dedicated buffer (default: "off")" +python.urlserver.color = "color for urls displayed after message (default: "darkgray")" +python.urlserver.color_in_msg = "color for urls displayed inside irc message: it is a number (irc color) between 00 and 15 (see doc for a list of irc colors) (default: "")" +python.urlserver.debug = "print some debug messages (default: "off")" +python.urlserver.display_urls = "display URLs below messages (default: "on")" +python.urlserver.display_urls_in_msg = "add shorten url next to the original url (only in IRC messages) (useful for urlserver behind relay/irc) (default: "off")" +python.urlserver.http_allowed_ips = "regex for IPs allowed to use server (example: "^(123.45.67.89|192.160.*)$") (default: "")" +python.urlserver.http_auth = "login and password (format: "login:password") required to access to page with list of URLs (note: content is evaluated, see /help eval) (default: "")" +python.urlserver.http_auth_redirect = "require the login/password (if option "http_auth" is set) for URLs redirections (default: "on")" +python.urlserver.http_autostart = "start the built-in HTTP server automatically) (default: "on")" +python.urlserver.http_bg_color = "background color for HTML page (default: "#f4f4f4")" +python.urlserver.http_css_url = "URL of external Cascading Style Sheet to add (BE CAREFUL: the HTTP referer will be sent to site hosting CSS file!) (empty value = use default embedded CSS) (default: "")" +python.urlserver.http_embed_image = "embed images in HTML page (BE CAREFUL: the HTTP referer will be sent to site hosting image!) (default: "off")" +python.urlserver.http_embed_youtube = "embed youtube videos in HTML page (BE CAREFUL: the HTTP referer will be sent to youtube!) (default: "off")" +python.urlserver.http_embed_youtube_size = "size for embedded youtube video, format is "xxx*yyy" (default: "480*350")" +python.urlserver.http_fg_color = "foreground color for HTML page (default: "#000")" +python.urlserver.http_hostname = "force hostname/IP in bind of socket (empty value = auto-detect current hostname) (default: "")" +python.urlserver.http_hostname_display = "display this hostname in shortened URLs (default: "")" +python.urlserver.http_open_in_new_page = "open links in new pages/tabs (default: "on")" +python.urlserver.http_port = "force port for listening (empty value = find a random free port) (default: "")" +python.urlserver.http_port_display = "display this port in shortened URLs. Useful if you forward a different external port to the internal port (default: "")" +python.urlserver.http_prefix_suffix = "suffix displayed between prefix and message in HTML page (default: " ")" +python.urlserver.http_scheme_display = "display this scheme in shortened URLs (default: "http")" +python.urlserver.http_time_format = "time format in the HTML page (default: "%d/%m/%y %H:%M:%S")" +python.urlserver.http_title = "title of the HTML page (default: "WeeChat URLs")" +python.urlserver.http_url_prefix = "prefix to add in URLs to prevent external people to scan your URLs (for example: prefix "xx" will give URL: http://host.com:1234/xx/8) (default: "")" +python.urlserver.msg_filtered = "shorten URLs in filtered messages (with /filter) (default: "off")" +python.urlserver.msg_ignore_buffers = "comma-separated list (without spaces) of buffers to ignore (full name like "irc.freenode.#weechat") (default: "core.weechat,python.grep")" +python.urlserver.msg_ignore_dup_urls = "ignore duplicated URLs (do not add an URL in list if it is already) (default: "off")" +python.urlserver.msg_ignore_regex = "ignore messages matching this regex (default: "")" +python.urlserver.msg_ignore_tags = "comma-separated list (without spaces) of tags (or beginning of tags) to ignore (for example, use "notify_none" to ignore self messages or "nick_weebot" to ignore messages from nick "weebot") (default: "irc_quit,irc_part,notify_none")" +python.urlserver.msg_require_tags = "comma-separated list (without spaces) of tags (or beginning of tags) required to shorten URLs (for example "nick_" to shorten URLs only in messages from other users) (default: "nick_")" +python.urlserver.separators = "separators for short url list (string with exactly 3 chars) (default: "[|]")" +python.urlserver.url_min_length = "minimum length for an URL to be shortened (0 = shorten all URLs, -1 = detect length based on shorten URL) (default: "0")" +python.urlserver.urls_amount = "number of URLs to keep in memory (and in file when script is not loaded) (default: "100")" +python.vimode.no_warn = "don't warn about problematickeybindings and tmux/screen (default: "off")" diff --git a/.weechat/python/weechat-vimode b/.weechat/python/weechat-vimode @@ -0,0 +1 @@ +Subproject commit 1e431a12efd970dc5df997b88f2c532cca5511f4 diff --git a/.weechat/relay.conf b/.weechat/relay.conf @@ -0,0 +1,48 @@ +# +# 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" +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] " + +[port] diff --git a/.weechat/script.conf b/.weechat/script.conf @@ -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 = "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 = "http://weechat.org/files/plugins.xml.gz" diff --git a/.weechat/sec.conf b/.weechat/sec.conf @@ -0,0 +1,39 @@ +# +# weechat -- sec.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 +# + +[crypt] +cipher = aes256 +hash_algo = sha256 +passphrase_file = "" +salt = on + +[data] +__passphrase__ = on +freenode_username = "267BA1A2CAF33A698B8E904956C22AB58BA422238E2D19C6098E6C91615F10D527AA12E8746A39EABDC7BACC" +gitterpass = "0EE52B3FF69903AB53196EDEF720966F8B03BA2B9408D0BFCA1539CE5B7675F6B79C72FCFFD29FBCAF52BE28C372F4BE3861F331BC3CF6A90D81E6099467D4A3CA96E4C4F212C77CC222C6A699C45E9EBE" +esip-all_password = "FA60CBE3C811A987C3FB1584701BFE1734EC1F6ADF71737A8C1E3BB5A3A660B905B9E34B1EFE636574A1FCB4A340B66291E69334C7530AE9AB85B203E1B715B1F95AA68B48BD" +qualitystreet_password = "701ED5FC0C027BDF47A0829852F36F787B2AB3831CB0C4D414C8D219E1BCA4B84678CBB8A33302B3ED6258AF745B11F01D89C3AEE69FA6DF3EE4B2686B8B6048DFB4DED54645F58F56B436" +qualitystreet_username = "0E921B5C41D022775AAC6F22284A6E4C206E03E351F7F823CEA98C8AB7AA642B528BB7C84054398765C62C20DD652570" +takuglacierpass = "1661BF54F35184A57A477EB0FC74BC531B929E2674E91D279299B0BC5EE0ACF1FF37DFF4E44CCD465F48F98240196BA4268B6831D454737ED8020EE537396D6A09A6B6E21E63644F9C" +pushapikey = "990DF91AE725DCDB2C39A53DC01BF68861C3199032A25FFB1916FCA07DDD50C23DED8E5E8C2B34AFA4BA0F1985FE97B90DC516FFE3A6ABF5FFF7CC6B88D3275ABEA03BEC4BF5C5" +slack-sigma-stanford_password = "9BEBAC6CB596A7F9A15B1CF44BAA0B9C5D32EB27129BBE99190BE055FAD3B620C70EFD1D821DC693F69FB669D35C3741514DBA61C89E0430689F3113B6B12BF8EE2E4ACFC983B5C7C4FA597E" +pushoverkey = "CB07F4855D3A761199BC0D5C1E80AF3DDA60E170C6B68013DD8DC27F85D31120786F68D7C5252C3C49013EE14291166B0114178B29DE0700CEBECFB1B9F300BEC19389C5D2CA81" +bitlbee_password = "B1BB9EED2133F896E5A6D9038A4B6DE30F5EAF6650712E5BDF92F9479FA3ADC508F5C60F52A0777DE8D6CE107E5662B90BB7E2650C17EC1EA8DBB56DD106" +esip-all_username = "7885819A57C5E2BE91AB2E8B996EF332F8C25692215BE27440AB13A7503B06B3FF525FEB8FCEC7C82D487BADF31EB490" +iceberg-model_password = "88A13C3828AA7D6C66A7470B767739A52FF3B3CA117DBE41E038131ACCA0DBA331BD91BD6AB075BC1007AEE78060CE20F37441022449D6F4BE6DBED753DC68AC87F1423B81D866BF9C6B77" +iceberg-model_username = "24CE8FDE1BE959744F8996459C86DB20780C5C6563C8B4D84840314E17D587FD09422C14944BC483008845FFF5A3F9" +pushuserkey = "C52AFF4FC20B6EB87FA0232CD751B28A43D315B6986799BAA2522D9FD53D662F47143172034BB94D064693BD403E6DCAD4EB8A672130D45797E8AB846791FAC48414B6084771D0" +freenode_password = "A3AC4D21EB8E27705AE1BD6E7D8535664E5AD181B50F6426E72645AD83A1C103EA71A9A27725261CA52F6171FAB6501692B408EF655D4FBEDF19E44EC44671" +slack-taku_username = "16B49D40E99D5B892D624EAB2DD21A491C7AF9B96CB67B2D3DC4BA837D906B6A9EA224E513F7539B1DA5E3BAC764320484601291E39A708948" +MOM6_password = "D4A97604608B24A617846CED33648A69D653D8F8E3CCE0468CD35B54DDE1125B45BEA5A29603AD4D99B0C55C44B18E4B5838978D1F9B90D68FC65F547F7DCFA244DB" +MOM6_username = "4860E3C58C096CC5CD61DB90CCC51DCEEB204EA1C7CFCC286C62387FA56BF64276C727B563BBACA36898A9E2FEBE77" +slack-sigma-stanford_username = "D0ECC860DCE02249FFF82E7428F8370DE21A6406ED4D3FA567C9E6FF10ADF1329635E1FCF361E1F068A09163EA55EF9CE207069C10A500A8F1" +slack-taku_password = "D82FDEE6131A5D3B730A963E28CB0F3577D52280FCC8875E37F65AA6CA485642C214B5E6DE88B6E9BE9683BACC605C6A020BD9E945D4DEA8F6ED5A9BE9EAD2182114C6490103E14A22" diff --git a/.weechat/trigger.conf b/.weechat/trigger.conf @@ -0,0 +1,59 @@ +# +# 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_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|quote) +nickserv +(id|identify|register|ghost +[^ ]+|release +[^ ]+|regain +[^ ]+) +)|/oper +[^ ]+ +|/quote +pass +|/set +[^ ]*password[^ ]* +|/secure +(passphrase|decrypt|set +[^ ]+) +)(.*)==$1$.*+" +cmd_pass.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|register|ghost +[^ ]+|release +[^ ]+) +)(.*)==$1$.*+" +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=)([^ ]+)(.*)==$1$.*4$5" +server_pass.return_code = ok diff --git a/.weechat/weechat.conf b/.weechat/weechat.conf @@ -0,0 +1,748 @@ +# +# 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 = "${color:245}%H${color:240}%M" +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" +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 = all +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 = on +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 = 10 +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_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 = "WeeChat ${info:version}" +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 = 29 +chat_highlight = yellow +chat_highlight_bg = magenta +chat_host = 24 +chat_inactive_buffer = default +chat_inactive_window = default +chat_nick = lightcyan +chat_nick_colors = "cyan,magenta,green,brown,lightblue,default,lightcyan,lightmagenta,lightgreen,blue,31,35,38,40,49,63,70,80,92,99,112,126,130,138,142,148,160,162,167,169,174,176,178,184,186,210,212,215,247" +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 = 24 +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 = 244 +nicklist_group = green +separator = 0 +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 = "*,!lua,!tcl,!ruby,!fifo,!xfer,!guile,!javascript" +debug = off +extension = ".so,.dll" +path = "%h/plugins" +save_config_on_unload = on + +[bar] +activetitle.color_bg = 31 +activetitle.color_delim = default +activetitle.color_fg = white +activetitle.conditions = "${active}" +activetitle.filling_left_right = vertical +activetitle.filling_top_bottom = horizontal +activetitle.hidden = on +activetitle.items = "buffer_title" +activetitle.position = top +activetitle.priority = 500 +activetitle.separator = on +activetitle.size = 1 +activetitle.size_max = 0 +activetitle.type = window +buffers.color_bg = default +buffers.color_delim = default +buffers.color_fg = default +buffers.conditions = "" +buffers.filling_left_right = vertical +buffers.filling_top_bottom = columns_vertical +buffers.hidden = on +buffers.items = "buffers" +buffers.position = left +buffers.priority = 0 +buffers.separator = on +buffers.size = 14 +buffers.size_max = 14 +buffers.type = root +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 = 17 +buflist.size_max = 17 +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 = "[mode_indicator]+[input_prompt]+(away),[input_search],[input_paste],input_text" +input.position = bottom +input.priority = 1000 +input.separator = off +input.size = 0 +input.size_max = 3 +input.type = window +isetbar.color_bg = default +isetbar.color_delim = cyan +isetbar.color_fg = default +isetbar.conditions = "" +isetbar.filling_left_right = vertical +isetbar.filling_top_bottom = horizontal +isetbar.hidden = on +isetbar.items = "isetbar_help" +isetbar.position = top +isetbar.priority = 0 +isetbar.separator = on +isetbar.size = 3 +isetbar.size_max = 3 +isetbar.type = window +nicklist.color_bg = default +nicklist.color_delim = cyan +nicklist.color_fg = 229 +nicklist.conditions = "${nicklist} && ${window.number} == 1" +nicklist.filling_left_right = vertical +nicklist.filling_top_bottom = columns_vertical +nicklist.hidden = off +nicklist.items = "buffer_nicklist" +nicklist.position = right +nicklist.priority = 200 +nicklist.separator = on +nicklist.size = 14 +nicklist.size_max = 14 +nicklist.type = window +status.color_bg = 234 +status.color_delim = default +status.color_fg = 31 +status.conditions = "" +status.filling_left_right = vertical +status.filling_top_bottom = horizontal +status.hidden = on +status.items = "[time],[buffer_count],[buffer_plugin],buffer_number+:+buffer_name+(buffer_modes)+{buffer_nicklist_count}+buffer_filter,[bitlbee_typing_notice],[lag],[aspell_dict],[aspell_suggest],completion,scroll" +status.position = bottom +status.priority = 500 +status.separator = on +status.size = 1 +status.size_max = 0 +status.type = root +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 +vi_cmd.color_bg = default +vi_cmd.color_delim = default +vi_cmd.color_fg = default +vi_cmd.conditions = "" +vi_cmd.filling_left_right = vertical +vi_cmd.filling_top_bottom = vertical +vi_cmd.hidden = on +vi_cmd.items = "cmd_text" +vi_cmd.position = bottom +vi_cmd.priority = 0 +vi_cmd.separator = off +vi_cmd.size = 0 +vi_cmd.size_max = 0 +vi_cmd.type = root +vi_line_numbers.color_bg = default +vi_line_numbers.color_delim = default +vi_line_numbers.color_fg = default +vi_line_numbers.conditions = "" +vi_line_numbers.filling_left_right = vertical +vi_line_numbers.filling_top_bottom = vertical +vi_line_numbers.hidden = on +vi_line_numbers.items = "line_numbers" +vi_line_numbers.position = left +vi_line_numbers.priority = 0 +vi_line_numbers.separator = off +vi_line_numbers.size = 0 +vi_line_numbers.size_max = 0 +vi_line_numbers.type = window + +[layout] +highlight-minimal.buffer = "core;weechat;1" +highlight-minimal.buffer = "irc;server.slack-sigma-stanford;1" +highlight-minimal.buffer = "irc;server.bitlbee;1" +highlight-minimal.buffer = "irc;bitlbee.&bitlbee;2" +highlight-minimal.buffer = "irc;server.freenode;3" +highlight-minimal.buffer = "irc;freenode.#mutt;4" +highlight-minimal.buffer = "irc;slack-sigma-stanford.#bsfproposal;5" +highlight-minimal.buffer = "irc;slack-sigma-stanford.#conferences;6" +highlight-minimal.buffer = "irc;slack-sigma-stanford.#general;7" +highlight-minimal.buffer = "irc;slack-sigma-stanford.#gitlab;8" +highlight-minimal.buffer = "irc;slack-sigma-stanford.#random;9" +highlight-minimal.buffer = "irc;slack-sigma-stanford.#teamice;10" +highlight-minimal.buffer = "irc;slack-sigma-stanford.#tilliceinteractions;11" +highlight-minimal.window = "1;0;0;0;core;weechat" +highlight-minimal.current = on + +[notify] + +[filter] +hidevoices = on;irc.slack-sigma-stanford.*;irc_mode;(\+|\-)v +irc_smart = on;*;irc_smart_filter;* +wholist = on;irc.*;*;of WHO list +freenodebots-nword = on;irc.server.freenode;*;nigger +freenodebots-#LRH = on;irc.server.freenode;*;#LRH + +[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" +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-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-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;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~ = "/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~ = "/bar scroll nicklist * -100%" +meta2-24;3~ = "/bar scroll nicklist * e" +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 = "/bar toggle nicklist;/bar toggle buflist" +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 aspell 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" +ctrl-f = "/bar toggle nicklist" + +[key_search] +ctrl-I = "/input search_switch_where" +ctrl-J = "/input search_stop" +ctrl-M = "/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" +@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(buffers):ctrl-wheeldown = "hsignal:buffers_mouse" +@bar(buffers):ctrl-wheelup = "hsignal:buffers_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(perl.iset):button1 = "hsignal:iset_mouse" +@chat(perl.iset):button2* = "hsignal:iset_mouse" +@chat(perl.iset):wheeldown = "/repeat 5 /iset **down" +@chat(perl.iset):wheelup = "/repeat 5 /iset **up" +@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(buffers):button1* = "hsignal:buffers_mouse" +@item(buffers):button2* = "hsignal:buffers_mouse" +@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}" diff --git a/.weechat/xfer.conf b/.weechat/xfer.conf @@ -0,0 +1,39 @@ +# +# xfer.conf -- weechat v1.0.1 +# + +[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 = "" +speed_limit = 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 diff --git a/.xbindkeysrc b/.xbindkeysrc @@ -0,0 +1,57 @@ +"xbacklight -dec 10" + XF86MonBrightnessDown + +"xbacklight -inc 10" + XF86MonBrightnessUp + +"/home/ad/bin/display-switcher.sh" + XF86LaunchA + +"/home/ad/bin/display-ext.sh" + XF86LaunchB + +"/home/ad/bin/kbd_backlight.sh down" + XF86KbdBrightnessDown + +"/home/ad/bin/kbd_backlight.sh up" + XF86KbdBrightnessUp + +#"mpc prev" +# XF86AudioPrev + +#"mpc toggle" +# XF86AudioPlay + +#"mpc next" +# XF86AudioNext + +#"keyboard-layout-switch.sh" +# Mod1+Mod4 + l + +#"amixer set Master toggle" +# XF86AudioMute + +#"amixer set Master 5%-" +# XF86AudioLowerVolume + +#"amixer set Master 5%+" +# XF86AudioRaiseVolume + +## Mouse Buttons +#"xvkbd -xsendevent -text "\[XF86Back]"" +#m:0x0 + b:11 + +#"xvkbd -xsendevent -text "\[XF86Forward]"" +#m:0x0 + b:10 + +#"mpc next && pkill -RTMIN+14 i3blocks" +# control+shift + n + +#"mpc prev && pkill -RTMIN+14 i3blocks" +# control+shift + b + +#"mpc toggle && pkill -RTMIN+14 i3blocks" +# control+shift + p + +#"mpc stop && pkill -RTMIN+14 i3blocks" +# control+shift + s diff --git a/.xinitrc b/.xinitrc @@ -0,0 +1,56 @@ +#!/bin/sh + +# Set normal cursor +xsetroot -cursor_name left_ptr & + +# Set background +$HOME/bin/wallpaper.sh + +# Set display color profile +#[ -f ~/doc/colorprofile.icc ] && xcalib ~/doc/colorprofile.icc + +# X settings +xrdb ~/.Xresources + +# Start auth deamons +eval $(ssh-agent) +eval $(gpg-agent) + +# Automatically suspend system after 20 mins of inactivity +xautolock -time 10 -locker $HOME/bin/xlock -detectsleep & + +# Read .Xmodmap for modified keys +setxkbmap -option ctrl:nocaps -option altwin:swap_lalt_lwin +#xmodmap ~/.Xmodmap + +# Read .xbindkeysrc for special key-bindings +xbindkeys + +# Setup two monitors at iddqd +if [ "$(hostname)" = "iddqd" ]; then + xrandr --output DVI-D-0 --primary + xrandr --output DP-1 --auto --left-of DVI-D-0 +fi + +if [ "$(hostname)" != "phony" ]; then + # default temperature is 6500 K day, 4500 K night + redshift -l 56.09:10.12 -t 7500:3300 & # Aarhus + #redshift -l 32.84:-117.26 & # San Diego +fi + +xset -b # Disable beeps +xset +dpms # Energy Star features on +xset dpms 300 600 900 # standby -> suspend -> off (seconds) +xset m 1/4 0 # mouse acceleration (xset m <acceleration> <threshold>) +xset r rate 300 50 # key repeat rate ([delay in ms] [repeats per sec]) + +# auto-start programs +unclutter & +dunst & +compton & +calcurse_reminders.py 15 & +slstatus & +keynav & + +# if changing WM, remember to change WM name in crontab +exec dwm diff --git a/.xpdfrc b/.xpdfrc @@ -0,0 +1,10 @@ +# See `man xpdfrc` for examples + +# vi-like movement +bind h any scrollLeft(16) +bind l any scrollRight(16) +bind k any scrollUp(16) +bind j any scrollDown(16) + + +bind p any toggleOutline diff --git a/.zprofile b/.zprofile @@ -0,0 +1,3 @@ +#!/usr/bin/env zsh + +. ~/.profile diff --git a/.zshrc b/.zshrc @@ -0,0 +1,226 @@ +#### ZSH PERFORMANCE DEBUG +debug_startup=false +[ "$debug_startup" = true ] && zmodload zsh/zprof + + +#### ZSH OPTIONS + +# man zshoptions +setopt append_history # zsh sessions append their history to the hist file +setopt autopushd # make cd push the old dir to the dir stack +setopt extendedglob # globs (. is file, / is dir) see `man zshexpn` +setopt hist_ignore_dups # ignore duplicate cmds in history +setopt histignorespace # don't store cmds prefixed with space in history +setopt interactivecomments # allow in-line comments in prompt +setopt prompt_subst # perform param exp, cmd subst, arith exp in prompt +setopt share_history # import new commands from the history file +unsetopt autocd # cd into directory if called by name +unsetopt beep # beep on error +unsetopt hist_verify # verify before executing cmd from history (e.g. !!) +unsetopt notify # report status of bg jobs immediately +unsetopt nomatch # show error if wildcards do not match any files + +autoload -Uz add-zsh-hook cdr chpwd_recent_dirs compinit edit-command-line \ + select-bracketed select-quoted zmv + +compinit +add-zsh-hook chpwd chpwd_recent_dirs + +zstyle completion:*:*:cdr:*:* menu selection +zstyle :chpwd:* recent-dirs-insert fallback +zstyle :chpwd:* recent-dirs-pushd true + +zle -N edit-command-line +zle -N select-bracketed +zle -N select-quoted +zle -N fzf-history-widget +zle -N history-substring-search-up +zle -N history-substring-search-down + +HISTFILE=~/.zhistory +HISTSIZE=$((2 ** 16)) +SAVEHIST=$((2 ** 17)) + +#### BINDINGS + +set -o vi +bindkey -v +bindkey jk vi-cmd-mode +bindkey -M vicmd v edit-command-line +bindkey -a ? fzf-history-widget +bindkey -a k history-substring-search-up +bindkey -a j history-substring-search-down +bindkey '^R' history-incremental-search-backward +bindkey "^j" history-beginning-search-backward +bindkey "^k" history-beginning-search-forward +bindkey '^P' up-line-or-search +bindkey '^N' down-line-or-search +bindkey '^ ' autosuggest-accept +bindkey '^_' autosuggest-execute + +# use Ctrl-Z as fg +_foreground() { + if [[ $#BUFFER -eq 0 ]]; then + BUFFER="fg" + zle accept-line + else + zle push-input + zle clear-screen + fi +} +zle -N _foreground +bindkey '^Z' _foreground + +# launch $EDITOR with Ctrl-e +_editor() { + BUFFER="$EDITOR" + zle accept-line +} +zle -N _editor +bindkey '^e' _editor + +# launch vim+fzf with Ctrl-f +_editor_fuzzy_find() { + BUFFER="vim -c ':FZF'" + zle accept-line +} +zle -N _editor_fuzzy_find +bindkey '^f' _editor_fuzzy_find + +# launch vim+fzf for recent files with Ctrl-o +_editor_fuzzy_history() { + BUFFER="vim -c ':History'" + zle accept-line +} +zle -N _editor_fuzzy_history +bindkey '^o' _editor_fuzzy_history + +# launch vim+fzf+rg with Ctrl-g +_editor_fuzzy_grep() { + BUFFER="vim -c ':Rg'" + zle accept-line +} +zle -N _editor_fuzzy_grep +bindkey '^g' _editor_fuzzy_grep + +# remember -n flag for dry runs +alias zmv='noglob zmv' +alias zcp='noglob zmv -C' +alias zln='noglob zmv -L' +alias zsy='noglob zmv -Ls' + + +#### ZSH APPEARANCE + +# show execution time of previous command if more than 1 sec +convertsecs() { + ((d=${1}/3600/24)) + ((h=${1}/3600%24)) + ((m=(${1}%3600)/60)) + ((s=${1}%60)) + if [ "$d" -gt "0" ]; then + printf " %dd%02dh%02dm%02ds" $d $h $m $s + elif [ "$h" -gt "0" ]; then + printf " %dh%02dm%02ds" $h $m $s + elif [ "$m" -gt "0" ]; then + printf " %dm%02ds" $m $s + elif [ "$s" -gt "0" ]; then + printf " %ds" $s + fi +} +preexec() { + timer=${timer:-$SECONDS} +} +precmd() { + if [ $timer ]; then + timer_show=$(convertsecs $(($SECONDS - $timer))) + export EXECTIME="${timer_show}" + unset timer + fi +} + +git_branch() { + branch_name=$(git symbolic-ref --short HEAD 2> /dev/null) + + if [ -n "$branch_name" ] + then + echo "$branch_name$(git_modified) " + fi +} + +git_grep_modified_files() { + grep -e "^.M" -e "^M." -e "^A." -e "^D." -e "^.D" +} + +git_modified() { + if [ -n "$(git status --porcelain 2> /dev/null | git_grep_modified_files)" ] + then + echo "*" + fi +} + +function prompt_with_vimode { + #echo -e "\a" + echo + echo -n '%(1j.%jbg .)' # background jobs + echo -n "$1" + [ -z "$1" ] && # show prompt symbol if no insert/normal mode is passed + echo -n '%(!.%{$fg_bold[red]%}#.$)' + echo -n '%{$reset_color%} ' +} + +insert_mode='' +normal_mode='N' # normal mode indicator + +rprompt() { + echo -n "%(?..%{$fg[red]%}[%?]%{$reset_color%})" # return status + echo -n "${EXECTIME} " # runtime of prev cmd + echo -n "%{$fg[cyan]%}$(git_branch)%{$reset_color%}" # git branch + echo -n "%~" # pwd + [ "$USER" != "ad" ] && echo -n "%n@" #username + [ "$HOST" != "idkfa" ] && echo -n "%m" #hostname +} + +PROMPT="$(prompt_with_vimode $insert_mode)" +RPROMPT="$(rprompt)" + +function zle-line-init zle-keymap-select { + PROMPT=$(prompt_with_vimode \ + ${${KEYMAP/vicmd/$normal_mode}/(main|viins)/$insert_mode}) + RPROMPT=$(rprompt) + zle reset-prompt +} + +zle -N zle-line-init +zle -N zle-keymap-select + + +#### PLUGINS +if [ -f "$HOME/.config/fffs/lib/zsh/sources" ]; then + . "$HOME/.config/fffs/lib/zsh/sources" +else + fffs zsh init + . "$HOME/.config/fffs/lib/zsh/sources" +fi + + +#### EXTRA COMMANDS + +# pass **<tab> +_fzf_complete_pass() { + _fzf_complete "--no-multi --preview-window=right:hidden" "$@" < <( + pwdir=${PASSWORD_STORE_DIR-~/.password-store/} + stringsize="${#pwdir}" + find "$pwdir" -name "*.gpg" -print | + cut -c "$((stringsize + 1))"- | + sed -e 's/\(.*\)\.gpg/\1/' + ) +} + +. ~/.commands.sh +. ~/.locale + +[ -f ~/.fzf.zsh ] && . ~/.fzf.zsh + +# report startup diagnostics if requested +[ "$debug_startup" = true ] && zprof || : diff --git a/links/.commands.sh b/links/.commands.sh @@ -1,207 +0,0 @@ -#!/bin/bash - - -#### FUNCTIONS AND ALIASES - -alias b='bash' -alias z='zsh' -alias v='vim' -alias n='nnn' - -## cd -alias cg='c "$(git rev-parse --show-toplevel)"' # cd under git repo -alias ch='cd "$(dirs -lp | sort -u | fzf --preview-window=right:hidden )"' # cd from history - -# change to directory under pwd -c() { - local dir - dir=$(find "${1:-.}" -type d | grep -v '/\.' | fzf --preview '') - - [ -n "$dir" ] && cd "$dir" || return -} - - -## ls - -if [[ "$(uname)" != 'Darwin' ]]; then - alias ls='ls --color=auto -F' -else - alias ls='ls -G -F' -fi -alias l='ls -alFh' -alias la='ls -A' - - -## Open files -o() { - [[ "$(uname)" == 'Darwin' ]] && open="open" || open="xdg-open" - if [[ "$#" -gt 0 && -f "$1" ]]; then - nohup $open "$1" >/dev/null 2>&1 & - else - IFS=$'\n' out=($(fzf --query="$1" --exit-0 --expect=ctrl-o,ctrl-e --preview-window=hidden)) - key=$(head -1 <<< "$out") - file=$(head -2 <<< "$out" | tail -1) - if [ -n "$file" ]; then - if [ "$key" = ctrl-e ]; then - ${EDITOR:-vim} "$file" - elif [ "$key" = ctrl-o ]; then - cd "$(dirname "$file")" - else - nohup $open "$file" >/dev/null 2>&1 & - fi - fi - fi -} - -## editor -alias vi='vim -u ~/.vim/vimrc.noplugs' - - -## dotfiles -alias zshreload="source ~/.zshrc" -alias dotfiles-update="cd ~/code/dotfiles && git pull ; zshreload ; cd -" -alias dotfiles-commit="cd ~/code/dotfiles && git commit -a -S -v ; git push ; cd -" - - -## python -alias ipython-prof='ipython -m cProfile -s time' -alias python-prof='python -m cProfile -s time' - -## make -alias m="make" -alias mc="make clean" -alias me="make edit" - -## date -alias date-denmark='TZ=Europe/Copenhagen date' -alias date-eastern='TZ=US/Eastern date' -alias date-pacific='TZ=US/Pacific date' -alias date-mountain='TZ=US/Mountain date' -alias date-central='TZ=US/Central date' -alias date-uk='TZ=Europe/London date' -alias date-israel='TZ=Israel date' - -## git -alias gs='git status | less' -alias gl='git log --graph --oneline --decorate --all' -alias ga='git add' -alias gd='git diff --' -alias gch='git diff HEAD^..HEAD' -alias gc='git commit --verbose --gpg-sign' -alias gca='git commit --all --verbose --gpg-sign' -alias gp='git push' -alias gpu='git pull && git fetch --all' -alias gcgp='git commit --verbose --gpg-sign && git push' -alias gcagp='git commit --all --verbose --gpg-sign && git push' - -# redefine git log alias -alias gl="git log --graph --oneline --decorate --all --color=always | - fzf --ansi +s --preview='git show --color=always {2}' \ - --bind='pgdn:preview-page-down' \ - --bind='pgup:preview-page-up' \ - --bind='enter:execute:git show --color=always {2} | less -R' \ - --bind='ctrl-x:execute:git checkout {2} .'" - -## grep -alias grep='grep --color=auto' - -## speech synthesis -if [ "$(uname)" != 'Darwin' ]; then - say() { echo "$@" | festival --tts; } - sayfile() { festival --tts "$@"; } -else - sayfile() { say -f "$@"; } -fi - -## w3m -alias w3m="w3m -B" -w3mtor() { - local url - if [ $# -eq 0 ]; then - url="https://check.torproject.org/" - else - url=$1 - fi - torify w3m "$url" -} - -w3mddg() { torify surfraw ddg "$@"; } - -news() { - local url - if [ $# -eq 0 ]; then - url="https://text.npr.org" - elif [ "$1" = "npr" ]; then - url="https://text.npr.org" - elif [ "$1" = "cnn" ]; then - url="https://lite.cnn.io/en" - else - url=$1 - fi - torify w3m "$url" -} - - -## web services -alias youtube-dl='youtube-dl -f bestvideo+bestaudio/best --all-subs --embed-subs' -weather() { curl "wttr.in/?m"; } -transfer() { # use transfer.sh to share files over the net - if [ $# -eq 0 ]; then - echo -e "No arguments specified. Usage: transfer.sh <file>" - return 1 - fi - tmpfile=$( mktemp -t transferXXX ) - if tty -s; then - basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g') - curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" \ - >> "$tmpfile" - else - curl --progress-bar --upload-file "-" "https://transfer.sh/$1" \ - >> "$tmpfile" - fi - cat "$tmpfile" - rm -f "$tmpfile" - echo "" -} - -t-add() { - transmission-remote --add --download-dir "$PWD" --encryption-required "$@" -} -t-list() { - transmission-remote --list -} -t-stop() { - transmission-remote --torrent "$@" --stop -} -t-stop-idle() { - for id in $(t-list | grep Done | grep Idle | awk '{ print $1 }' | tr '\n' ','); do - t-stop "$id" - done -} -t-remove() { - transmission-remote --torrent "$@" --remove -} -t-remove-all() { - transmission-remote -tall --remove -} - -m-all-sl() { - for d in ~/code/dotfiles/lib/{dwm,slstatus,st,surf,tabbed}; do - echo - echo "## Building $d" - (cd "$d" && make clean && make install) - done -} - -gcagp-all-sl() { - msg="Update color scheme" - read -r "input?commit message [$msg]: " - msg="${input:-$msg}" - for d in ~/code/dotfiles/lib/{dwm,slstatus,st,surf,tabbed}; do - cd "$d" && \ - git commit --all -m "$msg" --verbose --gpg-sign && git push; - cd - || return - done -} - -[ -f ~/.shortcuts ] && source ~/.shortcuts diff --git a/links/.gitignore b/links/.gitignore @@ -1,2 +0,0 @@ -*.pyc -tags diff --git a/links/.vim/colors/tender.vim b/links/.vim/colors/tender.vim @@ -1 +0,0 @@ -../vim-plugs/tender/colors/tender.vim- \ No newline at end of file diff --git a/links/.vim/ftplugin/tex.vim b/links/.vim/ftplugin/tex.vim @@ -1,41 +0,0 @@ -augroup latex_options - - let g:vimtex_quickfix_latexlog = { - \ 'overfull' : 0, - \ 'underfull' : 0} - - " customize what is concealed in LaTeX documents: - " a = conceal accents/ligatures - " d = conceal delimiters - " g = conceal Greek - " m = conceal math symbols - " s = conceal superscripts/subscripts - let g:tex_conceal="agm" - - NoMatchParen " disable paranthesis matching for faster performance - - " use latexmk as make program for continuous compilation - "setlocal makeprg=latexmk\ -pdf\ % - setlocal makeprg=latexmk\ -lualatex\ % - - " or run in tmux pane: - nnoremap <leader>p :!tmux new-window -a -n "latexmk" "latexmk -pdf -pvc %" \; select-window -l<cr><cr> - - " disable continuous and slow chktex linting - let g:ale_lint_on_text_changed = 'never' - let g:ale_lint_on_enter = 0 - - setlocal commentstring=%\ %s - -augroup END - -augroup latex_typography - call pencil#init({'wrap': 'soft', 'textwidth': 80, 'conceallevel': 0}) - setlocal spell spl=en_us - setlocal fdo+=search - setlocal list - setlocal formatoptions=alw2qt " automatically reflow paragraphs - IndentLinesDisable - AdVIMsorEnable " detect weasel words, use of passive voice, word duplicates - "DittoOn -augroup END diff --git a/links/.vim/ftplugin/yaml.vim b/links/.vim/ftplugin/yaml.vim @@ -1,23 +0,0 @@ -augroup yaml_config - - " Inspired by Ian Young's script - setlocal autoindent shiftwidth=2 expandtab - setlocal indentexpr=GetYamlIndent() - setlocal indentkeys=o,O,*<Return>,!^F - - function! GetYamlIndent() - let lnum = v:lnum - 1 - if lnum == 0 - return 0 - endif - let line = substitute(getline(lnum),'\s\+$','','') - let indent = indent(lnum) - let increase = indent + &sw - if line =~ ':$' - return increase - else - return indent - endif - endfunction - -augroup END diff --git a/links/.vim/plugin/00-general.vim b/links/.vim/plugin/00-general.vim @@ -1,40 +0,0 @@ -set autoread " reload files when changed on disk -set backspace=2 " fix broken backspace in some setups -set backupcopy=yes " see :help crontab -set clipboard=unnamed " use system clipboard -set dictionary+=/usr/share/dict/words " word completion using Ctrl-x Ctrl-k -set expandtab " use the appropriate number of spaces for <Tab> -set go+=c " do not show popups in gui -set hlsearch " highlight search matches -set ignorecase " case-insensitive search -set incsearch " search as you type -set laststatus=2 " always show the statusline -set lbr " break lines between words -set list " rendering of invisible characters -set listchars=tab:▸\ ,eol:¬ " Use symbols for tab and end-of-line -set nojoinspaces " disable double spaces after periods -set pastetoggle=<F2> " toggle paste mode -set scrolloff=3 " show context above-below cursorline -set shiftwidth=4 " width for autoindents -set smartcase " case-sensitive search if any caps -set splitright " new vertical splits on the right side -set tabstop=4 " number of spaces for tab -set textwidth=80 " default line width in number of characters -set wildmenu " show a navigable menu for tab completion -set wildmode=longest,list,full - -" specify mutt aliases path, autocomplete aliases with @@ in insert mode -let g:mutt_aliases_file = '~/.mutt/aliases' - -" split size for :Lex[plore] and :Hex[plore]. Percentage when positive, line/col -" number when negative -let g:netrw_winsize = 20 - -" use faster :grep alternatives when available -if executable("rg") - set grepprg=rg\ --vimgrep\ --no-heading - set grepformat=%f:%l:%c:%m,%f:%l:%m -elseif executable("ag") - set grepprg=ag\ --nogroup\ --nocolor\ --ignore-case\ --column - set grepformat=%f:%l:%c:%m,%f:%l:%m -endif diff --git a/links/.vim/plugin/appearance.vim b/links/.vim/plugin/appearance.vim @@ -1,135 +0,0 @@ -" terminal colors -"set t_Co=16 -"set t_Co=256 - -" highlight 81st column -set colorcolumn=+1 - -function! ColorSchemeTweaks() abort - - highlight ColorColumn ctermbg=7 - - highlight Normal cterm=NONE ctermfg=NONE ctermbg=NONE - highlight Search cterm=NONE ctermfg=0 ctermbg=2 - highlight MatchParen cterm=NONE ctermfg=255 ctermbg=199 - - " tab, nbsp, trail - highlight SpecialKey ctermfg=7 guifg=#555555 - - " eol, extends, precedes - highlight NonText ctermfg=7 guifg=#555555 - - " split divider appearance - highlight VertSplit ctermfg=7 guifg=#555555 ctermbg=15 term=NONE - - " hide end-of-buffer tilde symbols - highlight EndOfBuffer cterm=NONE ctermfg=0 ctermbg=NONE - -endfunction - -augroup ColorSchemeCmds - autocmd ColorScheme * call ColorSchemeTweaks() -augroup end - -augroup GVimTweaks - if has("gui_running") - set guioptions-=T " no toolbar - set guioptions-=m " no menubar - set guioptions-=r " no right-hand scroll bar - set guioptions-=L " no left-hand scroll bar - if has("gui_gtk2") || has("gui_gtk3") - set guifont=Pragmata\ Pro\ 10 - elseif has("gui_macvim") - set guifont=Menlo\ Regular:h14 - elseif has("gui_win32") - "set guifont=Consolas:h11:cANSI - set guifont=PragmataPro:h11 - endif - endif -augroup end - -"colorscheme tender -colorscheme adbasic - -" Show syntax highlighting groups for word under cursor -nnoremap <C-S-P> :call <SID>SynStack()<CR> -function! <SID>SynStack() - if !exists("*synstack") - return - endif - echo map(synstack(line('.'), col('.')), 'synIDattr(v:val, "name")') -endfunc - -augroup AleAppearance - let g:ale_sign_error = '✖' - let g:ale_sign_warning = '⚠' - - highlight ALEErrorSign ctermbg=NONE ctermfg=Red - highlight ALEWarningSign ctermbg=NONE ctermfg=Yellow -augroup end - -" statusline helper functions -function! StatuslineLinterWarnings() abort - let l:counts = ale#statusline#Count(bufnr('')) - let l:all_errors = l:counts.error + l:counts.style_error - let l:all_non_errors = l:counts.total - l:all_errors - return l:all_non_errors == 0 ? '' : printf(' %d ⚠ ', all_non_errors) -endfunction -" -function! StatuslineLinterErrors() abort - let l:counts = ale#statusline#Count(bufnr('')) - let l:all_errors = l:counts.error + l:counts.style_error - let l:all_non_errors = l:counts.total - l:all_errors - return l:all_errors == 0 ? '' : printf(' %d ✖', all_errors) -endfunction - -function! StatuslineLinterOK() abort - let l:counts = ale#statusline#Count(bufnr('')) - let l:all_errors = l:counts.error + l:counts.style_error - let l:all_non_errors = l:counts.total - l:all_errors - return l:counts.total == 0 ? '✓' : '' -endfunction - -augroup StatuslineConfig - - " define 3 custom highlight groups for statusline coloring - " highlight User1 ctermfg=252 guifg=#d0d0d0 ctermbg=240 guibg=#585858 - " highlight User2 ctermfg=247 guifg=#969696 ctermbg=240 guibg=#585858 - " highlight User3 ctermbg=244 guibg=#808080 ctermfg=238 guifg=#444444 - " highlight User4 ctermfg=252 guifg=#d0d0d0 ctermbg=238 guibg=#444444 - " highlight User5 ctermfg=252 guifg=#d0d0d0 ctermbg=238 guibg=#444444 - " highlight User6 ctermfg=238 guifg=#444444 ctermbg=203 guibg=#e5786d - " highlight User7 ctermfg=238 guifg=#444444 ctermbg=173 guibg=#e5786d - highlight User1 ctermfg=NONE guifg=#d0d0d0 ctermbg=NONE guibg=#585858 - highlight User2 ctermfg=NONE guifg=#969696 ctermbg=NONE guibg=#585858 - highlight User3 ctermbg=NONE guibg=#808080 ctermfg=NONE guifg=#444444 - highlight User4 ctermfg=NONE guifg=#d0d0d0 ctermbg=NONE guibg=#444444 - - " empty statusline and populate later - set statusline= - - " left - set statusline+=%1* " set User1 color - set statusline+=\%t\ " tail of filename - set statusline+=%4* " set User4 color - set statusline+=\ %h%w%m%r\ " flags for help file, preview, modified, R/O - set statusline+=%#LineNr# " set default background - - " center spacing - set statusline+=%= " add separation between left and right items - - " right - set statusline+=%4* " set background color - if &rtp =~ 'ale' - set statusline+=%7*%{StatuslineLinterWarnings()}%4* " ALE warnings - set statusline+=%6*%{StatuslineLinterErrors()}%4* " ALE errors - set statusline+=%{StatuslineLinterOK()} " ALE ok - endif - set statusline+=%2* " set User2 color - if &rtp =~ 'vim-line-no-indicator' - set statusline+=\ %{LineNoIndicator()}\ " show position w. single char - endif - set statusline+=%3* " set User3 color - set statusline+=\%2l:%-2c\ " line and column view - -augroup END diff --git a/links/.vim/plugin/correct.vim b/links/.vim/plugin/correct.vim @@ -1,21 +0,0 @@ -let user_correct_dict = { - \ 'Anders': ['ANders'], - \ 'anders@adamsgaard.dk': ['@@'], - \ 'https://adamsgaard.dk': ['adweb'], - \ } - -augroup litecorrect - autocmd! - autocmd FileType mail,markdown,tex call litecorrect#init(user_correct_dict) -augroup END - -augroup danish_symbols - " escape any of these by pressinv C-v before inserting the character - inoremap AE æ - inoremap OE ø - inoremap AA å -augroup END - -augroup abbreviations - iabbrev ssig -- <cr>Anders Damsgaard, Ph.D.<cr>https://adamsgaard.dk -augroup END diff --git a/links/.vim/plugin/keybinds.vim b/links/.vim/plugin/keybinds.vim @@ -1,227 +0,0 @@ -""" Keyboard shortcuts - -" Save with ZX -nnoremap ZX :w<CR> - -" use space instead of \ as leader -let mapleader="\<Space>" - -" Shortcut to reload .vimrc and ~/.vim/plugin/*.vim -nnoremap <leader>R :source $MYVIMRC<CR>:runtime! plugin/*.vim<CR>:echo "Configuration reloaded"<CR> - -" toggle distraction-free editing -nnoremap <leader>y :set nolist<CR>:Goyo<CR> -nnoremap <leader>Y :set nolist<CR>:Goyo!<CR>:source $MYVIMRC<CR> -"nmap <leader>Y :set nolist<CR>:Goyo!<CR>:source $MYVIMRC<CR> - -nnoremap <Leader>w :w<CR> -nnoremap <Leader>W :wa<CR> -nnoremap <Leader>q :q<CR> -nnoremap <leader>Q :qa<CR> -nnoremap <Leader>x :x<CR> - -" Jump to previous buffer -nnoremap <leader><tab> :e#<CR> - -" toggle spelling -nnoremap <leader>s :set spell!<CR> - -" toggle line numbering -nnoremap <leader>N :set number!<CR> - -" toggle relative line numbering -nnoremap <leader>n :set relativenumber!<CR> - -" toggle cursorline/column -"nnoremap <leader>c :set cursorline!<CR>:set cursorcolumn!<CR> - -" netrw -nnoremap <leader>d :Lex<CR> -nnoremap <leader>h :Hex<CR> - -" Toggle TAB and EOL symbols -"nnoremap <leader>l :set list!<CR> - -nnoremap <leader>e :e -nnoremap <leader>% :vsplit -nnoremap <leader>" :split - -" shortcuts to commonly used files -nnoremap <leader>CC :e $MYVIMRC<CR> -nnoremap <leader>CO :e ~/.vim/plugin/ -nnoremap <leader>CK :e ~/.vim/plugin/keybinds.vim<CR> -nnoremap <leader>CA :e ~/.vim/plugin/appearance.vim<CR> -nnoremap <leader>CG :e ~/.vim/plugin/00-general.vim<CR> -nnoremap <leader>CP :e ~/.vim/plugins.vim<CR> -nnoremap <leader>T :e ~/doc/todo.md<CR> -nnoremap <leader>B :e ~/articles/own/BIB.bib<CR> - -nnoremap <leader>r :ScholarRef - -" insert date and time -nnoremap <leader>D :read !date +"\# \%Y-\%m-\%d \%T \%Z (\%z UTC)"<CR> - -" job execution -nnoremap <leader>m :Make<CR> -nnoremap <leader>M :Make!<CR> -nnoremap <leader>! :Start! -nnoremap <leader>c :Copen<CR> - -" toggle x mark in checklist fields -nnoremap <leader>X :s/\[[x ]\]/\=submatch(0) == '[x]' ? '[ ]': '[x]'/<CR>:noh<CR> - -" toggle view of completed items in todo (using vim-foldsearch) -nnoremap <leader>u :Fp ^- \[ \]<CR> -nnoremap <leader>U :Fe<CR> - -if exists(':tnoremap') - " escape from terminal mode - tnoremap <Esc> <C-\><C-n> - - " send escape to terminal - tnoremap <M-[> <Esc> - tnoremap <C-v><Esc> <Esc> - - " navigate away from terminals - tnoremap <C-h> <C-\><C-n><C-w>h - tnoremap <C-j> <C-\><C-n><C-w>j - tnoremap <C-k> <C-\><C-n><C-w>k - tnoremap <C-l> <C-\><C-n><C-w>l -end - -" launch terminal in current window -"nnoremap <leader><CR> :terminal bash<CR> -nnoremap <leader><CR> :terminal<CR> - -if exists(':TmuxNavigateLeft') - let g:tmux_navigator_no_mappings = 1 - nnoremap <silent> <C-h> :TmuxNavigateLeft<CR> - nnoremap <silent> <C-j> :TmuxNavigateDown<CR> - nnoremap <silent> <C-k> :TmuxNavigateUp<CR> - nnoremap <silent> <C-l> :TmuxNavigateRight<CR> -end - -" equal split size -nnoremap <leader>= <C-w>= - -" bindings to git cmd -"nmap <leader>g :Start git commit -a -v -S<CR> -"nmap <leader>G :Start git commit -a -v -S && git push<CR> - -" bindings to fugitive -nnoremap <leader>ga :Gwrite<CR> -nnoremap <leader>gm :Gmove -nnoremap <leader>gb :Gblame<CR> -nnoremap <leader>gw :Gbrowse<CR> -nnoremap <leader>gs :Gstatus<CR> -nnoremap <leader>gc :Gcommit -v -S<CR> -nnoremap <leader>gp :Gpush<CR> -nnoremap <leader>gP :Gpull<CR> - -" Use home row keys as Esc -inoremap jk <Esc> -inoremap lkj <Esc>:write<CR> - -" Improve navigation on wrapped lines -"nnoremap j gj -"nnoremap k gk - -" Disable arrow keys -noremap <Left> <Nop> -noremap <Right> <Nop> -noremap <Up> <Nop> -noremap <Down> <Nop> -inoremap <Left> <Nop> -inoremap <Right> <Nop> -inoremap <Up> <Nop> -inoremap <Down> <Nop> - -" Update ctags -"nnoremap <leader>c :Start ctags -R --python-kinds=-i --langmap=c++:.cu,c++:.cuh .<CR> - -" file search -if executable("rg") - command! -bang -nargs=* Rg - \ call fzf#vim#grep( - \ 'rg --column --line-number --no-heading --color=always --ignore-case '.shellescape(<q-args>), 1, - \ <bang>0 ? fzf#vim#with_preview('up:60%') - \ : fzf#vim#with_preview('right:50%:hidden', '?'), - \ <bang>0) - nnoremap <Leader>a :Rg<CR> -elseif executable("ag") - nnoremap <Leader>a :Ag<CR> -end - -" using fzf.vim -if exists(':Buffers') - nnoremap , :Buffers<CR> -else - nnoremap , :ls<CR>:buffer<Space> -end -nnoremap <leader>o :History<CR> -nnoremap <leader>f :Files<CR> -nnoremap <leader>F :GFiles<CR> -nnoremap <leader>l :Lines<CR> -nnoremap <leader>L :BLines<CR> -nnoremap <leader>t :Tags<CR> - -" Copy and paste to system clipboard with <Space>v and <Space>y -xnoremap <Leader>y "+y -xnoremap <Leader>d "+d -nnoremap <Leader>p "+p -nnoremap <Leader>P "+P -xnoremap <Leader>v "+p -xnoremap <Leader>V "+P - -" align things into columns interactively -xnoremap <silent> <Enter> :EasyAlign<cr> -" Start interactive EasyAlign in visual mode (e.g. vipga) -xnoremap ga <Plug>(EasyAlign) -" Start interactive EasyAlign for a motion/text object (e.g. gaip) -nnoremap ga <Plug>(EasyAlign) - -nnoremap <leader>S :Startify<cr> -let g:startify_custom_header = - \ map(split(system('fortune -s | cowthink'), '\n'), '" ".v:val') - \ + ['',''] - -" lookup word under cursor, dismiss results with q -nnoremap <leader>J :OnlineThesaurusCurrentWord<CR> - -" ALE navigation -nnoremap <silent> [W :ALEFirst<cr> -nnoremap <silent> [w :ALEPreviousWrap<cr> -nnoremap <silent> ]w :ALENextWrap<cr> -nnoremap <silent> ]W :ALELast<cr> - -" cycle through Wordy's writing dictionaries -nnoremap <silent> ]d :NextWordy<cr> -nnoremap <silent> [d :PrevWordy<cr> - -" Add completion bindings (cycle with C-n, C-p), see :h ins-completion -" <C-x><C-l>: while line -" <C-x><C-n>: keywords in current file -" <C-x><C-i>: keywords in current and included files -" <C-x><C-k>: keywords in dictionary (:set dictionary) -" <C-x><C-t>: keywords in thesaurus (not functional) -" <C-x><C-]>: tags -" <C-x><C-f>: file names -" <C-x><C-d>: definitions or macros -" <C-x><C-v>: vim command-line -" <C-x><C-v>: omni completion -" <C-x>s: spelling suggestions -" Other: -" <C-x><C-u>: emoji -" <C-x><C-z>: unicode - -" janko-m/vim-test -" in a test file run tests nearest to the cursor otherwise the last nearest test -nnoremap <silent> t<C-n> :TestNearest<CR> -" in a test file run all tests -nnoremap <silent> t<C-f> :TestFile<CR> -" run entire test suite -nnoremap <silent> t<C-s> :TestSuite<CR> -" run last test -nnoremap <silent> t<C-l> :TestLast<CR> -" visit the test file from the last test -nnoremap <silent> t<C-g> :TestVisit<CR> diff --git a/links/.vim/plugins.vim b/links/.vim/plugins.vim @@ -1,171 +0,0 @@ -""""" PLUGIN SOURCES """"""""""""""""""""""""""""""""""""""""""""""""""""""""""" - -call plug#begin('~/.vim/vim-plugs') " Specify a directory for plugins - -""""" Misc """""" -Plug 'tpope/vim-unimpaired' " nav. errors with ]q, newlines with ]spc -Plug 'junegunn/vim-emoji' " autocomplete :smiley: with C-x C-u -Plug 'chrisbra/unicode.vim' " autocomplete unicode with C-x C-z -Plug 'tpope/vim-characterize' " complete info of char under cursor with ga - -""""" Appearance """""" -Plug 'drzel/vim-line-no-indicator' " show current line with single character -"Plug 'jacoborus/tender' " color scheme -Plug 'junegunn/rainbow_parentheses.vim' " colorcode paranthesis pairs -Plug 'mhinz/vim-startify' " startup screen -Plug 'embear/vim-foldsearch' " hide/show lines matching a pattern -Plug 'junegunn/goyo.vim' " distraction-free editing in prose mode -Plug 'junegunn/limelight.vim' " highlight current paragraph in goyo -Plug 'Yggdroot/indentLine' " show indentation level with vertical lines -Plug 'vim-scripts/AnsiEsc.vim' " show ANSI colors with :AnsiEsc - -"""""" File system """"""" -Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } -Plug 'junegunn/fzf.vim' " fzf commands from within vim -Plug 'ludovicchabant/vim-gutentags' " automatic tag generation -Plug 'tpope/vim-eunuch' " :SudoWrite, :Rename, :Move, etc - -"""""" Syntax checking """""" -Plug 'w0rp/ale' " asynchronous syntax check -Plug 'lukhio/adVIMsor', { 'on': 'AdVIMsorEnable' } " checks with :AdVIMsor* - -"""""" Buffer motion """""" -Plug 'christoomey/vim-tmux-navigator' " seamless tmux pane/vim window navigation -Plug 'junegunn/vim-slash' " clear highlight when moving cursor -Plug 'justinmk/vim-sneak' " move cursor s{char}{char}, use cl for sub - -" """""" Text editing """""" -Plug 'tpope/vim-surround' " modify surrounding symbols -Plug 'tpope/vim-repeat' " repeat plugin bindings with . -Plug 'tomtom/tcomment_vim' " comment line with gcc, motion with gc -Plug 'tpope/vim-abolish' " :%Subvert/facilit{y,ies}/building{,s}/g -Plug 'junegunn/vim-easy-align' " align in columns (select > return > space) -Plug 'reedes/vim-litecorrect' " autocorrect common typos -Plug 'reedes/vim-pencil' " used for line wrapping in mails - -"""""" Writing """""" -Plug 'szw/vim-dict' " query dict.org using :Dict -Plug 'junegunn/vim-online-thesaurus' " query with :OnlineThesaurusCurrentWord -Plug 'reedes/vim-wordy' " better writing with :Wordy -Plug 'dbmrq/vim-ditto' " detect duplicates with :Ditto - -"""""" Autocomplete """""" -Plug 'honza/vim-snippets' " snippets are separate from ultisnips -Plug 'SirVer/ultisnips' " complete boilerplate code - -"""""" Version control """""" -Plug 'tpope/vim-fugitive' " :Gread, :Gwrite, etc. -Plug 'tpope/vim-rhubarb' " enables fugitive's :Gbrowse for Github -Plug 'airblade/vim-gitgutter' " show line changes since last git commit - -"""""" Processes """""" -Plug 'tpope/vim-dispatch' " for asynchronous :Make -Plug 'janko-m/vim-test' " test with t<C-n>, t<C-f>, t<C-s> - -"""""" File types """""" - -" Go -Plug 'fatih/vim-go' -Plug 'nsf/gocode' - -" Julia -Plug 'JuliaLang/julia-vim' - -" Python -Plug 'davidhalter/jedi-vim' -Plug 'nvie/vim-flake8' -Plug 'vim-scripts/indentpython.vim' -"Plug 'klen/python-mode' - -" HTML/PHP/JS -Plug 'captbaritone/better-indent-support-for-php-with-html' -Plug 'pangloss/vim-javascript' - -" Markdown -Plug 'tpope/vim-markdown' - -" Mail -Plug 'vim-scripts/mutt-aliases', { 'for': 'mail' } " complete aliases w C-x C-u - -" LaTeX -Plug 'lervag/vimtex' -Plug 'anders-dc/vim-scholarref' " search bibtex refs from web - -" Vimscript -Plug 'junegunn/vader.vim' " testing framework - -" SQL -Plug 'lifepillar/pgsql.vim' " PostgreSQL highlighting and syntax -Plug 'ivalkeen/vim-simpledb' " PostgreSQL/MySQL execution from vim buffer - " add following to top of .sql file: - " -- -h localhost -U postgres -d my_database - " <Enter>: execute entire file - " <leader><Enter>: execute current block - " <Enter>: execute current visual selection - -call plug#end() " Initialize plugin system - - -""""" PLUGIN SETTINGS """""""""""""""""""""""""""""""""""""""""""""""""""""""""" - -let g:foldsearch_disable_mappings = 1 -let g:gitgutter_map_keys = 0 - -let g:go_version_warning = 0 - -let g:sneak#label = 1 - -" better key bindings for UltiSnipsExpandTrigger -let g:UltiSnipsExpandTrigger = "<tab>" -let g:UltiSnipsJumpForwardTrigger = "<tab>" -let g:UltiSnipsJumpBackwardTrigger = "<s-tab>" -let g:UltiSnipsSnippetsDir = "~/.vim/UltiSnips" " default write path - -" vim-markdown configuration -let g:markdown_fenced_languages = ['html', 'python', 'bash=sh', 'julia', 'c', 'cpp'] -let g:markdown_syntax_conceal = 0 - -let g:limelight_conceal_ctermfg = 'gray' -let g:limelight_conceal_ctermfg = 240 -let g:goyo_width = 82 -if !exists('*s:goyo_enter') - function! s:goyo_enter() abort - silent !tmux set status off - silent !tmux list-panes -F '\#F' | grep -q Z || tmux resize-pane -Z - set noshowmode - set noshowcmd - set nolist - set scrolloff=999 - "Limelight - endfunction -end - -if !exists('*s:goyo_leave') - function! s:goyo_leave() abort - silent !tmux set status on - silent !tmux list-panes -F '\#F' | grep -q Z && tmux resize-pane -Z - Limelight! - source $MYVIMRC - endfunction -end - -augroup GoyoEvents - autocmd! User GoyoEnter nested call <SID>goyo_enter() - autocmd! User GoyoLeave nested call <SID>goyo_leave() -augroup END - -" run vim-emoji on entire document -command! -range EmojiReplace <line1>,<line2>s/:\([^:]\+\):/\=emoji#for(submatch(1), submatch(0))/g - -" disable default thesaurus bindings -let g:online_thesaurus_map_keys = 0 - -" select indentation character (:IndentLinesToggle) (¦┆│⎸▏) -"let g:indentLine_char = '┆' -let g:indentLine_char = '▏' - -" ignore .gitignore files from ctags -let g:gutentags_file_list_command = 'rg --files' - -" set postgresql syntax as default for sql files -let g:sql_type_default = 'pgsql' diff --git a/links/.vim/vimrc b/links/.vim/vimrc @@ -1,11 +0,0 @@ -" temporarily fix deprecation warning -if has('python3') - silent! python3 1 -endif - -" make sure that plugins are sourced first -if has("win32") - source ~/vimfiles/plugins.vim -else - source ~/.vim/plugins.vim -endif diff --git a/links/.vim/vimrc.noplugs b/links/.vim/vimrc.noplugs @@ -1,8 +0,0 @@ -" temporarily fix deprecation warning -if has('python3') - silent! python3 1 -endif - -set nocompatible -filetype plugin indent on -syntax enable diff --git a/links/.vim/vimrc.tiny b/links/.vim/vimrc.tiny @@ -1,13 +0,0 @@ -" Vim configuration file, in effect when invoked as "vi". The aim of this -" configuration file is to provide a Vim environment as compatible with the -" original vi as possible. Note that ~/.vimrc configuration files as other -" configuration files in the runtimepath are still sourced. -" When Vim is invoked differently ("vim", "view", "evim", ...) this file is -" _not_ sourced; /etc/vim/vimrc and/or /etc/vim/gvimrc are. - -" Debian system-wide default configuration Vim -set runtimepath=~/.vim,/var/lib/vim/addons,/usr/share/vim/vimfiles,/usr/share/vim/vim74,/usr/share/vim/vimfiles/after,/var/lib/vim/addons/after,~/.vim/after - -set compatible - -" vim: set ft=vim: diff --git a/links/.vimpcrc b/links/.vimpcrc @@ -1,56 +0,0 @@ -" Configuration of vimpc is done using vimpc commands -" these can include commands which require an mpd connection -" -" NB: Comments are very basic and must be on their own line -echo Parsing config file - -" Set the default tab -set window playlist - -" Set the windows to show at startup -set windows library,playlist - -" Stop playing music when we quit -"set stoponquit - -" A silly example of an alias -"alias smiths deleteall; findartist! The Smiths; play 1 - -" Example maps -" map the F key to change to the browse window, go to the first line and enter search mode -"map F :browse<C-M>gg/ -" map @ to switch to add next, add a song, then change back -"map @ :set add next<C-M>a:set add end<C-M> - -" Connect to a specific host using the config file -"connect somehost someport - -" Turn consume on when we connect -"consume on - -" Ensure that the database is up to date each connect -"update - -" A more complex example, When we start vimpc -" - clear the playlist -" - add all songs -" - shuffle -" - start playling -"deleteall -"addall -"shuffle -"play 1 - -" Color the statusline and tabs -"highlight status blackbg -"highlight tab blackbg -highlight status default -highlight tab default - -" Case insensitive search -set ignorecase - -" Show albums in library by default -set expand-artists - -echo Config File Complete diff --git a/links/.vimperator/colors/darkness2.vimp b/links/.vimperator/colors/darkness2.vimp @@ -1,68 +0,0 @@ -" ==Vimperator_Color_Scheme== -" name: Darkness -" ==Darkness_Colorscheme_Settings== - -"StatusLine settings -"hi StatusLine color: #ffffff; background: #000000; "font-size: 8pt; -hi StatusLine color: #ffffff; background: #000000; font-size: 8pt; -"hi StatusLineBroken color: #000000; background: #afafff; "font-size: 8pt; -"hi StatusLineSecure color: #000000; background: #afffaf; "font-size: 8pt; - -"CmdLine settings excluding Gradient -hi Normal color: #afafaf; background: #222222; -hi CmdLine background: #222222; color: #afafaf; font-size: 9pt; -hi CompDesc color: #c6c6c6; width: 50%; font-size: 9pt; -hi CompIcon width: 16px; min-width: 16px; display: inline-block; margin-right: .5ex; -hi CompItem[selected] background: #666666; color: #afafaf; -"hi CompLess text-align: center; height: 0; line-height: .5ex; padding-top: 1ex; -"hi CompMore text-align: center; height: .5ex; line-height: .5ex; margin-bottom: -.5ex; -hi CompMsg font-style: italic; margin-left: 16px; -hi CompResult width: 45%; overflow: hidden;font-size: 10pt; font-family: monospace; font-weight: normal; -hi CompTitle color: #afafaf; background: #222222; font-weight: bold; -hi CompTitle>* padding: 0 .5ex; -hi Filter font-weight: bold;color: #afafaf; - -"When using tab complete in CmdLine, line separating Title from function and description -"hi Gradient height: 1px; margin-bottom: -1px; margin-top: -1px; -"hi GradientLeft background-color: #00bbff; -"hi GradientRight background-color: #222222; - -"Used with ]f and [f -hi FrameIndicator background-color: #222222; opacity: 0.5; z-index: 999; position: fixed; top: 0; bottom: 0; left: 0; right: 0; - -hi Bell border: 0 none; background-color: #222222; -hi ErrorMsg color: #ffffff; background: red; font-weight: bold; - - -"Hint section -"hi Hint font-family: Sans; font-size: 10px; font-weight: bold; color: #f6e9e9; background-color: red; border-color: ButtonShadow; border-width: 0px; border-style: solid; padding 0px 1px 0px 1px; -hi Hint font-family: Sans; font-size: 12px; font-weight: bold; color: white; background-color: rgba(0, 0, 0, 0.5); border: solid 1px LightGray; -hi Hint::after content: attr(number); -hi HintActive background: blue; color: #f6e9e9; -hi HintElem background-color: #222222; color: #f6e9e9; -hi HintImage opacity: .5; - -"Other important stuff -hi InfoMsg color: #afafaf; background: #222222; -hi Message white-space: normal; min-width: 100%; padding-left: 2em; text-indent: -2em; display: block; -hi WarningMsg color: red; background: #222222; -hi ModeMsg color: #afafaf; background: #222222; "CmdLine when Not in Use -hi MoreMsg color: #afafaf; background: #222222; -hi NonText color: lightblue; min-height: 16px; padding-left: 2px; -hi Question color: #ffffff; background: #222222; font-weight: bold; -"hi Search font-size: inherit; padding: 0; color: #222222; background-color: yellow; padding: 0; -hi Function color: lightgreen; background: #222222; -hi Number color: tan; background: #222222 -hi String color: #222222; background: #afafaf; -hi Tag color: #222222; background: #afafaf; -hi Title color: #222222; background: #afafaf; font-weight: bold; -hi URL text-decoration: none; color: lightblue; background: inherit; -hi URL:hover text-decoration: underline; cursor: pointer; -hi LineNr color: #afafaf; background: #222222; - -"style -name statusbar chrome://* <<EOM -"#status-bar statusbarpanel { padding: 0 1px !important; } -"statusbarpanel > * { margin: 0 !important; padding: 0 2px 0 0 !important; } -"EOM - -"For other descriptions of each item, please see ``Styling'' section included with Vimperator diff --git a/links/.vimperator/colors/phallus.vimp b/links/.vimperator/colors/phallus.vimp @@ -1,75 +0,0 @@ -" ==Vimperator_Color_Scheme== -" name: Darkness -" ==Darkness_Colorscheme_Settings== - -"StatusLine settings -hi StatusLine color: #9a875f; background: #181512; font-size: 8pt; -"hi StatusLineBroken color: #9a875f; background: #f9f9f9; "font-size: 8pt; -"hi StatusLineSecure color: #9a875f; background: #f9f9f9; "font-size: 8pt; - -"CmdLine settings excluding Gradient -hi Normal color: #9a875f; background: #181512; -hi CmdLine background: #181512; color: #9f7155; font-size: 9pt; -hi CompDesc color: #766782; width: 50%; font-size: 9pt; -hi CompIcon width: 0px; min-width: 0px; visibility: hidden; display: inline-block; margin-right: .5ex; -hi CompItem[selected] background: #181512; color: #D6C3B6; -"hi CompLess text-align: center; height: 0; line-height: .5ex; padding-top: 1ex; -"hi CompMore text-align: center; height: .5ex; line-height: .5ex; margin-bottom: -.5ex; -hi CompMsg font-style: italic; margin-left: 12px; -hi CompResult width: 45%; overflow: hidden;font-size: 10pt; font-family: lemon; font-weight: normal; -hi CompTitle color: #646a6d; background: #181512; -hi CompTitle>* padding: 0 .5ex; -hi Filter color: #afafaf; - -"When using tab complete in CmdLine, line separating Title from function and description -"hi Gradient height: 1px; margin-bottom: -1px; margin-top: -1px; -"hi GradientLeft background-color: #181512; -"hi GradientRight background-color: #181512; - -"Used with ]f and [f -hi FrameIndicator background-color: #3f3f3f; opacity: 0.5; z-index: 999; position: fixed; top: 0; bottom: 0; left: 0; right: 0; - -hi Bell border: 0 none; background-color: #181512; -hi ErrorMsg color: #1c1c1c; background: #181512; - - -"Hint section -"hi Hint font-family: Sans; font-size: 10px; color: #f6e9e9; background-color: red; border-color: ButtonShadow; border-width: 0px; border-style: solid; padding 0px 1px 0px 1px; -hi Hint font-family: lemon; font-size: 10px; color: white; background-color: rgba(0, 0, 0, 0.5); border: solid 1px black; -hi Hint::after content: attr(number); -hi HintActive background-color: rgba(0,0,0,0.5); -hi HintElem 0; -hi HintImage opacity: .5; - -"Other important stuff -hi InfoMsg color: #1c1c1c; background: #181512; -hi Message white-space: normal; min-width: 100%; padding-left: 2em; text-indent: -2em; display: block; -hi WarningMsg color: 1c1c1c; background: #181512; -hi ModeMsg color: #1c1c1c; background: #181512; "CmdLine when Not in Use -hi MoreMsg color: #1c1c1c; background: #181512; -hi NonText color: lightblue; min-height: 16px; padding-left: 2px; -hi Question color: #1c1c1c; background: #181512; -"hi Search font-size: inherit; padding: 0; color: #eab9d5; background-color: black; padding: 0; -hi Function color: #9a875f; background: #181512; -hi Number color: #9a875f; background: #181512; -hi String color: #9a875f; background: #181512; -hi Tag color: #9a875f; background: #181512; -hi Title color: #1c1c1c; background: #181512; -hi URL text-decoration: none; color: lightblue; background: inherit; -hi URL:hover text-decoration: underline; cursor: pointer; -hi LineNr color: #9a875f; background: #181512; - -"style -name statusbar chrome://* <<EOM -"#status-bar statusbarpanel { padding: 0 1px !important; } -"statusbarpanel > * { margin: 0 !important; padding: 0 2px 0 0 !important; } -"EOM - -hi ContentSeparator border-top: 0px; - -"For other descriptions of each item, please see ``Styling'' section included with Vimperator - -hi CmdLine>* font-family: lemon -hi CompDesc font-family: lemon -hi CompResult font-family: lemon -hi StatusLine font-family: lemon -hi PromptText width: 0px diff --git a/links/.vimperatorrc b/links/.vimperatorrc @@ -1,47 +0,0 @@ -""" VIMPERATOR Firefox plugin configuration -" see https://github.com/mashiro/dot-files/blob/master/.vimperatorrc - -"colors darkness2 - -highlight Bell display: none; - -""" What characters to use for labeling hints (f) -" Numbers only -"set hintchars=0123456789 -" Home row -"set hintchars=hjklasdf -" Smart row -set hintchars=hjklasdfgyuiopqwertnmzxcvb -"set hintchars=hutenosa - -" Define appearance of hints (CSS) -highlight Hint font-size:150%;color:black;background-color:yellow;padding:2px; - -""" Default search engine -" Manage search engines with `:dialog searchengine` -"set defsearch=startpage -set defsearch=duckduckgo - -""" General options -set complete=slS -set newtab=all -set popups=tab -set nohlsearch -set ignorecase -set incsearch -set smartcase -set focuscontent -set visualbell -set toolbars=noaddons,nobookmarks,nomenu,nonavigation,tabs - -""" about:config -"set! general.autoScroll=false -"set! browser.tabs.closeButtons=2 -"set! mousewheel.withnokey.numlines=6 - -""" Scrolling -nnoremap j 3j -nnoremap k 3k - - -" vim: ts=2 sw=2 sts=2 fdm=marker ft=vimperator diff --git a/links/.w3m/bookmark.html b/links/.w3m/bookmark.html @@ -1,100 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> -<head> -<meta charset="utf-8"/> -<title>Bookmarks</title> -</head> -<body> -<h1><a href="bookmarks.html">Bookmarks</a></h1> -<h2>Search</h2> -<ul> -<li><a href="https://duckduckgo.com/lite/">DuckDuckGo (https)</a> -<li><a href="https://en.wikipedia.org/wiki/Main_Page">Wikipedia (EN) Main Page</a> -<li><a href="https://wiki.archlinux.org/index.php">Arch Wiki</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>News</h2> -<ul> -<li><a href="https://text.npr.org/">NPR (text only)</a> -<li><a href="https://dr.dk/nyheder/">DR Nyheder</a> -<li><a href="https://lite.cnn.io/en">CNN (text only)</a> -<li><a href="https://www.nytimes.com/">New York Times</a> -<li><a href="https://www.bbc.com/news/science_and_environment">BBC Science &amp; Environment</a> -<li><a href="https://news.ycombinator.com/">Hacker News</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>Security</h2> -<ul> -<li><a href="https://check.torproject.org/">Tor check</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>Photography</h2> -<ul> -<li><a href="https://www.reidreviews.com/reidreviews/login.asp">Reid Reviews</a> -<li><a href="http://www.fredmiranda.com/forum/board/55">Fred Miranda: Alternative Gear &amp; Lenses</a> -<li><a href="https://www.photrio.com/forum/">Photrio</a> -<li><a href="https://www.largeformatphotography.info/forum/">Large Format Photography Forum</a> -<li><a href="https://www.photo.net/discuss/forums/film-and-processing.1822/">Photo.net - Film and Processing</a> -<li><a href="http://www.film-and-darkroom-user.org.uk/forum/fadu_front_page.php">Film and Darkroom User</a> -<li><a href="http://www.lensworkonline.com/login.php">LensWork Online</a> -<li><a href="https://luminous-landscape.com/">Luminous Landscape</a> -<li><a href="https://forum.luminous-landscape.com/">Luminous Landscape - Forum</a> -<li><a href="https://www.l-camera-forum.com/forum/216-leica-m-system/">Leica M System - Leica Forum</a> -<li><a href="https://www.rangefinderforum.com/forums/forumdisplay.php?f=226">Rangefinder Forum</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>Work</h2> -<ul> -<li><a href="https://intra.mfvm.dk/mst/Sider/Welcome.aspx">MST Intra</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>Media</h2> -<ul> -<li><a href="https://www.youtube.com/feed/subscriptions">YouTube</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>Development</h2> -<ul> -<li><a href="https://gitlab.com/GeoDataHub/">Gitlab/GeoDataHub</a> -<li><a href="https://gitlab.com/groups/GeoDataHub/-/issues">Gitlab/GeoDataHub Issues</a> -<li><a href="https://github.com/">Github</a> -<li><a href="https://gitlab.com/admesg">Gitlab/admesg</a> -<li><a href="https://github.com/anders-dc">Github/anders-dc</a> -<li><a href="https://gitlab.com/admesg/dotfiles">Gitlab/admesg/dotfiles</a> -<li><a href="https://github.com/anders-dc/sphere">Github/anders-dc/sphere</a> -<li><a href="https://github.com/anders-dc/Granular.jl">Github/anders-dc/Granular.jl</a> -<li><a href="https://travis-ci.org/anders-dc/Granular.jl">Travis-CI/anders-dc/Granular.jl</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>Local</h2> -<ul> -<li><a href="http://skoerpingskole.skoleporten.dk/sp">Skørping Skole</a> -<li><a href="http://www.skoerpingskole.dk/Fi">Skørping Skole Forældreintra</a> -<li><a href="https://rebild.inst.dk/Login.aspx?ReturnUrl=%2fUser%2fEntryPoint.aspx%3fLocation%3dIP.F&Location=IP.F">Skovbjoernen</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>Academia</h2> -<ul> -<li><a href="https://www.library.caltech.edu/journal-title-abbreviations">Journal Title Abbreviations - Caltech Library</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>Docs</h2> -<ul> -<li><a href="https://docs.julialang.org/en/latest/">Julia (latest)</a> -<li><a href="https://anders-dc.github.io/Granular.jl/latest/index.html">Granular.jl (latest)</a> -<li><a href="https://golang.org/doc/">Go Documentation</a> -<li><a href="http://mywiki.wooledge.org/BashGuide">BashGuide - Greg Wooledge's Wiki</a> -<li><a href="https://jekyllrb.com/docs/home/">Jekyll Docs</a> -<!--End of section (do not delete this comment)--> -</ul> -<h2>Weather</h2> -<ul> -<li><a href="https://servlet.dmi.dk/byvejr/servlet/byvejr_dag1?by=9520&mode=long&eps=true">DMI: Skoerping 48h</a> -<li><a href="https://servlet.dmi.dk/byvejr/servlet/byvejr?by=9520&tabel=dag3_9&eps=true">DMI: Skoerping 3-9d</a> -<li><a href="http://www.dmi.dk/vejr/maalinger/radar-nedboer/">DMI: Radar</a> -<li><a href="http://djlorenz.github.io/astronomy/lp2006/overlay/dark.html">Light Pollution Atlas 2006</a> -<!-- <li><a href="http://www.cleardarksky.com/c/AAAP1_NJkey.html?1">Clear Sky Chart - Princeton, NJ</a> --> -<!--End of section (do not delete this comment)--> -</ul> -</body> -</html> diff --git a/links/.w3m/config b/links/.w3m/config @@ -1,139 +0,0 @@ -simple_preserve_space 0 -gb18030_as_ucs 0 -strict_iso2022 1 -use_jisx0213 0 -use_jisx0212 0 -use_jisx0201k 0 -use_jisc6226 0 -use_jisx0201 0 -use_gb12345_map 0 -fix_width_conv 1 -search_conv 1 -pre_conv 0 -ucs_conv 1 -use_language_tag 1 -east_asian_width 0 -use_combining 1 -use_wide 1 -ext_halfdump 0 -follow_locale 1 -system_charset UTF-8 -auto_detect 2 -document_charset UTF-8 -display_charset UTF-8 -cookie_avoid_wrong_number_of_dots -cookie_accept_domains -cookie_reject_domains -accept_bad_cookie 0 -accept_cookie 0 -show_cookie 1 -use_cookie 1 -ssl_ca_file -ssl_ca_path /etc/ssl/certs -ssl_key_file -ssl_cert_file -ssl_verify_server 1 -ssl_forbid_method 2 -no_cache 0 -noproxy_netaddr 0 -no_proxy -ftp_proxy -https_proxy -http_proxy -use_proxy 1 -max_news 50 -nntpmode -nntpserver -dns_order 0 -meta_refresh 1 -follow_redirection 10 -default_url 1 -retry_http 1 -argv_is_url 1 -accept_media text/html, text/*;q=0.5, image/*, application/*, video/*, audio/*, zz-application/*, message/*, x-scheme-handler/*, inode/* -accept_encoding gzip, compress, bzip, bzip2, deflate -accept_language en;q=1.0 -no_referer 0 -user_agent -pre_form_file ~/.w3m/pre_form -ftppass_hostnamegen 0 -ftppasswd anonymous@ -disable_secret_security_check 0 -passwd_file ~/.w3m/passwd -use_lessopen 0 -bgextviewer 1 -extbrowser3 -extbrowser2 /Applications/Safari.app -extbrowser /usr/bin/mozilla -mailer -mailto_options 1 -editor sensible-editor -urimethodmap ~/.w3m//urimethodmap, /etc/w3m/urimethodmap -mailcap ~/.w3m/mailcap, /etc/w3m/mailcap, /etc/mailcap -mime_types ~/.w3m/mime.types, /etc/mime.types -index_file -cgi_bin -personal_document_root -document_root -keymap_file keymap -preserve_timestamp 1 -auto_uncompress 0 -decode_cte 0 -clear_buffer 1 -fixed_wheel_scroll_count 5 -relative_wheel_scroll_ratio 30 -relative_wheel_scroll 0 -reverse_mouse 0 -use_mouse 1 -ignorecase_search 1 -wrap_search 1 -mark_all_pages 0 -vi_prec_num 1 -emacs_like_lineedit 0 -mark 0 -close_tab_back 0 -confirm_qq 1 -save_hist 1 -history 10000 -use_history 1 -pagerline 10000 -visited_color magenta -visited_anchor 0 -active_color cyan -active_style 0 -bg_color terminal -mark_color cyan -form_color red -image_color green -anchor_color blue -basic_color terminal -color 1 -nextpage_topline 0 -label_topline 0 -show_srch_str 1 -show_lnum 0 -fold_line 0 -pseudo_inlines 1 -display_image 0 -view_unseenobject 1 -ignore_null_img_alt 1 -display_ins_del 1 -fold_textarea 0 -graphic_char 0 -alt_entity 0 -multicol 0 -dictcommand file:///$LIB/w3mdict.cgi -use_dictcommand 0 -dirlist_cmd file:///$LIB/dirlist.cgi -ext_dirlist 1 -display_lineinfo 0 -decode_url 0 -display_link_number 1 -display_link 1 -open_tab_dl_list 1 -open_tab_blank 0 -target_self 0 -frame 0 -pixel_per_char 10 -indent_incr 4 -tabstop 8 diff --git a/links/.w3m/keymap b/links/.w3m/keymap @@ -1,143 +0,0 @@ -# A sample of ~/.w3m/keymap (default) -# -# Ctrl : C-, ^ -# Escape: ESC-, M-, ^[ -# Space : SPC, ' ' -# Tab : TAB, ^i, ^I -# Delete: DEL, ^? -# Up : UP, ^[[A -# Down : DOWN, ^[[B -# Right : RIGHT, ^[[C -# Left : LEFT, ^[[D - -keymap C-@ MARK -keymap C-a LINE_BEGIN -keymap C-b MOVE_LEFT -keymap C-e LINE_END -keymap C-f MOVE_RIGHT -keymap C-g LINE_INFO -keymap C-h HISTORY -keymap TAB NEXT_LINK -keymap C-j GOTO_LINK -keymap C-k COOKIE -keymap C-l REDRAW -keymap C-m GOTO_LINK -keymap C-n MOVE_DOWN -keymap C-p MOVE_UP -keymap C-q CLOSE_TAB -keymap C-r ISEARCH_BACK -keymap C-s ISEARCH -keymap C-t TAB_LINK -keymap C-u PREV_LINK -keymap C-v NEXT_PAGE -keymap C-w WRAP_TOGGLE -keymap C-z SUSPEND - -keymap SPC NEXT_PAGE -keymap ! SHELL -keymap \" REG_MARK -keymap # PIPE_SHELL -keymap $ LINE_END -keymap ( UNDO -keymap ) REDO -keymap + NEXT_PAGE -keymap , LEFT -keymap - PREV_PAGE -keymap . RIGHT -keymap / SEARCH -keymap : MARK_URL -keymap ";" MARK_WORD -keymap < SHIFT_LEFT -keymap = INFO -keymap > SHIFT_RIGHT -keymap ? SEARCH_BACK -keymap @ READ_SHELL -keymap B BACK -keymap D DOWNLOAD_LIST -keymap E EDIT -keymap F FRAME -keymap G END -keymap H HELP -keymap I VIEW_IMAGE -keymap J UP -keymap K DOWN -keymap L LIST -keymap M EXTERN -keymap N SEARCH_PREV -keymap Q EXIT -keymap R RELOAD -keymap S SAVE_SCREEN -keymap T NEW_TAB -keymap U GOTO -keymap V LOAD -keymap W PREV_WORD -keymap Z CENTER_H -keymap [ LINK_BEGIN -keymap ] LINK_END -keymap \^ LINE_BEGIN -keymap a SAVE_LINK -keymap b PREV_PAGE -keymap c PEEK -keymap g BEGIN -keymap h MOVE_LEFT -keymap i PEEK_IMG -keymap j MOVE_DOWN -keymap k MOVE_UP -keymap l MOVE_RIGHT -keymap m MOUSE_TOGGLE -keymap n SEARCH_NEXT -keymap o OPTIONS -keymap q QUIT -keymap r VERSION -keymap s SELECT_MENU -keymap u PEEK_LINK -keymap v VIEW -keymap w NEXT_WORD -keymap z CENTER_V -keymap { PREV_TAB -keymap | PIPE_BUF -keymap } NEXT_TAB - -keymap M-TAB PREV_LINK -keymap M-C-j SAVE_LINK -keymap M-C-m SAVE_LINK - -keymap M-: MARK_MID -keymap M-< BEGIN -keymap M-> END -keymap M-I SAVE_IMAGE -keymap M-M EXTERN_LINK -keymap M-W DICT_WORD_AT -keymap M-a ADD_BOOKMARK -keymap M-b BOOKMARK -keymap M-c COMMAND -keymap M-e EDIT_SCREEN -keymap M-g GOTO_LINE -keymap M-k DEFINE_KEY -keymap M-l LIST_MENU -keymap M-m MOVE_LIST_MENU -keymap M-n NEXT_MARK -keymap M-o SET_OPTION -keymap M-p PREV_MARK -keymap M-s SAVE -keymap M-t TAB_MENU -keymap M-u GOTO_RELATIVE -keymap M-v PREV_PAGE -keymap M-w DICT_WORD - -keymap UP MOVE_UP -keymap DOWN MOVE_DOWN -keymap RIGHT MOVE_RIGHT -keymap LEFT MOVE_LEFT - -keymap M-[E MENU -keymap M-[L MENU -keymap M-[Z PREV_LINK - -keymap M-[1~ BEGIN -keymap M-[2~ MENU -keymap M-[4~ END -keymap M-[5~ PREV_PAGE -keymap M-[6~ NEXT_PAGE -keymap M-[28~ MENU - diff --git a/links/.weechat/alias.conf b/links/.weechat/alias.conf @@ -1,49 +0,0 @@ -# -# 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" -add = "toggletime /togglestr weechat.look.buffer_time_format!${color:240}%H${color:239}%M${color:236}%S!${color:238}%d${color:237}%m${color:240}%H${color:239}%M${color:236}%S" -AME = "allchan /me" -AMSG = "allchan /msg *" -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 merge" -WI = "whois" -WII = "whois $1 $1" -WW = "whowas" - -[completion] -MSGBUF = "%(buffers_plugins_names)" diff --git a/links/.weechat/aspell.conf b/links/.weechat/aspell.conf @@ -1,33 +0,0 @@ -# -# weechat -- aspell.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 = "ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic" -default_dict = "en" -during_search = off -enabled = on -real_time = off -suggestions = 3 -word_min_length = 2 - -[dict] - -[look] -suggestion_delimiter_dict = " / " -suggestion_delimiter_word = "," - -[option] diff --git a/links/.weechat/autosort.conf b/links/.weechat/autosort.conf @@ -1,22 +0,0 @@ -# -# weechat -- autosort.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 -# - -[sorting] -case_sensitive = off -replacements = "[["##", "#"], ["##", "#"], ["##", "#"]]" -rules = "[["core", 0], ["irc", 2], ["*", 1], ["irc.irc_raw", 0], ["irc.server", 1], ["irc.server.*.&*", 0], ["irc.server.*.#*", 1], ["irc.server.*.\\*status", 2], ["irc.server.*.&*", 0], ["irc.server.*.#*", 1], ["irc.server.*.\\*status", 2], ["irc.server.*.&*", 0], ["irc.server.*.#*", 1], ["irc.server.*.\\*status", 2]]" -signal_delay = 5 -signals = "buffer_opened buffer_merged buffer_unmerged buffer_renamed" -sort_on_config_change = on - -[v3] -helpers = "{"core_first": "${if:${buffer.full_name}!=core.weechat}", "irc_raw_last": "${if:${buffer.full_name}==irc.irc_raw}", "irc_last": "${if:${buffer.plugin.name}==irc}", "hashless_name": "${info:autosort_replace,#,,${buffer.name}}", "irc_first": "${if:${buffer.plugin.name}!=irc}", "irc_raw_first": "${if:${buffer.full_name}!=irc.irc_raw}"}" -rules = "["${core_first}", "${irc_last}", "${buffer.plugin.name}", "${irc_raw_first}", "${if:${plugin}==irc?${server}}", "${if:${plugin}==irc?${info:autosort_order,${type},server,*,channel,private}}", "${if:${plugin}==irc?${hashless_name}}", "${buffer.full_name}"]" diff --git a/links/.weechat/buffer_autoset.conf b/links/.weechat/buffer_autoset.conf @@ -1,16 +0,0 @@ -# -# weechat -- buffer_autoset.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] -instant = on -timer = 1 - -[buffer] diff --git a/links/.weechat/buffers.conf b/links/.weechat/buffers.conf @@ -1,80 +0,0 @@ -# -# weechat -- buffers.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] -current_bg = red -current_fg = lightcyan -default_bg = default -default_fg = default -hotlist_highlight_bg = default -hotlist_highlight_fg = magenta -hotlist_low_bg = default -hotlist_low_fg = white -hotlist_message_bg = default -hotlist_message_fg = yellow -hotlist_private_bg = default -hotlist_private_fg = lightgreen -none_channel_bg = default -none_channel_fg = default -number = lightgreen -number_char = lightgreen -prefix_bufname = default -queries_default_bg = default -queries_default_fg = default -queries_highlight_bg = default -queries_highlight_fg = default -queries_message_bg = default -queries_message_fg = default -suffix_bufname = default -whitelist_default_bg = default -whitelist_default_fg = default -whitelist_highlight_bg = default -whitelist_highlight_fg = default -whitelist_low_bg = default -whitelist_low_fg = default -whitelist_message_bg = default -whitelist_message_fg = default -whitelist_private_bg = default -whitelist_private_fg = default - -[look] -core_to_front = off -detach = 0 -detach_buffer_immediately = "" -detach_buffer_immediately_level = 2 -detach_display_window_number = off -detach_displayed_buffers = on -detach_free_content = off -detach_query = off -hide_merged_buffers = none -hotlist_counter = off -immune_detach_buffers = "" -indenting = off -indenting_amount = 2 -indenting_number = on -jump_prev_next_visited_buffer = off -mark_inactive = off -mouse_move_buffer = on -mouse_wheel = on -name_crop_suffix = "+" -name_size_max = 0 -number_char = "." -prefix = off -prefix_bufname = "" -prefix_empty = on -prefix_for_query = "" -short_names = on -show_lag = off -show_number = on -sort = number -suffix_bufname = "" -toggle_bar = on -whitelist_buffers = "" diff --git a/links/.weechat/buflist.conf b/links/.weechat/buflist.conf @@ -1,39 +0,0 @@ -# -# 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}${eval:${format_name}}${format_hotlist} ${color:238}${buffer.local_variables.filter}${buffer.local_variables.buflist}" -buffer_current = "${if:${type}==server?${color:*blue,235}:${color:*blue}}${hide:>,${buffer[last_gui_buffer].number}} ${indent}${if:${type}==server&&${info:irc_server_isupport_value,${name},NETWORK}?${info:irc_server_isupport_value,${name},NETWORK}:${name}} ${color:235}${buffer.local_variables.filter}${buffer.local_variables.buflist}" -hotlist = " ${color:239}${hotlist}${color:239}" -hotlist_highlight = "${color:163}" -hotlist_low = "${color:white}" -hotlist_message = "${color:229}" -hotlist_none = "${color:default}" -hotlist_private = "${color:121}" -hotlist_separator = "${color:default}," -indent = " " -lag = " ${color:green}[${color:brown}${lag}${color:green}]" -name = "${if:${type}==server?${color:white}:${color_hotlist}}${if:${type}==server||${type}==channel||${type}==private?${if:${cutscr:8,+,${name}}!=${name}?${cutscr:8,${color:${weechat.color.chat_prefix_more}}+,${if:${type}==server&&${info:irc_server_isupport_value,${name},NETWORK}?${info:irc_server_isupport_value,${name},NETWORK}:${name}}}:${cutscr:8, ,${if:${type}==server&&${info:irc_server_isupport_value,${name},NETWORK}?${info:irc_server_isupport_value,${name},NETWORK} :${name} }}}:${name}}" -nick_prefix = "${color_nick_prefix}${nick_prefix}" -number = "${if:${type}==server?${color:black,235}:${color:239}}${number}${if:${number_displayed}?.: }" diff --git a/links/.weechat/charset.conf b/links/.weechat/charset.conf @@ -1,18 +0,0 @@ -# -# 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] diff --git a/links/.weechat/exec.conf b/links/.weechat/exec.conf @@ -1,18 +0,0 @@ -# -# 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 - -[color] -flag_finished = lightred -flag_running = lightgreen diff --git a/links/.weechat/fifo.conf b/links/.weechat/fifo.conf @@ -1,14 +0,0 @@ -# -# 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" diff --git a/links/.weechat/irc.conf b/links/.weechat/irc.conf @@ -1,531 +0,0 @@ -# -# 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 = on -color_nicks_in_nicklist = on -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,Anders,DamsgaardAnders,Damsgaard,anders,damsgaard,anders.damsgaard" -highlight_pv = "$nick,Anders,DamsgaardAnders,Damsgaard,anders,damsgaard,anders.damsgaard" -highlight_server = "$nick,Anders,DamsgaardAnders,Damsgaard,anders,damsgaard,anders.damsgaard" -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 = independent -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 = "q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue" -notice = green -reason_quit = 244 -topic_current = default -topic_new = 36 -topic_old = 244 - -[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 = 0 -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] -clientinfo = "" -finger = "" -ping = "" -source = "" -time = "" -userinfo = "" -version = "" - -[ignore] -ignore = *;*;^nixOS_GitHub$ - -[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 = 5 -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 = "ad,ad1,ad2,ad3,ad4" -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" -ssl_verify = on -usermode = "" -username = "ad" - -[server] -freenode.addresses = "chat.freenode.net/6667" -freenode.proxy -freenode.ipv6 -freenode.ssl -freenode.ssl_cert -freenode.ssl_priorities -freenode.ssl_dhkey_size -freenode.ssl_fingerprint -freenode.ssl_verify -freenode.password -freenode.capabilities -freenode.sasl_mechanism -freenode.sasl_username = "${sec.data.freenode_username}" -freenode.sasl_password = "${sec.data.freenode_password}" -freenode.sasl_key -freenode.sasl_timeout -freenode.sasl_fail -freenode.autoconnect = on -freenode.autoreconnect -freenode.autoreconnect_delay -freenode.nicks = "adc,adc_,adc__" -freenode.nicks_alternate -freenode.username = "adc" -freenode.realname -freenode.local_hostname -freenode.usermode -freenode.command -freenode.command_delay -freenode.autojoin = "#archlinux,#bash,#debian,#climagic,#GeoDataHub,#julia,#mutt,#tmux,#vim,#zsh" -freenode.autorejoin -freenode.autorejoin_delay -freenode.connection_timeout -freenode.anti_flood_prio_high -freenode.anti_flood_prio_low -freenode.away_check -freenode.away_check_max_nicks -freenode.msg_kick -freenode.msg_part -freenode.msg_quit -freenode.notify -freenode.split_msg_max_length -slack-sigma-stanford.addresses = "sigma-stanford.irc.slack.com/6667" -slack-sigma-stanford.proxy -slack-sigma-stanford.ipv6 -slack-sigma-stanford.ssl = on -slack-sigma-stanford.ssl_cert -slack-sigma-stanford.ssl_priorities -slack-sigma-stanford.ssl_dhkey_size = 512 -slack-sigma-stanford.ssl_fingerprint -slack-sigma-stanford.ssl_verify -slack-sigma-stanford.password = "${sec.data.slack-sigma-stanford_password}" -slack-sigma-stanford.capabilities -slack-sigma-stanford.sasl_mechanism -slack-sigma-stanford.sasl_username = "${sec.data.slack-sigma-stanford_username}" -slack-sigma-stanford.sasl_password = "${sec.data.slack-sigma-stanford_password}" -slack-sigma-stanford.sasl_key -slack-sigma-stanford.sasl_timeout -slack-sigma-stanford.sasl_fail -slack-sigma-stanford.autoconnect = off -slack-sigma-stanford.autoreconnect -slack-sigma-stanford.autoreconnect_delay -slack-sigma-stanford.nicks = "anders.damsgaard" -slack-sigma-stanford.nicks_alternate -slack-sigma-stanford.username = "${sec.data.slack-sigma-stanford_username}" -slack-sigma-stanford.realname -slack-sigma-stanford.local_hostname -slack-sigma-stanford.usermode -slack-sigma-stanford.command -slack-sigma-stanford.command_delay -slack-sigma-stanford.autojoin -slack-sigma-stanford.autorejoin -slack-sigma-stanford.autorejoin_delay -slack-sigma-stanford.connection_timeout -slack-sigma-stanford.anti_flood_prio_high -slack-sigma-stanford.anti_flood_prio_low -slack-sigma-stanford.away_check -slack-sigma-stanford.away_check_max_nicks -slack-sigma-stanford.msg_kick -slack-sigma-stanford.msg_part -slack-sigma-stanford.msg_quit -slack-sigma-stanford.notify -slack-sigma-stanford.split_msg_max_length -bitlbee.addresses = "localhost/6667" -bitlbee.proxy -bitlbee.ipv6 -bitlbee.ssl -bitlbee.ssl_cert -bitlbee.ssl_priorities -bitlbee.ssl_dhkey_size -bitlbee.ssl_fingerprint -bitlbee.ssl_verify -bitlbee.password = "ad/bitlbee:${sec.data.bitlbee_password}" -bitlbee.capabilities -bitlbee.sasl_mechanism -bitlbee.sasl_username -bitlbee.sasl_password -bitlbee.sasl_key -bitlbee.sasl_timeout -bitlbee.sasl_fail -bitlbee.autoconnect = off -bitlbee.autoreconnect -bitlbee.autoreconnect_delay -bitlbee.nicks -bitlbee.nicks_alternate -bitlbee.username -bitlbee.realname -bitlbee.local_hostname -bitlbee.usermode -bitlbee.command -bitlbee.command_delay -bitlbee.autojoin -bitlbee.autorejoin -bitlbee.autorejoin_delay -bitlbee.connection_timeout -bitlbee.anti_flood_prio_high -bitlbee.anti_flood_prio_low -bitlbee.away_check -bitlbee.away_check_max_nicks -bitlbee.msg_kick -bitlbee.msg_part -bitlbee.msg_quit -bitlbee.notify -bitlbee.split_msg_max_length -gitter.addresses = "irc.gitter.im" -gitter.proxy -gitter.ipv6 -gitter.ssl = on -gitter.ssl_cert -gitter.ssl_priorities -gitter.ssl_dhkey_size = 1024 -gitter.ssl_fingerprint -gitter.ssl_verify = on -gitter.password = "${sec.data.gitterpass}" -gitter.capabilities -gitter.sasl_mechanism -gitter.sasl_username -gitter.sasl_password -gitter.sasl_key -gitter.sasl_timeout -gitter.sasl_fail -gitter.autoconnect = on -gitter.autoreconnect -gitter.autoreconnect_delay -gitter.nicks = "anders-dc" -gitter.nicks_alternate -gitter.username -gitter.realname -gitter.local_hostname -gitter.usermode -gitter.command -gitter.command_delay -gitter.autojoin -gitter.autorejoin -gitter.autorejoin_delay -gitter.connection_timeout -gitter.anti_flood_prio_high -gitter.anti_flood_prio_low -gitter.away_check -gitter.away_check_max_nicks -gitter.msg_kick -gitter.msg_part -gitter.msg_quit -gitter.notify -gitter.split_msg_max_length -slack-taku.addresses = "takuglacier.irc.slack.com/6667" -slack-taku.proxy -slack-taku.ipv6 -slack-taku.ssl = on -slack-taku.ssl_cert -slack-taku.ssl_priorities -slack-taku.ssl_dhkey_size -slack-taku.ssl_fingerprint -slack-taku.ssl_verify -slack-taku.password = "${sec.data.slack-taku_password}" -slack-taku.capabilities -slack-taku.sasl_mechanism -slack-taku.sasl_username = "${sec.data.slack-taku_username}" -slack-taku.sasl_password = "${sec.data.slack-taku_password}" -slack-taku.sasl_key -slack-taku.sasl_timeout -slack-taku.sasl_fail -slack-taku.autoconnect = off -slack-taku.autoreconnect -slack-taku.autoreconnect_delay -slack-taku.nicks = "anders.damsgaard" -slack-taku.nicks_alternate -slack-taku.username = "${sec.data.slack-taku_username}" -slack-taku.realname -slack-taku.local_hostname -slack-taku.usermode -slack-taku.command -slack-taku.command_delay -slack-taku.autojoin -slack-taku.autorejoin -slack-taku.autorejoin_delay -slack-taku.connection_timeout -slack-taku.anti_flood_prio_high -slack-taku.anti_flood_prio_low -slack-taku.away_check -slack-taku.away_check_max_nicks -slack-taku.msg_kick -slack-taku.msg_part -slack-taku.msg_quit -slack-taku.notify -slack-taku.split_msg_max_length -qualitystreet.addresses = "qualitystreet.irc.slack.com/6667" -qualitystreet.proxy -qualitystreet.ipv6 -qualitystreet.ssl = on -qualitystreet.ssl_cert -qualitystreet.ssl_priorities -qualitystreet.ssl_dhkey_size = 512 -qualitystreet.ssl_fingerprint -qualitystreet.ssl_verify -qualitystreet.password = "${sec.data.qualitystreet_password}" -qualitystreet.capabilities -qualitystreet.sasl_mechanism -qualitystreet.sasl_username = "${sec.data.qualitystreet_username}" -qualitystreet.sasl_password = "${sec.data.qualitystreet_password}" -qualitystreet.sasl_key -qualitystreet.sasl_timeout -qualitystreet.sasl_fail -qualitystreet.autoconnect = off -qualitystreet.autoreconnect -qualitystreet.autoreconnect_delay -qualitystreet.nicks = "anders" -qualitystreet.nicks_alternate -qualitystreet.username = "${sec.data.qualitystreet_username}" -qualitystreet.realname -qualitystreet.local_hostname -qualitystreet.usermode -qualitystreet.command -qualitystreet.command_delay -qualitystreet.autojoin -qualitystreet.autorejoin -qualitystreet.autorejoin_delay -qualitystreet.connection_timeout -qualitystreet.anti_flood_prio_high -qualitystreet.anti_flood_prio_low -qualitystreet.away_check -qualitystreet.away_check_max_nicks -qualitystreet.msg_kick -qualitystreet.msg_part -qualitystreet.msg_quit -qualitystreet.notify -qualitystreet.split_msg_max_length -iceberg-model.addresses = "iceberg-model.irc.slack.com/6667" -iceberg-model.proxy -iceberg-model.ipv6 -iceberg-model.ssl = on -iceberg-model.ssl_cert -iceberg-model.ssl_priorities -iceberg-model.ssl_dhkey_size = 512 -iceberg-model.ssl_fingerprint -iceberg-model.ssl_verify -iceberg-model.password = "${sec.data.iceberg-model_password}" -iceberg-model.capabilities -iceberg-model.sasl_mechanism -iceberg-model.sasl_username = "${sec.data.iceberg-model_username}" -iceberg-model.sasl_password = "${sec.data.iceberg-model_password}" -iceberg-model.sasl_key -iceberg-model.sasl_timeout -iceberg-model.sasl_fail -iceberg-model.autoconnect = off -iceberg-model.autoreconnect -iceberg-model.autoreconnect_delay -iceberg-model.nicks = "anders" -iceberg-model.nicks_alternate -iceberg-model.username = "${sec.data.iceberg-model_username}" -iceberg-model.realname -iceberg-model.local_hostname -iceberg-model.usermode -iceberg-model.command -iceberg-model.command_delay -iceberg-model.autojoin -iceberg-model.autorejoin -iceberg-model.autorejoin_delay -iceberg-model.connection_timeout -iceberg-model.anti_flood_prio_high -iceberg-model.anti_flood_prio_low -iceberg-model.away_check -iceberg-model.away_check_max_nicks -iceberg-model.msg_kick -iceberg-model.msg_part -iceberg-model.msg_quit -iceberg-model.notify -iceberg-model.split_msg_max_length -MOM6.addresses = "MOM6.irc.slack.com/6667" -MOM6.proxy -MOM6.ipv6 -MOM6.ssl = on -MOM6.ssl_cert -MOM6.ssl_priorities -MOM6.ssl_dhkey_size = 512 -MOM6.ssl_fingerprint -MOM6.ssl_verify -MOM6.password = "${sec.data.MOM6_password}" -MOM6.capabilities -MOM6.sasl_mechanism -MOM6.sasl_username = "${sec.data.MOM6_username}" -MOM6.sasl_password = "${sec.data.MOM6_password}" -MOM6.sasl_key -MOM6.sasl_timeout -MOM6.sasl_fail -MOM6.autoconnect = off -MOM6.autoreconnect -MOM6.autoreconnect_delay -MOM6.nicks = "anders" -MOM6.nicks_alternate -MOM6.username = "${sec.data.MOM6_username}" -MOM6.realname -MOM6.local_hostname -MOM6.usermode -MOM6.command -MOM6.command_delay -MOM6.autojoin -MOM6.autorejoin -MOM6.autorejoin_delay -MOM6.connection_timeout -MOM6.anti_flood_prio_high -MOM6.anti_flood_prio_low -MOM6.away_check -MOM6.away_check_max_nicks -MOM6.msg_kick -MOM6.msg_part -MOM6.msg_quit -MOM6.notify -MOM6.split_msg_max_length -esip-all.addresses = "esip-all.irc.slack.com/6667" -esip-all.proxy -esip-all.ipv6 -esip-all.ssl = on -esip-all.ssl_cert -esip-all.ssl_priorities -esip-all.ssl_dhkey_size = 512 -esip-all.ssl_fingerprint -esip-all.ssl_verify -esip-all.password = "${sec.data.esip-all_password}" -esip-all.capabilities -esip-all.sasl_mechanism -esip-all.sasl_username = "${sec.data.esip-all_username}" -esip-all.sasl_password = "${sec.data.esip-all_password}" -esip-all.sasl_key -esip-all.sasl_timeout -esip-all.sasl_fail -esip-all.autoconnect = off -esip-all.autoreconnect -esip-all.autoreconnect_delay -esip-all.nicks = "andersd" -esip-all.nicks_alternate -esip-all.username = "${sec.data.esip-all_username}" -esip-all.realname -esip-all.local_hostname -esip-all.usermode -esip-all.command -esip-all.command_delay -esip-all.autojoin -esip-all.autorejoin -esip-all.autorejoin_delay -esip-all.connection_timeout -esip-all.anti_flood_prio_high -esip-all.anti_flood_prio_low -esip-all.away_check -esip-all.away_check_max_nicks -esip-all.msg_kick -esip-all.msg_part -esip-all.msg_quit -esip-all.notify -esip-all.split_msg_max_length diff --git a/links/.weechat/iset.conf b/links/.weechat/iset.conf @@ -1,38 +0,0 @@ -# -# weechat -- iset.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] -bg_selected = red -help_default_value = green -help_option_name = white -help_text = default -option = default -option_selected = white -type = brown -type_selected = yellow -value = cyan -value_diff = magenta -value_diff_selected = lightmagenta -value_selected = lightcyan -value_undef = green -value_undef_selected = lightgreen - -[help] -show_help_bar = on -show_help_extra_info = on -show_plugin_description = off - -[look] -scroll_horiz = 10 -show_current_line = on -use_color = off -use_mute = off -value_search_char = "=" diff --git a/links/.weechat/logger.conf b/links/.weechat/logger.conf @@ -1,35 +0,0 @@ -# -# 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] diff --git a/links/.weechat/plugins.conf b/links/.weechat/plugins.conf @@ -1,232 +0,0 @@ -# -# 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] -fifo.fifo = "on" -guile.check_license = "off" -javascript.check_license = "off" -lua.check_license = "off" -perl.beep.beep_command_dcc = "$bell" -perl.beep.beep_command_highlight = "$bell" -perl.beep.beep_command_pv = "$bell" -perl.beep.beep_command_timeout = "30000" -perl.beep.beep_dcc = "on" -perl.beep.beep_highlight = "on" -perl.beep.beep_highlight_blacklist = "off" -perl.beep.beep_highlight_whitelist = "off" -perl.beep.beep_pv = "on" -perl.beep.beep_pv_blacklist = "off" -perl.beep.beep_pv_whitelist = "off" -perl.beep.beep_trigger_highlight = "" -perl.beep.beep_trigger_pv = "" -perl.beep.bell_always = "" -perl.beep.blacklist_nicks = "" -perl.beep.whitelist_channels = "" -perl.beep.whitelist_nicks = "" -perl.check_license = "off" -perl.highmon.alignment = "nchannel" -perl.highmon.away_only = "off" -perl.highmon.bitlbee.#twitter_damsgaardanders = "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" -perl.pushover.blacklist = "irc.server.*,irc.*.*status" -perl.pushover.enabled = "on" -perl.pushover.free_pass = "" -perl.pushover.free_user = "" -perl.pushover.nma_apikey = "" -perl.pushover.only_if_away = "off" -perl.pushover.only_if_inactive = "off" -perl.pushover.pb_apikey = "${sec.data.pushbulletapikey}" -perl.pushover.pb_device_iden = "" -perl.pushover.priority = "" -perl.pushover.rate_limit = "0" -perl.pushover.redact_priv_msg = "off" -perl.pushover.service = "pushbullet" -perl.pushover.short_name = "on" -perl.pushover.show_highlights = "on" -perl.pushover.show_priv_msg = "on" -perl.pushover.sound = "" -perl.pushover.token = "${sec.data.pushapikey}" -perl.pushover.user = "${sec.data.pushuserkey}" -perl.pushover.verbose = "2" -python.check_license = "off" -python.cmd_help.color_alias = "white" -python.cmd_help.color_alias_name = "green" -python.cmd_help.color_alias_value = "green" -python.cmd_help.color_arguments = "cyan" -python.cmd_help.color_delimiters = "lightgreen" -python.cmd_help.color_list = "green" -python.cmd_help.color_list_count = "white" -python.cmd_help.color_no_help = "red" -python.cmd_help.color_option_help = "brown" -python.cmd_help.color_option_name = "yellow" -python.cmd_help.display_no_help = "on" -python.cmd_help.format_option = "(${white:type}) ${description_nls}" -python.cmd_help.ignore_commands = "map,me,die,restart" -python.cmd_help.max_options = "5" -python.cmd_help.prefix = "[" -python.cmd_help.right_align = "off" -python.cmd_help.right_padding = "15" -python.cmd_help.space = "2" -python.cmd_help.start_on_load = "off" -python.cmd_help.stop_on_enter = "on" -python.cmd_help.suffix = "]" -python.cmd_help.timer = "0" -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.urlserver.buffer_short_name = "off" -python.urlserver.color = "darkgray" -python.urlserver.color_in_msg = "" -python.urlserver.debug = "off" -python.urlserver.display_urls = "on" -python.urlserver.display_urls_in_msg = "off" -python.urlserver.http_allowed_ips = "" -python.urlserver.http_auth = "" -python.urlserver.http_auth_redirect = "on" -python.urlserver.http_autostart = "on" -python.urlserver.http_bg_color = "#f4f4f4" -python.urlserver.http_css_url = "" -python.urlserver.http_embed_image = "off" -python.urlserver.http_embed_youtube = "off" -python.urlserver.http_embed_youtube_size = "480*350" -python.urlserver.http_fg_color = "#000" -python.urlserver.http_hostname = "" -python.urlserver.http_hostname_display = "" -python.urlserver.http_open_in_new_page = "on" -python.urlserver.http_port = "" -python.urlserver.http_port_display = "" -python.urlserver.http_prefix_suffix = " " -python.urlserver.http_scheme_display = "http" -python.urlserver.http_time_format = "%d/%m/%y %H:%M:%S" -python.urlserver.http_title = "WeeChat URLs" -python.urlserver.http_url_prefix = "" -python.urlserver.msg_filtered = "off" -python.urlserver.msg_ignore_buffers = "core.weechat,python.grep" -python.urlserver.msg_ignore_dup_urls = "off" -python.urlserver.msg_ignore_regex = "" -python.urlserver.msg_ignore_tags = "irc_quit,irc_part,notify_none" -python.urlserver.msg_require_tags = "nick_" -python.urlserver.separators = "[|]" -python.urlserver.url_min_length = "0" -python.urlserver.urls_amount = "100" -python.vimode.no_warn = "off" -ruby.check_license = "off" -tcl.check_license = "off" - -[desc] -perl.beep.beep_command_dcc = "command for beep on dcc, special value "$bell" is allowed, as well as "$bell;command" (default: "$bell")" -perl.beep.beep_command_highlight = "command for beep on highlight, special value "$bell" is allowed, as well as "$bell;command" (default: "$bell")" -perl.beep.beep_command_pv = "command for beep on private message, special value "$bell" is allowed, as well as "$bell;command" (default: "$bell")" -perl.beep.beep_command_timeout = "timeout for command run (in milliseconds, 0 = never kill (not recommended)) (default: "30000")" -perl.beep.beep_dcc = "beep on dcc (default: "on")" -perl.beep.beep_highlight = "beep on highlight (default: "on")" -perl.beep.beep_highlight_blacklist = "turn blacklist for highlights on or off (default: "off")" -perl.beep.beep_highlight_whitelist = "turn whitelist for highlights on or off (default: "off")" -perl.beep.beep_pv = "beep on private message (default: "on")" -perl.beep.beep_pv_blacklist = "turn blacklist for private messages on or off (default: "off")" -perl.beep.beep_pv_whitelist = "turn whitelist for private messages on or off (default: "off")" -perl.beep.beep_trigger_highlight = "word that will trigger execution of beep_command_highlight (if empty, anything will trigger) (default: "")" -perl.beep.beep_trigger_pv = "word that will trigger execution of beep_command_pv (it empty, anything will trigger) (default: "")" -perl.beep.bell_always = "use $bell on private messages and/or highlights regardless of trigger and whitelist settings (example: "pv,highlight") (default: "")" -perl.beep.blacklist_nicks = "comma-separated list of "server.nick": if not empty, these nicks will not be able to trigger execution of commands. Cannot be used in conjuction with whitelist (example: "freenode.nick1,freenode.nick2") (default: "")" -perl.beep.whitelist_channels = "comma-separated list of "server.#channel": if not empty, only these channels will trigger execution of commands (example: "freenode.#weechat,freenode.#channel2") (default: "")" -perl.beep.whitelist_nicks = "comma-separated list of "server.nick": if not empty, only these nicks will trigger execution of commands (example: "freenode.nick1,freenode.nick2") (default: "")" -perl.pushover.blacklist = "Comma separated list of buffers (full name) to blacklist for notifications (wildcard "*" is allowed, name beginning with "!" is excluded) (default: "")" -perl.pushover.enabled = "Turn script on or off (default: "on")" -perl.pushover.free_pass = "Automatic generated Free key (default: "")" -perl.pushover.free_user = "Free Mobile User ID (see your account) (default: "")" -perl.pushover.nma_apikey = "nma API key (default: "")" -perl.pushover.only_if_away = "Notify only if away status is active (default: "off")" -perl.pushover.only_if_inactive = "Notify only if buffer is not the active (current) buffer (default: "off")" -perl.pushover.pb_apikey = "Pushbullet API key (default: "")" -perl.pushover.pb_device_iden = "Device Iden of pushbullet device (default: "")" -perl.pushover.priority = "priority (empty for default) (default: "")" -perl.pushover.rate_limit = "Rate limit in seconds (0 = unlimited), will send a maximum of 1 notification per time limit (default: "0")" -perl.pushover.redact_priv_msg = "When receiving private message notifications, hide the actual message text (default: "off")" -perl.pushover.service = "Notification service to use. Multiple services may be supplied as comma separated list. (supported services: pushover, nma, pushbullet) (default: "pushover")" -perl.pushover.short_name = "Use short buffer name in notification (default: "off")" -perl.pushover.show_highlights = "Notify on highlights (default: "on")" -perl.pushover.show_priv_msg = "Notify on private messages (default: "on")" -perl.pushover.sound = "Sound (empty for default) (default: "")" -perl.pushover.token = "pushover API token/key (You may feel free to use your own token, so you get your own monthly quota of messages without being affected by other users. See also: https://pushover.net/faq#overview-distribution ) (default: "ajEX9RWhxs6NgeXFJxSK2jmpY54C9S")" -perl.pushover.user = "pushover user key (default: "")" -perl.pushover.verbose = "Verbosity level (0 = silently ignore any errors, 1 = display brief error, 2 = display full server response) (default: "1")" -python.cmd_help.color_alias = "color for text "Alias" (default: "white")" -python.cmd_help.color_alias_name = "color for alias name (default: "green")" -python.cmd_help.color_alias_value = "color for alias value (default: "green")" -python.cmd_help.color_arguments = "color for command arguments (default: "cyan")" -python.cmd_help.color_delimiters = "color for delimiters (default: "lightgreen")" -python.cmd_help.color_list = "color for list of commands/options (default: "green")" -python.cmd_help.color_list_count = "color for number of commands/options in list found (default: "white")" -python.cmd_help.color_no_help = "color for text "No help" (default: "red")" -python.cmd_help.color_option_help = "color for help on option (default: "brown")" -python.cmd_help.color_option_name = "color for name of option found (by adding "*" to option name) (default: "yellow")" -python.cmd_help.display_no_help = "display "No help" when command is not found (default: "on")" -python.cmd_help.format_option = "format of help for options: free text with identifiers using format: ${name} or ${color:name}: color is a WeeChat color (optional), name is a field of infolist "option": full_name, config_name, section_name, option_name, description, description_nls, string_values, min, max, null_value_allowed, value_is_null, default_value_is_null, type, value, default_value (default: "(${white:type}) ${description_nls}")" -python.cmd_help.ignore_commands = "comma-separated list of commands (without leading "/") to ignore (default: "map,me,die,restart")" -python.cmd_help.max_options = "max number of options displayed in list (default: "5")" -python.cmd_help.prefix = "string displayed before help (default: "[")" -python.cmd_help.right_align = "align help to right (default: "off")" -python.cmd_help.right_padding = "padding to right when aligned to right (default: "15")" -python.cmd_help.space = "minimum space before help (default: "2")" -python.cmd_help.start_on_load = "auto start help when script is loaded (default: "off")" -python.cmd_help.stop_on_enter = "enter key stop help (default: "on")" -python.cmd_help.suffix = "string displayed after help (default: "]")" -python.cmd_help.timer = "number of seconds help is displayed (0 = display until help is toggled) (default: "0")" -python.urlserver.buffer_short_name = "use buffer short name on dedicated buffer (default: "off")" -python.urlserver.color = "color for urls displayed after message (default: "darkgray")" -python.urlserver.color_in_msg = "color for urls displayed inside irc message: it is a number (irc color) between 00 and 15 (see doc for a list of irc colors) (default: "")" -python.urlserver.debug = "print some debug messages (default: "off")" -python.urlserver.display_urls = "display URLs below messages (default: "on")" -python.urlserver.display_urls_in_msg = "add shorten url next to the original url (only in IRC messages) (useful for urlserver behind relay/irc) (default: "off")" -python.urlserver.http_allowed_ips = "regex for IPs allowed to use server (example: "^(123.45.67.89|192.160.*)$") (default: "")" -python.urlserver.http_auth = "login and password (format: "login:password") required to access to page with list of URLs (note: content is evaluated, see /help eval) (default: "")" -python.urlserver.http_auth_redirect = "require the login/password (if option "http_auth" is set) for URLs redirections (default: "on")" -python.urlserver.http_autostart = "start the built-in HTTP server automatically) (default: "on")" -python.urlserver.http_bg_color = "background color for HTML page (default: "#f4f4f4")" -python.urlserver.http_css_url = "URL of external Cascading Style Sheet to add (BE CAREFUL: the HTTP referer will be sent to site hosting CSS file!) (empty value = use default embedded CSS) (default: "")" -python.urlserver.http_embed_image = "embed images in HTML page (BE CAREFUL: the HTTP referer will be sent to site hosting image!) (default: "off")" -python.urlserver.http_embed_youtube = "embed youtube videos in HTML page (BE CAREFUL: the HTTP referer will be sent to youtube!) (default: "off")" -python.urlserver.http_embed_youtube_size = "size for embedded youtube video, format is "xxx*yyy" (default: "480*350")" -python.urlserver.http_fg_color = "foreground color for HTML page (default: "#000")" -python.urlserver.http_hostname = "force hostname/IP in bind of socket (empty value = auto-detect current hostname) (default: "")" -python.urlserver.http_hostname_display = "display this hostname in shortened URLs (default: "")" -python.urlserver.http_open_in_new_page = "open links in new pages/tabs (default: "on")" -python.urlserver.http_port = "force port for listening (empty value = find a random free port) (default: "")" -python.urlserver.http_port_display = "display this port in shortened URLs. Useful if you forward a different external port to the internal port (default: "")" -python.urlserver.http_prefix_suffix = "suffix displayed between prefix and message in HTML page (default: " ")" -python.urlserver.http_scheme_display = "display this scheme in shortened URLs (default: "http")" -python.urlserver.http_time_format = "time format in the HTML page (default: "%d/%m/%y %H:%M:%S")" -python.urlserver.http_title = "title of the HTML page (default: "WeeChat URLs")" -python.urlserver.http_url_prefix = "prefix to add in URLs to prevent external people to scan your URLs (for example: prefix "xx" will give URL: http://host.com:1234/xx/8) (default: "")" -python.urlserver.msg_filtered = "shorten URLs in filtered messages (with /filter) (default: "off")" -python.urlserver.msg_ignore_buffers = "comma-separated list (without spaces) of buffers to ignore (full name like "irc.freenode.#weechat") (default: "core.weechat,python.grep")" -python.urlserver.msg_ignore_dup_urls = "ignore duplicated URLs (do not add an URL in list if it is already) (default: "off")" -python.urlserver.msg_ignore_regex = "ignore messages matching this regex (default: "")" -python.urlserver.msg_ignore_tags = "comma-separated list (without spaces) of tags (or beginning of tags) to ignore (for example, use "notify_none" to ignore self messages or "nick_weebot" to ignore messages from nick "weebot") (default: "irc_quit,irc_part,notify_none")" -python.urlserver.msg_require_tags = "comma-separated list (without spaces) of tags (or beginning of tags) required to shorten URLs (for example "nick_" to shorten URLs only in messages from other users) (default: "nick_")" -python.urlserver.separators = "separators for short url list (string with exactly 3 chars) (default: "[|]")" -python.urlserver.url_min_length = "minimum length for an URL to be shortened (0 = shorten all URLs, -1 = detect length based on shorten URL) (default: "0")" -python.urlserver.urls_amount = "number of URLs to keep in memory (and in file when script is not loaded) (default: "100")" -python.vimode.no_warn = "don't warn about problematickeybindings and tmux/screen (default: "off")" diff --git a/links/.weechat/python/weechat-vimode b/links/.weechat/python/weechat-vimode @@ -1 +0,0 @@ -Subproject commit 1e431a12efd970dc5df997b88f2c532cca5511f4 diff --git a/links/.weechat/relay.conf b/links/.weechat/relay.conf @@ -1,48 +0,0 @@ -# -# 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" -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] " - -[port] diff --git a/links/.weechat/script.conf b/links/.weechat/script.conf @@ -1,56 +0,0 @@ -# -# 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 = "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 = "http://weechat.org/files/plugins.xml.gz" diff --git a/links/.weechat/sec.conf b/links/.weechat/sec.conf @@ -1,39 +0,0 @@ -# -# weechat -- sec.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 -# - -[crypt] -cipher = aes256 -hash_algo = sha256 -passphrase_file = "" -salt = on - -[data] -__passphrase__ = on -freenode_username = "267BA1A2CAF33A698B8E904956C22AB58BA422238E2D19C6098E6C91615F10D527AA12E8746A39EABDC7BACC" -gitterpass = "0EE52B3FF69903AB53196EDEF720966F8B03BA2B9408D0BFCA1539CE5B7675F6B79C72FCFFD29FBCAF52BE28C372F4BE3861F331BC3CF6A90D81E6099467D4A3CA96E4C4F212C77CC222C6A699C45E9EBE" -esip-all_password = "FA60CBE3C811A987C3FB1584701BFE1734EC1F6ADF71737A8C1E3BB5A3A660B905B9E34B1EFE636574A1FCB4A340B66291E69334C7530AE9AB85B203E1B715B1F95AA68B48BD" -qualitystreet_password = "701ED5FC0C027BDF47A0829852F36F787B2AB3831CB0C4D414C8D219E1BCA4B84678CBB8A33302B3ED6258AF745B11F01D89C3AEE69FA6DF3EE4B2686B8B6048DFB4DED54645F58F56B436" -qualitystreet_username = "0E921B5C41D022775AAC6F22284A6E4C206E03E351F7F823CEA98C8AB7AA642B528BB7C84054398765C62C20DD652570" -takuglacierpass = "1661BF54F35184A57A477EB0FC74BC531B929E2674E91D279299B0BC5EE0ACF1FF37DFF4E44CCD465F48F98240196BA4268B6831D454737ED8020EE537396D6A09A6B6E21E63644F9C" -pushapikey = "990DF91AE725DCDB2C39A53DC01BF68861C3199032A25FFB1916FCA07DDD50C23DED8E5E8C2B34AFA4BA0F1985FE97B90DC516FFE3A6ABF5FFF7CC6B88D3275ABEA03BEC4BF5C5" -slack-sigma-stanford_password = "9BEBAC6CB596A7F9A15B1CF44BAA0B9C5D32EB27129BBE99190BE055FAD3B620C70EFD1D821DC693F69FB669D35C3741514DBA61C89E0430689F3113B6B12BF8EE2E4ACFC983B5C7C4FA597E" -pushoverkey = "CB07F4855D3A761199BC0D5C1E80AF3DDA60E170C6B68013DD8DC27F85D31120786F68D7C5252C3C49013EE14291166B0114178B29DE0700CEBECFB1B9F300BEC19389C5D2CA81" -bitlbee_password = "B1BB9EED2133F896E5A6D9038A4B6DE30F5EAF6650712E5BDF92F9479FA3ADC508F5C60F52A0777DE8D6CE107E5662B90BB7E2650C17EC1EA8DBB56DD106" -esip-all_username = "7885819A57C5E2BE91AB2E8B996EF332F8C25692215BE27440AB13A7503B06B3FF525FEB8FCEC7C82D487BADF31EB490" -iceberg-model_password = "88A13C3828AA7D6C66A7470B767739A52FF3B3CA117DBE41E038131ACCA0DBA331BD91BD6AB075BC1007AEE78060CE20F37441022449D6F4BE6DBED753DC68AC87F1423B81D866BF9C6B77" -iceberg-model_username = "24CE8FDE1BE959744F8996459C86DB20780C5C6563C8B4D84840314E17D587FD09422C14944BC483008845FFF5A3F9" -pushuserkey = "C52AFF4FC20B6EB87FA0232CD751B28A43D315B6986799BAA2522D9FD53D662F47143172034BB94D064693BD403E6DCAD4EB8A672130D45797E8AB846791FAC48414B6084771D0" -freenode_password = "A3AC4D21EB8E27705AE1BD6E7D8535664E5AD181B50F6426E72645AD83A1C103EA71A9A27725261CA52F6171FAB6501692B408EF655D4FBEDF19E44EC44671" -slack-taku_username = "16B49D40E99D5B892D624EAB2DD21A491C7AF9B96CB67B2D3DC4BA837D906B6A9EA224E513F7539B1DA5E3BAC764320484601291E39A708948" -MOM6_password = "D4A97604608B24A617846CED33648A69D653D8F8E3CCE0468CD35B54DDE1125B45BEA5A29603AD4D99B0C55C44B18E4B5838978D1F9B90D68FC65F547F7DCFA244DB" -MOM6_username = "4860E3C58C096CC5CD61DB90CCC51DCEEB204EA1C7CFCC286C62387FA56BF64276C727B563BBACA36898A9E2FEBE77" -slack-sigma-stanford_username = "D0ECC860DCE02249FFF82E7428F8370DE21A6406ED4D3FA567C9E6FF10ADF1329635E1FCF361E1F068A09163EA55EF9CE207069C10A500A8F1" -slack-taku_password = "D82FDEE6131A5D3B730A963E28CB0F3577D52280FCC8875E37F65AA6CA485642C214B5E6DE88B6E9BE9683BACC605C6A020BD9E945D4DEA8F6ED5A9BE9EAD2182114C6490103E14A22" diff --git a/links/.weechat/trigger.conf b/links/.weechat/trigger.conf @@ -1,59 +0,0 @@ -# -# 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_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|quote) +nickserv +(id|identify|register|ghost +[^ ]+|release +[^ ]+|regain +[^ ]+) +)|/oper +[^ ]+ +|/quote +pass +|/set +[^ ]*password[^ ]* +|/secure +(passphrase|decrypt|set +[^ ]+) +)(.*)==$1$.*+" -cmd_pass.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|register|ghost +[^ ]+|release +[^ ]+) +)(.*)==$1$.*+" -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=)([^ ]+)(.*)==$1$.*4$5" -server_pass.return_code = ok diff --git a/links/.weechat/weechat.conf b/links/.weechat/weechat.conf @@ -1,748 +0,0 @@ -# -# 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 = "${color:245}%H${color:240}%M" -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" -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 = all -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 = on -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 = 10 -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_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 = "WeeChat ${info:version}" -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 = 29 -chat_highlight = yellow -chat_highlight_bg = magenta -chat_host = 24 -chat_inactive_buffer = default -chat_inactive_window = default -chat_nick = lightcyan -chat_nick_colors = "cyan,magenta,green,brown,lightblue,default,lightcyan,lightmagenta,lightgreen,blue,31,35,38,40,49,63,70,80,92,99,112,126,130,138,142,148,160,162,167,169,174,176,178,184,186,210,212,215,247" -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 = 24 -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 = 244 -nicklist_group = green -separator = 0 -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 = "*,!lua,!tcl,!ruby,!fifo,!xfer,!guile,!javascript" -debug = off -extension = ".so,.dll" -path = "%h/plugins" -save_config_on_unload = on - -[bar] -activetitle.color_bg = 31 -activetitle.color_delim = default -activetitle.color_fg = white -activetitle.conditions = "${active}" -activetitle.filling_left_right = vertical -activetitle.filling_top_bottom = horizontal -activetitle.hidden = on -activetitle.items = "buffer_title" -activetitle.position = top -activetitle.priority = 500 -activetitle.separator = on -activetitle.size = 1 -activetitle.size_max = 0 -activetitle.type = window -buffers.color_bg = default -buffers.color_delim = default -buffers.color_fg = default -buffers.conditions = "" -buffers.filling_left_right = vertical -buffers.filling_top_bottom = columns_vertical -buffers.hidden = on -buffers.items = "buffers" -buffers.position = left -buffers.priority = 0 -buffers.separator = on -buffers.size = 14 -buffers.size_max = 14 -buffers.type = root -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 = 17 -buflist.size_max = 17 -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 = "[mode_indicator]+[input_prompt]+(away),[input_search],[input_paste],input_text" -input.position = bottom -input.priority = 1000 -input.separator = off -input.size = 0 -input.size_max = 3 -input.type = window -isetbar.color_bg = default -isetbar.color_delim = cyan -isetbar.color_fg = default -isetbar.conditions = "" -isetbar.filling_left_right = vertical -isetbar.filling_top_bottom = horizontal -isetbar.hidden = on -isetbar.items = "isetbar_help" -isetbar.position = top -isetbar.priority = 0 -isetbar.separator = on -isetbar.size = 3 -isetbar.size_max = 3 -isetbar.type = window -nicklist.color_bg = default -nicklist.color_delim = cyan -nicklist.color_fg = 229 -nicklist.conditions = "${nicklist} && ${window.number} == 1" -nicklist.filling_left_right = vertical -nicklist.filling_top_bottom = columns_vertical -nicklist.hidden = off -nicklist.items = "buffer_nicklist" -nicklist.position = right -nicklist.priority = 200 -nicklist.separator = on -nicklist.size = 14 -nicklist.size_max = 14 -nicklist.type = window -status.color_bg = 234 -status.color_delim = default -status.color_fg = 31 -status.conditions = "" -status.filling_left_right = vertical -status.filling_top_bottom = horizontal -status.hidden = on -status.items = "[time],[buffer_count],[buffer_plugin],buffer_number+:+buffer_name+(buffer_modes)+{buffer_nicklist_count}+buffer_filter,[bitlbee_typing_notice],[lag],[aspell_dict],[aspell_suggest],completion,scroll" -status.position = bottom -status.priority = 500 -status.separator = on -status.size = 1 -status.size_max = 0 -status.type = root -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 -vi_cmd.color_bg = default -vi_cmd.color_delim = default -vi_cmd.color_fg = default -vi_cmd.conditions = "" -vi_cmd.filling_left_right = vertical -vi_cmd.filling_top_bottom = vertical -vi_cmd.hidden = on -vi_cmd.items = "cmd_text" -vi_cmd.position = bottom -vi_cmd.priority = 0 -vi_cmd.separator = off -vi_cmd.size = 0 -vi_cmd.size_max = 0 -vi_cmd.type = root -vi_line_numbers.color_bg = default -vi_line_numbers.color_delim = default -vi_line_numbers.color_fg = default -vi_line_numbers.conditions = "" -vi_line_numbers.filling_left_right = vertical -vi_line_numbers.filling_top_bottom = vertical -vi_line_numbers.hidden = on -vi_line_numbers.items = "line_numbers" -vi_line_numbers.position = left -vi_line_numbers.priority = 0 -vi_line_numbers.separator = off -vi_line_numbers.size = 0 -vi_line_numbers.size_max = 0 -vi_line_numbers.type = window - -[layout] -highlight-minimal.buffer = "core;weechat;1" -highlight-minimal.buffer = "irc;server.slack-sigma-stanford;1" -highlight-minimal.buffer = "irc;server.bitlbee;1" -highlight-minimal.buffer = "irc;bitlbee.&bitlbee;2" -highlight-minimal.buffer = "irc;server.freenode;3" -highlight-minimal.buffer = "irc;freenode.#mutt;4" -highlight-minimal.buffer = "irc;slack-sigma-stanford.#bsfproposal;5" -highlight-minimal.buffer = "irc;slack-sigma-stanford.#conferences;6" -highlight-minimal.buffer = "irc;slack-sigma-stanford.#general;7" -highlight-minimal.buffer = "irc;slack-sigma-stanford.#gitlab;8" -highlight-minimal.buffer = "irc;slack-sigma-stanford.#random;9" -highlight-minimal.buffer = "irc;slack-sigma-stanford.#teamice;10" -highlight-minimal.buffer = "irc;slack-sigma-stanford.#tilliceinteractions;11" -highlight-minimal.window = "1;0;0;0;core;weechat" -highlight-minimal.current = on - -[notify] - -[filter] -hidevoices = on;irc.slack-sigma-stanford.*;irc_mode;(\+|\-)v -irc_smart = on;*;irc_smart_filter;* -wholist = on;irc.*;*;of WHO list -freenodebots-nword = on;irc.server.freenode;*;nigger -freenodebots-#LRH = on;irc.server.freenode;*;#LRH - -[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" -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-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-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;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~ = "/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~ = "/bar scroll nicklist * -100%" -meta2-24;3~ = "/bar scroll nicklist * e" -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 = "/bar toggle nicklist;/bar toggle buflist" -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 aspell 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" -ctrl-f = "/bar toggle nicklist" - -[key_search] -ctrl-I = "/input search_switch_where" -ctrl-J = "/input search_stop" -ctrl-M = "/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" -@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(buffers):ctrl-wheeldown = "hsignal:buffers_mouse" -@bar(buffers):ctrl-wheelup = "hsignal:buffers_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(perl.iset):button1 = "hsignal:iset_mouse" -@chat(perl.iset):button2* = "hsignal:iset_mouse" -@chat(perl.iset):wheeldown = "/repeat 5 /iset **down" -@chat(perl.iset):wheelup = "/repeat 5 /iset **up" -@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(buffers):button1* = "hsignal:buffers_mouse" -@item(buffers):button2* = "hsignal:buffers_mouse" -@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}" diff --git a/links/.weechat/xfer.conf b/links/.weechat/xfer.conf @@ -1,39 +0,0 @@ -# -# xfer.conf -- weechat v1.0.1 -# - -[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 = "" -speed_limit = 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 diff --git a/links/.xbindkeysrc b/links/.xbindkeysrc @@ -1,57 +0,0 @@ -"xbacklight -dec 10" - XF86MonBrightnessDown - -"xbacklight -inc 10" - XF86MonBrightnessUp - -"/home/ad/bin/display-switcher.sh" - XF86LaunchA - -"/home/ad/bin/display-ext.sh" - XF86LaunchB - -"/home/ad/bin/kbd_backlight.sh down" - XF86KbdBrightnessDown - -"/home/ad/bin/kbd_backlight.sh up" - XF86KbdBrightnessUp - -#"mpc prev" -# XF86AudioPrev - -#"mpc toggle" -# XF86AudioPlay - -#"mpc next" -# XF86AudioNext - -#"keyboard-layout-switch.sh" -# Mod1+Mod4 + l - -#"amixer set Master toggle" -# XF86AudioMute - -#"amixer set Master 5%-" -# XF86AudioLowerVolume - -#"amixer set Master 5%+" -# XF86AudioRaiseVolume - -## Mouse Buttons -#"xvkbd -xsendevent -text "\[XF86Back]"" -#m:0x0 + b:11 - -#"xvkbd -xsendevent -text "\[XF86Forward]"" -#m:0x0 + b:10 - -#"mpc next && pkill -RTMIN+14 i3blocks" -# control+shift + n - -#"mpc prev && pkill -RTMIN+14 i3blocks" -# control+shift + b - -#"mpc toggle && pkill -RTMIN+14 i3blocks" -# control+shift + p - -#"mpc stop && pkill -RTMIN+14 i3blocks" -# control+shift + s diff --git a/links/.xinitrc b/links/.xinitrc @@ -1,56 +0,0 @@ -#!/bin/sh - -# Set normal cursor -xsetroot -cursor_name left_ptr & - -# Set background -$HOME/bin/wallpaper.sh - -# Set display color profile -#[ -f ~/doc/colorprofile.icc ] && xcalib ~/doc/colorprofile.icc - -# X settings -xrdb ~/.Xresources - -# Start auth deamons -eval $(ssh-agent) -eval $(gpg-agent) - -# Automatically suspend system after 20 mins of inactivity -xautolock -time 10 -locker $HOME/bin/xlock -detectsleep & - -# Read .Xmodmap for modified keys -setxkbmap -option ctrl:nocaps -option altwin:swap_lalt_lwin -#xmodmap ~/.Xmodmap - -# Read .xbindkeysrc for special key-bindings -xbindkeys - -# Setup two monitors at iddqd -if [ "$(hostname)" = "iddqd" ]; then - xrandr --output DVI-D-0 --primary - xrandr --output DP-1 --auto --left-of DVI-D-0 -fi - -if [ "$(hostname)" != "phony" ]; then - # default temperature is 6500 K day, 4500 K night - redshift -l 56.09:10.12 -t 7500:3300 & # Aarhus - #redshift -l 32.84:-117.26 & # San Diego -fi - -xset -b # Disable beeps -xset +dpms # Energy Star features on -xset dpms 300 600 900 # standby -> suspend -> off (seconds) -xset m 1/4 0 # mouse acceleration (xset m <acceleration> <threshold>) -xset r rate 300 50 # key repeat rate ([delay in ms] [repeats per sec]) - -# auto-start programs -unclutter & -dunst & -compton & -calcurse_reminders.py 15 & -slstatus & -keynav & - -# if changing WM, remember to change WM name in crontab -exec dwm diff --git a/links/.xpdfrc b/links/.xpdfrc @@ -1,10 +0,0 @@ -# See `man xpdfrc` for examples - -# vi-like movement -bind h any scrollLeft(16) -bind l any scrollRight(16) -bind k any scrollUp(16) -bind j any scrollDown(16) - - -bind p any toggleOutline diff --git a/links/.zprofile b/links/.zprofile @@ -1,3 +0,0 @@ -#!/usr/bin/env zsh - -. ~/.profile diff --git a/links/.zshrc b/links/.zshrc @@ -1,226 +0,0 @@ -#### ZSH PERFORMANCE DEBUG -debug_startup=false -[ "$debug_startup" = true ] && zmodload zsh/zprof - - -#### ZSH OPTIONS - -# man zshoptions -setopt append_history # zsh sessions append their history to the hist file -setopt autopushd # make cd push the old dir to the dir stack -setopt extendedglob # globs (. is file, / is dir) see `man zshexpn` -setopt hist_ignore_dups # ignore duplicate cmds in history -setopt histignorespace # don't store cmds prefixed with space in history -setopt interactivecomments # allow in-line comments in prompt -setopt prompt_subst # perform param exp, cmd subst, arith exp in prompt -setopt share_history # import new commands from the history file -unsetopt autocd # cd into directory if called by name -unsetopt beep # beep on error -unsetopt hist_verify # verify before executing cmd from history (e.g. !!) -unsetopt notify # report status of bg jobs immediately -unsetopt nomatch # show error if wildcards do not match any files - -autoload -Uz add-zsh-hook cdr chpwd_recent_dirs compinit edit-command-line \ - select-bracketed select-quoted zmv - -compinit -add-zsh-hook chpwd chpwd_recent_dirs - -zstyle completion:*:*:cdr:*:* menu selection -zstyle :chpwd:* recent-dirs-insert fallback -zstyle :chpwd:* recent-dirs-pushd true - -zle -N edit-command-line -zle -N select-bracketed -zle -N select-quoted -zle -N fzf-history-widget -zle -N history-substring-search-up -zle -N history-substring-search-down - -HISTFILE=~/.zhistory -HISTSIZE=$((2 ** 16)) -SAVEHIST=$((2 ** 17)) - -#### BINDINGS - -set -o vi -bindkey -v -bindkey jk vi-cmd-mode -bindkey -M vicmd v edit-command-line -bindkey -a ? fzf-history-widget -bindkey -a k history-substring-search-up -bindkey -a j history-substring-search-down -bindkey '^R' history-incremental-search-backward -bindkey "^j" history-beginning-search-backward -bindkey "^k" history-beginning-search-forward -bindkey '^P' up-line-or-search -bindkey '^N' down-line-or-search -bindkey '^ ' autosuggest-accept -bindkey '^_' autosuggest-execute - -# use Ctrl-Z as fg -_foreground() { - if [[ $#BUFFER -eq 0 ]]; then - BUFFER="fg" - zle accept-line - else - zle push-input - zle clear-screen - fi -} -zle -N _foreground -bindkey '^Z' _foreground - -# launch $EDITOR with Ctrl-e -_editor() { - BUFFER="$EDITOR" - zle accept-line -} -zle -N _editor -bindkey '^e' _editor - -# launch vim+fzf with Ctrl-f -_editor_fuzzy_find() { - BUFFER="vim -c ':FZF'" - zle accept-line -} -zle -N _editor_fuzzy_find -bindkey '^f' _editor_fuzzy_find - -# launch vim+fzf for recent files with Ctrl-o -_editor_fuzzy_history() { - BUFFER="vim -c ':History'" - zle accept-line -} -zle -N _editor_fuzzy_history -bindkey '^o' _editor_fuzzy_history - -# launch vim+fzf+rg with Ctrl-g -_editor_fuzzy_grep() { - BUFFER="vim -c ':Rg'" - zle accept-line -} -zle -N _editor_fuzzy_grep -bindkey '^g' _editor_fuzzy_grep - -# remember -n flag for dry runs -alias zmv='noglob zmv' -alias zcp='noglob zmv -C' -alias zln='noglob zmv -L' -alias zsy='noglob zmv -Ls' - - -#### ZSH APPEARANCE - -# show execution time of previous command if more than 1 sec -convertsecs() { - ((d=${1}/3600/24)) - ((h=${1}/3600%24)) - ((m=(${1}%3600)/60)) - ((s=${1}%60)) - if [ "$d" -gt "0" ]; then - printf " %dd%02dh%02dm%02ds" $d $h $m $s - elif [ "$h" -gt "0" ]; then - printf " %dh%02dm%02ds" $h $m $s - elif [ "$m" -gt "0" ]; then - printf " %dm%02ds" $m $s - elif [ "$s" -gt "0" ]; then - printf " %ds" $s - fi -} -preexec() { - timer=${timer:-$SECONDS} -} -precmd() { - if [ $timer ]; then - timer_show=$(convertsecs $(($SECONDS - $timer))) - export EXECTIME="${timer_show}" - unset timer - fi -} - -git_branch() { - branch_name=$(git symbolic-ref --short HEAD 2> /dev/null) - - if [ -n "$branch_name" ] - then - echo "$branch_name$(git_modified) " - fi -} - -git_grep_modified_files() { - grep -e "^.M" -e "^M." -e "^A." -e "^D." -e "^.D" -} - -git_modified() { - if [ -n "$(git status --porcelain 2> /dev/null | git_grep_modified_files)" ] - then - echo "*" - fi -} - -function prompt_with_vimode { - #echo -e "\a" - echo - echo -n '%(1j.%jbg .)' # background jobs - echo -n "$1" - [ -z "$1" ] && # show prompt symbol if no insert/normal mode is passed - echo -n '%(!.%{$fg_bold[red]%}#.$)' - echo -n '%{$reset_color%} ' -} - -insert_mode='' -normal_mode='N' # normal mode indicator - -rprompt() { - echo -n "%(?..%{$fg[red]%}[%?]%{$reset_color%})" # return status - echo -n "${EXECTIME} " # runtime of prev cmd - echo -n "%{$fg[cyan]%}$(git_branch)%{$reset_color%}" # git branch - echo -n "%~" # pwd - [ "$USER" != "ad" ] && echo -n "%n@" #username - [ "$HOST" != "idkfa" ] && echo -n "%m" #hostname -} - -PROMPT="$(prompt_with_vimode $insert_mode)" -RPROMPT="$(rprompt)" - -function zle-line-init zle-keymap-select { - PROMPT=$(prompt_with_vimode \ - ${${KEYMAP/vicmd/$normal_mode}/(main|viins)/$insert_mode}) - RPROMPT=$(rprompt) - zle reset-prompt -} - -zle -N zle-line-init -zle -N zle-keymap-select - - -#### PLUGINS -if [ -f "$HOME/.config/fffs/lib/zsh/sources" ]; then - . "$HOME/.config/fffs/lib/zsh/sources" -else - fffs zsh init - . "$HOME/.config/fffs/lib/zsh/sources" -fi - - -#### EXTRA COMMANDS - -# pass **<tab> -_fzf_complete_pass() { - _fzf_complete "--no-multi --preview-window=right:hidden" "$@" < <( - pwdir=${PASSWORD_STORE_DIR-~/.password-store/} - stringsize="${#pwdir}" - find "$pwdir" -name "*.gpg" -print | - cut -c "$((stringsize + 1))"- | - sed -e 's/\(.*\)\.gpg/\1/' - ) -} - -. ~/.commands.sh -. ~/.locale - -[ -f ~/.fzf.zsh ] && . ~/.fzf.zsh - -# report startup diagnostics if requested -[ "$debug_startup" = true ] && zprof || :