diff options
author | tinfoil-hat <mail@tinfoil-hat.net> | 2023-10-14 20:30:17 +0200 |
---|---|---|
committer | tinfoil-hat <mail@tinfoil-hat.net> | 2023-10-14 20:30:17 +0200 |
commit | 1b2205b505c4849748777611971cea513a074fc1 (patch) | |
tree | a0f7a09ee3cd418514e27b03d3028f2f8c665f6c | |
download | dotfiles-desktop-1b2205b505c4849748777611971cea513a074fc1.tar.gz dotfiles-desktop-1b2205b505c4849748777611971cea513a074fc1.tar.bz2 dotfiles-desktop-1b2205b505c4849748777611971cea513a074fc1.zip |
Initial Commit
-rw-r--r-- | .Xresources | 111 | ||||
-rw-r--r-- | .bashrc | 280 | ||||
m--------- | .config/awesome/alttab | 0 | ||||
-rwxr-xr-x | .config/awesome/autorun.sh | 18 | ||||
m--------- | .config/awesome/lain | 0 | ||||
-rw-r--r-- | .config/awesome/rc.lua | 599 | ||||
-rw-r--r-- | .config/awesome/theme.lua | 129 | ||||
-rw-r--r-- | .config/htop/htoprc | 39 | ||||
-rw-r--r-- | .config/mpd/mpd.conf | 22 | ||||
-rw-r--r-- | .config/ncmpcpp/config | 76 | ||||
-rw-r--r-- | .config/neofetch/config.conf | 125 | ||||
m--------- | .config/neofetch/neofetch-themes | 0 | ||||
-rw-r--r-- | .config/terminator/config | 20 | ||||
-rw-r--r-- | .newsboat/config | 53 | ||||
-rw-r--r-- | .profile | 29 | ||||
-rw-r--r-- | .screenrc | 12 | ||||
m--------- | .vim/pack/default/start/gruvbox | 0 | ||||
-rw-r--r-- | .vimrc | 99 | ||||
-rw-r--r-- | .weechat/irc.conf.blank | 332 | ||||
-rw-r--r-- | .weechat/weechat.conf | 960 | ||||
-rw-r--r-- | .xsession | 12 |
21 files changed, 2916 insertions, 0 deletions
diff --git a/.Xresources b/.Xresources new file mode 100644 index 0000000..afc8b50 --- /dev/null +++ b/.Xresources @@ -0,0 +1,111 @@ +! special +*.foreground: #c5c8c6 +*.background: #1e1e1e +*.cursorColor: #c5c8c6 + +! black +*.color0: #282a2e +*.color8: #373b41 + +! red +*.color1: #a54242 +*.color9: #cc6666 + +! green +*.color2: #8c9440 +*.color10: #b5bd68 + +! yellow +*.color3: #de935f +*.color11: #f0c674 + +! blue +*.color4: #5f819d +*.color12: #81a2be + +! magenta +*.color5: #85678f +*.color13: #b294bb + +! cyan +*.color6: #5e8d87 +*.color14: #8abeb7 + +! white +*.color7: #707880 +*.color15: #c5c8c6 + + +! URxvt Appearance + +Rxvt*font: xft:JetBrainsMono-Regular:size=9 +Rxvt*boldFont: xft:JetBrainsMono-Regular:bold:size=9 +Rxvt*italicFont: xft:JetBrainsMono-Regular:italic:autohint=true:size=9 +Rxvt*boldItalicFont: xft:JetBrainsMono-Regular:bold:italic:autohint=true:size=9 + +URxvt.keysym.Shift-C-Up: font-size:increase +URxvt.keysym.Shift-C-Down: font-size:decrease +URxvt.keysym.Shift-C-0: font-size:reset + +! DWM Colours +dwm.normbordercolor: #eeeeee +dwm.normbgcolor: #2b2b2b +dwm.normfgcolor: #ffffff +dwm.selbordercolor: #595959 +dwm.selbgcolor: #a58804 +dwm.selfgcolor: #ffffff + +! Setting transparency and background +! URxvt.depth: 32 +! URxvt*background: rgba:0000/0000/0000/cccc + + +URxvt.letterSpace: 0 +URxvt.lineSpace: -2 +URxvt.geometry: 80x25 +URxvt.internalBorder:10 +URxvt.cursorBlink: true +URxvt.cursorUnderline: false +URxvt.saveline: 2048 +URxvt.scrollBar: false +URxvt.scrollBar_right: false +URxvt.urgentOnBell: false +! URxvt.depth: 24 +URxvt.iso14755: false + +!! Common Keybinds for Navigations +URxvt.keysym.Shift-Up: command:\033]720;1\007 +URxvt.keysym.Shift-Down: command:\033]721;1\007 +URxvt.keysym.Control-Right: \033[1;5C +URxvt.keysym.Control-Left: \033[1;5D + +!! Copy Paste & Other Ex +URxvt.keysym.M-C-v: perl:clipboard:paste_escaped +URxvt.keysym.M-Escape: perl:keyboard-select:activate +URxvt.keysym.M-s: perl:keyboard-select:search +URxvt.keysym.M-u: perl:url-select:select_next +URxvt.underlineURLs: true +URxvt.urlButton: 1 + +! Link Handling +URxvt.url-launcher: /usr/bin/brave-browser +URxvt.colorUL: #36a832 +URxvt.perl-ext-common: default,matcher,font-size +URxvt.matcher.button: 1 + +! -- XIDLE -- ! +XIdle*position: sw +XIdle*delay: 1 +XIdle*timeout: 300 + +! -- XLOCK -- ! +xlock.description: off +xlock.echokeys: off +xlock.info: +xlock.background: color0 +xlock.foreground: FG +xlock.mode: blank +xlock.username: username: +xlock.password: password: +xlock.font: XFONT +xlock.planfont: XFONT @@ -0,0 +1,280 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +case $- in + *i*) ;; + *) return;; +esac + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# make less more friendly for non-text input files, see lesspipe(1) +[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color|*-256color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +#force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + #alias dir='dir --color=auto' + #alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# colored GCC warnings and errors +#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' + +# some more ls aliases +alias ll='ls -alF' +alias la='ls -A' +alias l='ls -CF' + +# Add an "alert" alias for long running commands. Use like so: +# sleep 10; alert +alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if ! shopt -oq posix; then + if [ -f /usr/share/bash-completion/bash_completion ]; then + . /usr/share/bash-completion/bash_completion + elif [ -f /etc/bash_completion ]; then + . /etc/bash_completion + fi +fi + + +# Check for an interactive session +[ -z "$PS1" ] && return + + +_PROMPT() { + _EXIT_STATUS=$? + [ $_EXIT_STATUS != 0 ] && _EXIT_STATUS_STR=" \[\033[38;5;7m\][\[$(tput sgr0)\]\[\033[38;5;9m\]$_EXIT_STATUS\[$(tput sgr0)\]\[\033[38;5;7m\]]\[$(tput sgr0)\]" + + _BRANCH=`git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'` + if [ ! $_BRANCH == "" ] + then + _BRANCH_STR="[\[$(tput sgr0)\]\[\033[38;5;11m\]$_BRANCH\[$(tput sgr0)\]\[\033[38;5;7m\]]" + else + _BRANCH_STR="" + fi + + PS1="\[\033[38;5;14m\]\u\[$(tput sgr0)\]\[\033[38;5;15m\]@\[$(tput sgr0)\]\[\033[38;5;6m\]\h\[$(tput sgr0)\] \[$(tput sgr0)\]\[\033[38;5;7m\]╺─╸\[$(tput sgr0)\]\[\033[38;5;15m\] \[$(tput sgr0)\]\[\033[38;5;7m\][\[$(tput sgr0)\]\[\033[38;5;14m\]\W\[$(tput sgr0)\]\[\033[38;5;7m\]]\[$(tput sgr0)\]\[\033[38;5;15m\] \[$(tput sgr0)\]\[\033[38;5;7m\]$_BRANCH_STR\[$(tput sgr0)\]\[\033[38;5;15m\] \n\[$(tput sgr0)\]\[\033[38;5;7m\][\[$(tput sgr0)\]\[\033[38;5;11m\]\A\[$(tput sgr0)\]\[\033[38;5;7m\]]\[$(tput sgr0)\]\[\033[38;5;15m\]$_EXIT_STATUS_STR \[$(tput sgr0)\]\[\033[38;5;7m\]>>\[$(tput sgr0)\] " + unset _EXIT_STATUS_STR + unset _EXIT_STATUS + unset _BRANCH_STR + unset _BRANCH +} + +PROMPT_COMMAND=_PROMPT + +# ALIASES + +alias kali-tools='sudo python3 ~/Software/git/portkali/portkali.py' +alias ll='ls -alF' +alias la='ls -A' +alias l='ls -CF' +alias ll="ls -lAF" +alias h="history 25" +alias office="cd ~ && clear && offlineimap && mu index --maildir ~/Mail" +alias rss="newsboat" +alias audio-ext="sysctl hw.snd.default_unit=4" +alias audio-int="sysctl hw.snd.default_unit=0" +alias ll="ls -lah" +alias corona="curl https://corona-stats.online" +# alias nasm="sudo sshfs -o uid=1000 -o gid=1000 -o allow_other root@192.168.178.200:/hdds/ /media/anon/nas " +alias corona-germany="curl https://corona-stats.online/germany" +alias torrent="aria2c --follow-torrent=mem --seed-time=0 -j 10" +alias fetch="neofetch --backend w3m --source ~/Bilder/tiger.png" +alias calendar="khal interactive" +alias bin=" | nc termbin.com 9999" +alias joplin="~/.npm-global/bin/joplin" +alias chrome="chrome --enable-features=WebUIDarkMode --force-dark-mode" +alias technobase="mpv http://listen.technobase.fm/tunein-mp3" +alias anonradio="torsocks mpv http://anonradio.net:8000/anonradio" +alias temps="watch -n 2 sensors" +alias backup="~/git/rsync-time-backup/rsync_tmbackup.sh ~/ /media/anon/8TB/backup/" +alias backup-ext="Software/git/rsync-time-backup/rsync_tmbackup.sh ~/ hetzner:/home/desktop/" +alias cal="ncal -w3C" +alias nanochan="torsocks w3m -o auto_image=FALSE https://nanochanqzaytwlydykbg5nxkgyjxk3zsrctxuoxdmbx5jbh2ydyprid.onion/" +alias didw="torsocks w3m -o auto_image=FALSE http://germanyruvvy2tcw.onion" +alias download-world="curl -s http://artscene.textfiles\.com/vt100/globe.vt | pv -L9600 -q" +alias darknet="torsocks w3m -o auto_image=FALSE .w3m/bookmark.html" +alias reechat="ssh weechat@vps -t screen -rd weechat" +alias cast-tay="sudo openvpn ~/Seafile/Crypt/tay.ovpn" +alias cast-tinfoil-hat="openvpn ~/Seafile/Crypt/vps.ovpn" +alias xfix="~/Software/scripts/xfix.sh" +alias goaccess="ssh tay -t goaccess -c /var/log/nginx/access.log" +alias config="git --git-dir=$HOME/.cfg/ --work-tree=$HOME" +alias berliner-rundfunk-91-4="mpv http://stream.berliner-rundfunk.de/brf/mp3-128/internetradio" +alias drop="~/Software/bin/plik" +alias p0wn.sh="./git/rice/hack.exe" +alias bg="feh -z ~/ssd/Seafile/dat/dont\ click/Wallpapers/" +alias dotup="dotfiles-remote-autoupdate && dotfiles-autoupdate" +alias poweroff="sudo poweroff" +alias installation-age="stat -c %w /" +alias db="distrobox" +alias kali="distrobox enter kali" +alias arch="distrobox enter arch" +alias fedora="distrobox enter fedora" +alias opensuse="distrobox enter opensuse" +alias ubuntu="distrobox enter ubuntu" +alias gentoo="distrobox enter gentoo" +alias debiantesting="distrobox enter debiantesting" +alias debian="distrobox enter debian" +alias matrix="gomuks" +alias nasm="sshfs -o uid=1000 -o gid=1000 -o reconnect u339896@u339896.your-storagebox.de:/ /media/anon/storagebox/" +alias nasmu="sudo umount /media/anon/storagebox" +alias mountnx="mount -t davfs https://nx.tinfoil-hat.net/remote.php/dav/files/Admin/Backups /media/anon/nextcloud" +alias monero=" cd ~/Software/Archive/xmrig-6.19.2/ && sudo ./xmrig -o xmr-eu1.nanopool.org:14433 -u 43JXSU4beuCXTDyBPnXfgK6jtrSTAqAaMSqVDYTdQkf1CdJsiPALLmmASAdhHsXgA698vobsjejp7VBagTA32QVbJ9UCq2A --tls --coin monero && cd" +alias stable-diffusion="bash ~/Software/scripts/stable-diffusion.sh" +alias kali="sudo docker run --tty --interactive kalilinux/kali-rolling" +alias youtube-dl="yt-dlp --cookies-from-browser chrome:~/.var/app/com.brave.Browser -o '%(title).100B [%(id)s].%(ext)s'" +alias webserver="python3 -m http.server" + +# Functions + +record-small-screen() { + filename="cast-$(date +"%Y-%m-%d_%H_%M")-$(uname -s)-$(uname -m)" + ffmpeg -f alsa -ac 2 -f x11grab -r 25 -s 1366x768 -i :0.0 -vcodec libx264 -pix_fmt yuv420p -preset ultrafast -crf 0 -threads 0 -acodec pcm_s16le -y ~/$filename.mkv +} +record-big-screen(){ + filename="cast-$(date +"%Y-%m-%d_%H_%M")-$(uname -s)-$(uname -m)" + ffmpeg -f alsa -ac 2 -f x11grab -r 25 -s 1920x1080 -i :0.0 -vcodec libx264 -pix_fmt yuv420p -preset ultrafast -crf 0 -threads 0 -acodec pcm_s16le -y ~/$filename.mkv +} + +wetter() { curl wttr.in/$1; } + +ytdl() { +torsocks mpv ytdl://$@ +} +news() { +NNTPSERVER='nntp.aioe.org' && export NNTPSERVER +slrn -f ~/.jnewsrc --create +} + +# Download Plemora emojis; requires curl and jq + +pleroma-emoji-dl() { +server=$1 + + curl $server/api/v1/custom_emojis | jq -r 'map(.url)|join("\n")|@text' | xargs wget --random-wait --wait=1 +} + +# NOTES FILE(S) +notes() { + VAR=$1 + if [ -z $VAR ]; then + /usr/local/bin/vim sftp://chrissly@goliath.tinfoil-hat.net/notes/default.txt + elif [ "$VAR" == "-h" ]; then + printf "Usage: notes [-l] [file]\n"; + printf " notes Open/Create \"default.txt\" file\n" + printf " notes <file> Open/Create \"<file>.txt\" file\n" + printf " notes -l Show available note files\n" + printf " notes -h Show this help\n" + elif [ "$VAR" == "-l" ]; then + printf "List of notes:\n" + ssh chrissly@sina.tinfoil-hat.net "ls -1 \$HOME/notes/*.txt | sed 's,.*/\(.*\)\.txt, - \1,g'" + else + vim sftp://chrissly@goliath.tinfoil-hat.net/notes/$1.txt + fi +} + + +# Dotfiles - Autocommit +function dotfiles-autoupdate { + config add -u && \ + config commit -m "Update $(date +"%Y-%m-%d %H:%M") $(uname -s)/$(uname -m)" && \ + config push origin master +} + +# Vars +GPG_TTY=$(tty) +NNTPSERVER='news.tilde.club' +TERMINAL='/usr/local/bin/urxvt' + +# Exports +export GPG_TTY +export LC_ALL=de_DE.UTF-8 +export NNTPSERVER +export PATH=$HOME/.bin:$PATH +export EDITOR=vim + +bind -s 'set completion-ignore-case on' +# source ~/Software/git/ble.sh/out/ble.sh + +[ -f ~/.fzf.bash ] && source ~/.fzf.bash diff --git a/.config/awesome/alttab b/.config/awesome/alttab new file mode 160000 +Subproject 40d70b7537e86697ec4918b8a3f84ecdc63feed diff --git a/.config/awesome/autorun.sh b/.config/awesome/autorun.sh new file mode 100755 index 0000000..d4d3abe --- /dev/null +++ b/.config/awesome/autorun.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +run() { + if ! pgrep -f "$1" ; + then + "$@"& + fi +} + +run blueman-applet +run nm-applet & +run picom & +run pnmixer & +run xrdb -load ~/.Xresources & +run feh --bg-scale Bilder/wall.jpg & +run seafile-applet & +run nextcloud & +run redshift & diff --git a/.config/awesome/lain b/.config/awesome/lain new file mode 160000 +Subproject c489aa63acc1364851e0e51152be3db5c75e145 diff --git a/.config/awesome/rc.lua b/.config/awesome/rc.lua new file mode 100644 index 0000000..44c4971 --- /dev/null +++ b/.config/awesome/rc.lua @@ -0,0 +1,599 @@ +-- If LuaRocks is installed, make sure that packages installed through it are +-- found (e.g. lgi). If LuaRocks is not installed, do nothing. +pcall(require, "luarocks.loader") + +-- Standard awesome library +local gears = require("gears") +local awful = require("awful") +require("awful.autofocus") +-- Widget and layout library +local wibox = require("wibox") +-- Theme handling library +local beautiful = require("beautiful") +-- Notification library +local naughty = require("naughty") +local menubar = require("menubar") +local hotkeys_popup = require("awful.hotkeys_popup") +-- Enable hotkeys help widget for VIM and other apps +-- when client with a matching name is opened: +require("awful.hotkeys_popup.keys") + +-- Load Debian menu entries +local debian = require("debian.menu") +local has_fdo, freedesktop = pcall(require, "freedesktop") + +-- {{{ Error handling +-- Check if awesome encountered an error during startup and fell back to +-- another config (This code will only ever execute for the fallback config) +if awesome.startup_errors then + naughty.notify({ preset = naughty.config.presets.critical, + title = "Oops, there were errors during startup!", + text = awesome.startup_errors }) +end + +-- Handle runtime errors after startup +do + local in_error = false + awesome.connect_signal("debug::error", function (err) + -- Make sure we don't go into an endless error loop + if in_error then return end + in_error = true + + naughty.notify({ preset = naughty.config.presets.critical, + title = "Oops, an error happened!", + text = tostring(err) }) + in_error = false + end) +end +-- }}} + +-- {{{ Variable definitions +-- Themes define colours, icons, font and wallpapers. +beautiful.init(gears.filesystem.get_themes_dir() .. "default/theme.lua") + +-- This is used later as the default terminal and editor to run. +terminal = "urxvt" +editor = os.getenv("vim") or "vim" +editor_cmd = terminal .. " -e " .. editor + +-- Default modkey. +-- Usually, Mod4 is the key with a logo between Control and Alt. +-- If you do not like this or do not have such a key, +-- I suggest you to remap Mod4 to another key using xmodmap or other tools. +-- However, you can use another modifier like Mod1, but it may interact with others. +modkey = "Mod4" + +-- Table of layouts to cover with awful.layout.inc, order matters. +awful.layout.layouts = { + awful.layout.suit.floating, +-- awful.layout.suit.tile, +-- awful.layout.suit.tile.left, +-- awful.layout.suit.tile.bottom, +-- awful.layout.suit.tile.top, +-- awful.layout.suit.fair, +-- awful.layout.suit.fair.horizontal, +awful.layout.suit.spiral, +-- awful.layout.suit.spiral.dwindle, +-- awful.layout.suit.max, +-- awful.layout.suit.max.fullscreen, +-- awful.layout.suit.magnifier, +-- awful.layout.suit.corner.nw, + -- awful.layout.suit.corner.ne, + -- awful.layout.suit.corner.sw, + -- awful.layout.suit.corner.se, + } +-- }}} + +-- {{{ Menu +-- Create a launcher widget and a main menu +myawesomemenu = { + { "hotkeys", function() hotkeys_popup.show_help(nil, awful.screen.focused()) end }, + { "manual", terminal .. " -e man awesome" }, + { "edit config", editor_cmd .. " " .. awesome.conffile }, + { "restart", awesome.restart }, + { "quit", function() awesome.quit() end }, +} + +local menu_awesome = { "awesome", myawesomemenu, beautiful.awesome_icon } +local menu_terminal = { "open terminal", terminal } + +if has_fdo then + mymainmenu = freedesktop.menu.build({ + before = { menu_awesome }, + after = { menu_terminal } + }) +else + mymainmenu = awful.menu({ + items = { + menu_awesome, + { "Debian", debian.menu.Debian_menu.Debian }, + menu_terminal, + } + }) +end + + +mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon, + menu = mymainmenu }) + +-- Menubar configuration +menubar.utils.terminal = terminal -- Set the terminal for applications that require it +-- }}} + +-- Keyboard map indicator and switcher +mykeyboardlayout = awful.widget.keyboardlayout() + +-- {{{ Wibar +-- Create a textclock widget +mytextclock = wibox.widget.textclock() + +-- Create a wibox for each screen and add it +local taglist_buttons = gears.table.join( + awful.button({ }, 1, function(t) t:view_only() end), + awful.button({ modkey }, 1, function(t) + if client.focus then + client.focus:move_to_tag(t) + end + end), + awful.button({ }, 3, awful.tag.viewtoggle), + awful.button({ modkey }, 3, function(t) + if client.focus then + client.focus:toggle_tag(t) + end + end), + awful.button({ }, 4, function(t) awful.tag.viewnext(t.screen) end), + awful.button({ }, 5, function(t) awful.tag.viewprev(t.screen) end) + ) + +local tasklist_buttons = gears.table.join( + awful.button({ }, 1, function (c) + if c == client.focus then + c.minimized = true + else + c:emit_signal( + "request::activate", + "tasklist", + {raise = true} + ) + end + end), + awful.button({ }, 3, function() + awful.menu.client_list({ theme = { width = 250 } }) + end), + awful.button({ }, 4, function () + awful.client.focus.byidx(1) + end), + awful.button({ }, 5, function () + awful.client.focus.byidx(-1) + end)) + +local function set_wallpaper(s) + -- Wallpaper + if beautiful.wallpaper then + local wallpaper = beautiful.wallpaper + -- If wallpaper is a function, call it with the screen + if type(wallpaper) == "function" then + wallpaper = wallpaper(s) + end + gears.wallpaper.maximized(wallpaper, s, true) + end +end + +-- Re-set wallpaper when a screen's geometry changes (e.g. different resolution) +screen.connect_signal("property::geometry", set_wallpaper) + +awful.screen.connect_for_each_screen(function(s) + -- Wallpaper + set_wallpaper(s) + + -- Each screen has its own tag table. + awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9" }, s, awful.layout.layouts[1]) + + -- Create a promptbox for each screen + s.mypromptbox = awful.widget.prompt() + -- Create an imagebox widget which will contain an icon indicating which layout we're using. + -- We need one layoutbox per screen. + s.mylayoutbox = awful.widget.layoutbox(s) + s.mylayoutbox:buttons(gears.table.join( + awful.button({ }, 1, function () awful.layout.inc( 1) end), + awful.button({ }, 3, function () awful.layout.inc(-1) end), + awful.button({ }, 4, function () awful.layout.inc( 1) end), + awful.button({ }, 5, function () awful.layout.inc(-1) end))) + -- Create a taglist widget + s.mytaglist = awful.widget.taglist { + screen = s, + filter = awful.widget.taglist.filter.all, + buttons = taglist_buttons + } + + -- Create a tasklist widget + s.mytasklist = awful.widget.tasklist { + screen = s, + filter = awful.widget.tasklist.filter.currenttags, + buttons = tasklist_buttons + } + + -- Create the wibox + s.mywibox = awful.wibar({ position = "top", screen = s }) + + -- Add widgets to the wibox + s.mywibox:setup { + layout = wibox.layout.align.horizontal, + { -- Left widgets + layout = wibox.layout.fixed.horizontal, + mylauncher, + s.mytaglist, + s.mypromptbox, + }, + s.mytasklist, -- Middle widget + { -- Right widgets + layout = wibox.layout.fixed.horizontal, + mykeyboardlayout, + wibox.widget.systray(), + mytextclock, + s.mylayoutbox, + }, + } +end) +-- }}} + +-- {{{ Mouse bindings +root.buttons(gears.table.join( + awful.button({ }, 3, function () mymainmenu:toggle() end), + awful.button({ }, 4, awful.tag.viewnext), + awful.button({ }, 5, awful.tag.viewprev) +)) +-- }}} + +-- {{{ Key bindings +globalkeys = gears.table.join( + awful.key({ modkey, }, "s", hotkeys_popup.show_help, + {description="show help", group="awesome"}), + awful.key({ modkey, }, "Left", awful.tag.viewprev, + {description = "view previous", group = "tag"}), + awful.key({ modkey, }, "Right", awful.tag.viewnext, + {description = "view next", group = "tag"}), + awful.key({ modkey, }, "Escape", awful.tag.history.restore, + {description = "go back", group = "tag"}), + + awful.key({ modkey, }, "j", + function () + awful.client.focus.byidx( 1) + end, + {description = "focus next by index", group = "client"} + ), + awful.key({ modkey, }, "k", + function () + awful.client.focus.byidx(-1) + end, + {description = "focus previous by index", group = "client"} + ), + awful.key({ modkey, }, "w", function () mymainmenu:show() end, + {description = "show main menu", group = "awesome"}), + + -- F keys + -- My Bindings + awful.key({modkey }, "F1", function () awful.util.spawn_with_shell("brave-browser") end), + awful.key({modkey }, "F2", function () awful.util.spawn_with_shell("nemo") end), + awful.key({modkey }, "F3", function () awful.util.spawn_with_shell("thunderbird") end), + awful.key({modkey }, "F4", function () awful.util.spawn_with_shell("element-desktop") end), + awful.key({modkey }, "F5", function () awful.util.spawn_with_shell("gnome-screenshot -i") end), + + -- Layout manipulation + awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end, + {description = "swap with next client by index", group = "client"}), + awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( -1) end, + {description = "swap with previous client by index", group = "client"}), + awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end, + {description = "focus the next screen", group = "screen"}), + awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end, + {description = "focus the previous screen", group = "screen"}), + awful.key({ modkey, }, "u", awful.client.urgent.jumpto, + {description = "jump to urgent client", group = "client"}), + awful.key({ modkey, }, "Tab", + function () + awful.client.focus.history.previous() + if client.focus then + client.focus:raise() + end + end, + {description = "go back", group = "client"}), + + -- Standard program + awful.key({ modkey, }, "Return", function () awful.spawn(terminal) end, + {description = "open a terminal", group = "launcher"}), + awful.key({ modkey, "Shift" }, "r", awesome.restart, + {description = "reload awesome", group = "awesome"}), + awful.key({ modkey, "Shift" }, "q", awesome.quit, + {description = "quit awesome", group = "awesome"}), + + awful.key({ modkey, }, "l", function () awful.tag.incmwfact( 0.05) end, + {description = "increase master width factor", group = "layout"}), + awful.key({ modkey, }, "h", function () awful.tag.incmwfact(-0.05) end, + {description = "decrease master width factor", group = "layout"}), + awful.key({ modkey, "Shift" }, "h", function () awful.tag.incnmaster( 1, nil, true) end, + {description = "increase the number of master clients", group = "layout"}), + awful.key({ modkey, "Shift" }, "l", function () awful.tag.incnmaster(-1, nil, true) end, + {description = "decrease the number of master clients", group = "layout"}), + awful.key({ modkey, "Control" }, "h", function () awful.tag.incncol( 1, nil, true) end, + {description = "increase the number of columns", group = "layout"}), + awful.key({ modkey, "Control" }, "l", function () awful.tag.incncol(-1, nil, true) end, + {description = "decrease the number of columns", group = "layout"}), + awful.key({ modkey, }, "space", function () awful.layout.inc( 1) end, + {description = "select next", group = "layout"}), + awful.key({ modkey, "Shift" }, "space", function () awful.layout.inc(-1) end, + {description = "select previous", group = "layout"}), + + awful.key({ modkey, "Control" }, "n", + function () + local c = awful.client.restore() + -- Focus restored client + if c then + c:emit_signal( + "request::activate", "key.unminimize", {raise = true} + ) + end + end, + {description = "restore minimized", group = "client"}), + +-- CUSTOM + + awful.key({modkey}, "o", awful.client.movetoscreen), + + awful.key({ modkey }, "l", function () awful.util.spawn("i3lock-fancy -f JetBrainsMono-Regular") end, + {description = "lockscreen", group = "lockscreen"}), + awful.key({ modkey }, "o", function () awful.spawn.with_shell("xdotool type $(grep -v '^#' ~/.bookmarks | dmenu -i -l 50 | cut -d' ' -f1)") end, + {description = "lockscreen", group = "lockscreen"}), + + + -- Prompt + awful.key({ modkey }, "r", function () awful.screen.focused().mypromptbox:run() end, + {description = "run prompt", group = "launcher"}), + + awful.key({ modkey }, "x", + function () + awful.prompt.run { + prompt = "Run Lua code: ", + textbox = awful.screen.focused().mypromptbox.widget, + exe_callback = awful.util.eval, + history_path = awful.util.get_cache_dir() .. "/history_eval" + } + end, + {description = "lua execute prompt", group = "awesome"}), + -- Menubar + awful.key({ modkey }, "d", function() menubar.show() end, + {description = "show the menubar", group = "launcher"}) +) + +clientkeys = gears.table.join( + awful.key({ modkey, }, "f", + function (c) + c.fullscreen = not c.fullscreen + c:raise() + end, + {description = "toggle fullscreen", group = "client"}), + awful.key({ modkey, "Shift" }, "w", function (c) c:kill() end, + {description = "close", group = "client"}), + awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle , + {description = "toggle floating", group = "client"}), + awful.key({ modkey, "Control" }, "Return", function (c) c:swap(awful.client.getmaster()) end, + {description = "move to master", group = "client"}), + awful.key({ modkey, }, "o", function (c) c:move_to_screen() end, + {description = "move to screen", group = "client"}), + awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end, + {description = "toggle keep on top", group = "client"}), + awful.key({ modkey, }, "n", + function (c) + -- The client currently has the input focus, so it cannot be + -- minimized, since minimized clients can't have the focus. + c.minimized = true + end , + {description = "minimize", group = "client"}), + awful.key({ modkey, }, "m", + function (c) + c.maximized = not c.maximized + c:raise() + end , + {description = "(un)maximize", group = "client"}), + awful.key({ modkey, "Control" }, "m", + function (c) + c.maximized_vertical = not c.maximized_vertical + c:raise() + end , + {description = "(un)maximize vertically", group = "client"}), + awful.key({ modkey, "Shift" }, "m", + function (c) + c.maximized_horizontal = not c.maximized_horizontal + c:raise() + end , + {description = "(un)maximize horizontally", group = "client"}) +) + +-- Bind all key numbers to tags. +-- Be careful: we use keycodes to make it work on any keyboard layout. +-- This should map on the top row of your keyboard, usually 1 to 9. +for i = 1, 9 do + globalkeys = gears.table.join(globalkeys, + -- View tag only. + awful.key({ modkey }, "#" .. i + 9, + function () + local screen = awful.screen.focused() + local tag = screen.tags[i] + if tag then + tag:view_only() + end + end, + {description = "view tag #"..i, group = "tag"}), + -- Toggle tag display. + awful.key({ modkey, "Control" }, "#" .. i + 9, + function () + local screen = awful.screen.focused() + local tag = screen.tags[i] + if tag then + awful.tag.viewtoggle(tag) + end + end, + {description = "toggle tag #" .. i, group = "tag"}), + -- Move client to tag. + awful.key({ modkey, "Shift" }, "#" .. i + 9, + function () + if client.focus then + local tag = client.focus.screen.tags[i] + if tag then + client.focus:move_to_tag(tag) + end + end + end, + {description = "move focused client to tag #"..i, group = "tag"}), + -- Toggle tag on focused client. + awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9, + function () + if client.focus then + local tag = client.focus.screen.tags[i] + if tag then + client.focus:toggle_tag(tag) + end + end + end, + {description = "toggle focused client on tag #" .. i, group = "tag"}) + ) +end + +clientbuttons = gears.table.join( + awful.button({ }, 1, function (c) + c:emit_signal("request::activate", "mouse_click", {raise = true}) + end), + awful.button({ modkey }, 1, function (c) + c:emit_signal("request::activate", "mouse_click", {raise = true}) + awful.mouse.client.move(c) + end), + awful.button({ modkey }, 3, function (c) + c:emit_signal("request::activate", "mouse_click", {raise = true}) + awful.mouse.client.resize(c) + end) +) + +-- Set keys +root.keys(globalkeys) +-- }}} + +-- {{{ Rules +-- Rules to apply to new clients (through the "manage" signal). +awful.rules.rules = { + -- All clients will match this rule. + { rule = { }, + properties = { border_width = beautiful.border_width, + border_color = beautiful.border_normal, + focus = awful.client.focus.filter, + raise = true, + keys = clientkeys, + buttons = clientbuttons, + screen = awful.screen.preferred, + placement = awful.placement.no_overlap+awful.placement.no_offscreen + } + }, + + -- Floating clients. + { rule_any = { + instance = { + "DTA", -- Firefox addon DownThemAll. + "copyq", -- Includes session name in class. + "pinentry", + }, + + -- Note that the name property shown in xprop might be set slightly after creation of the client + -- and the name shown there might not match defined rules here. + name = { + "Event Tester", -- xev. + }, + role = { + "AlarmWindow", -- Thunderbird's calendar. + "ConfigManager", -- Thunderbird's about:config. + "pop-up", -- e.g. Google Chrome's (detached) Developer Tools. + } + }, properties = { floating = true }}, + + -- Add titlebars to normal clients and dialogs + { rule_any = {type = { "normal", "dialog" }}, + except = {class ="rxvt"}, + properties = { titlebars_enabled = true } + }, + + -- Set Firefox to always map on the tag named "2" on screen 1. + { rule = { class = "rxvt" }, + properties = { screen = 1, tag = "1", tile=true } }, + { rule = { class = "Brave", switchtotag=true }, + properties = { screen = 1, tag = "2" } }, + { rule = { class = "Thunderbird", switchtotag=true }, + properties = { screen = 1, tag = "3" } }, + + +} +-- }}} + +-- {{{ Signals +-- Signal function to execute when a new client appears. +client.connect_signal("manage", function (c) + -- Set the windows at the slave, + -- i.e. put it at the end of others instead of setting it master. + -- if not awesome.startup then awful.client.setslave(c) end + + if awesome.startup + and not c.size_hints.user_position + and not c.size_hints.program_position then + -- Prevent clients from being unreachable after screen count changes. + awful.placement.no_offscreen(c) + end +end) + +-- Add a titlebar if titlebars_enabled is set to true in the rules. +client.connect_signal("request::titlebars", function(c) + -- buttons for the titlebar + local buttons = gears.table.join( + awful.button({ }, 1, function() + c:emit_signal("request::activate", "titlebar", {raise = true}) + awful.mouse.client.move(c) + end), + awful.button({ }, 3, function() + c:emit_signal("request::activate", "titlebar", {raise = true}) + awful.mouse.client.resize(c) + end) + ) + + awful.titlebar(c) : setup { + { -- Left + awful.titlebar.widget.iconwidget(c), + buttons = buttons, + layout = wibox.layout.fixed.horizontal + }, + { -- Middle + { -- Title + align = "center", + widget = awful.titlebar.widget.titlewidget(c) + }, + buttons = buttons, + layout = wibox.layout.flex.horizontal + }, + { -- Right + awful.titlebar.widget.floatingbutton (c), + awful.titlebar.widget.maximizedbutton(c), + awful.titlebar.widget.stickybutton (c), + awful.titlebar.widget.ontopbutton (c), + awful.titlebar.widget.closebutton (c), + layout = wibox.layout.fixed.horizontal() + }, + layout = wibox.layout.align.horizontal + } +end) + +-- Enable sloppy focus, so that focus follows mouse. +client.connect_signal("mouse::enter", function(c) + c:emit_signal("request::activate", "mouse_enter", {raise = false}) +end) + +client.connect_signal("focus", function(c) c.border_color = beautiful.border_focus end) +client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_normal end) +-- }}} +-- Autostart +awful.spawn.with_shell("~/.config/awesome/autorun.sh") + diff --git a/.config/awesome/theme.lua b/.config/awesome/theme.lua new file mode 100644 index 0000000..6f6d876 --- /dev/null +++ b/.config/awesome/theme.lua @@ -0,0 +1,129 @@ +--------------------------- +-- Default awesome theme -- +--------------------------- + +local theme_assets = require("beautiful.theme_assets") +local xresources = ~/.Xresources -- require("beautiful.xresources") +local dpi = xresources.apply_dpi + +local gfs = require("gears.filesystem") +local themes_path = gfs.get_themes_dir() + +local theme = {} + +theme.font = "JetBrainsMono-Regular 10" + +theme.bg_normal = "#222222" +theme.bg_focus = "#535d6c" +theme.bg_urgent = "#ff0000" +theme.bg_minimize = "#444444" +theme.bg_systray = "#535d6c" + +theme.fg_normal = "#aaaaaa" +theme.fg_focus = "#ffffff" +theme.fg_urgent = "#ffffff" +theme.fg_minimize = "#ffffff" + +theme.useless_gap = dpi(10) +theme.border_width = dpi(1) +theme.border_normal = "#000000" +theme.border_focus = "#535d6c" +theme.border_marked = "#91231c" + +-- There are other variable sets +-- overriding the default one when +-- defined, the sets are: +-- taglist_[bg|fg]_[focus|urgent|occupied|empty|volatile] +-- tasklist_[bg|fg]_[focus|urgent] +-- titlebar_[bg|fg]_[normal|focus] +-- tooltip_[font|opacity|fg_color|bg_color|border_width|border_color] +-- mouse_finder_[color|timeout|animate_timeout|radius|factor] +-- prompt_[fg|bg|fg_cursor|bg_cursor|font] +-- hotkeys_[bg|fg|border_width|border_color|shape|opacity|modifiers_fg|label_bg|label_fg|group_margin|font|description_font] +-- Example: +--theme.taglist_bg_focus = "#ff0000" + +-- Generate taglist squares: +local taglist_square_size = dpi(4) +theme.taglist_squares_sel = theme_assets.taglist_squares_sel( + taglist_square_size, theme.fg_normal +) +theme.taglist_squares_unsel = theme_assets.taglist_squares_unsel( + taglist_square_size, theme.fg_normal +) + +-- Variables set for theming notifications: +-- notification_font +-- notification_[bg|fg] +-- notification_[width|height|margin] +-- notification_[border_color|border_width|shape|opacity] + +-- Variables set for theming the menu: +-- menu_[bg|fg]_[normal|focus] +-- menu_[border_color|border_width] +theme.menu_submenu_icon = themes_path.."default/submenu.png" +theme.menu_height = dpi(15) +theme.menu_width = dpi(100) + +-- You can add as many variables as +-- you wish and access them by using +-- beautiful.variable in your rc.lua +--theme.bg_widget = "#cc0000" + +-- Define the image to load +theme.titlebar_close_button_normal = themes_path.."default/titlebar/close_normal.png" +theme.titlebar_close_button_focus = themes_path.."default/titlebar/close_focus.png" + +theme.titlebar_minimize_button_normal = themes_path.."default/titlebar/minimize_normal.png" +theme.titlebar_minimize_button_focus = themes_path.."default/titlebar/minimize_focus.png" + +theme.titlebar_ontop_button_normal_inactive = themes_path.."default/titlebar/ontop_normal_inactive.png" +theme.titlebar_ontop_button_focus_inactive = themes_path.."default/titlebar/ontop_focus_inactive.png" +theme.titlebar_ontop_button_normal_active = themes_path.."default/titlebar/ontop_normal_active.png" +theme.titlebar_ontop_button_focus_active = themes_path.."default/titlebar/ontop_focus_active.png" + +theme.titlebar_sticky_button_normal_inactive = themes_path.."default/titlebar/sticky_normal_inactive.png" +theme.titlebar_sticky_button_focus_inactive = themes_path.."default/titlebar/sticky_focus_inactive.png" +theme.titlebar_sticky_button_normal_active = themes_path.."default/titlebar/sticky_normal_active.png" +theme.titlebar_sticky_button_focus_active = themes_path.."default/titlebar/sticky_focus_active.png" + +theme.titlebar_floating_button_normal_inactive = themes_path.."default/titlebar/floating_normal_inactive.png" +theme.titlebar_floating_button_focus_inactive = themes_path.."default/titlebar/floating_focus_inactive.png" +theme.titlebar_floating_button_normal_active = themes_path.."default/titlebar/floating_normal_active.png" +theme.titlebar_floating_button_focus_active = themes_path.."default/titlebar/floating_focus_active.png" + +theme.titlebar_maximized_button_normal_inactive = themes_path.."default/titlebar/maximized_normal_inactive.png" +theme.titlebar_maximized_button_focus_inactive = themes_path.."default/titlebar/maximized_focus_inactive.png" +theme.titlebar_maximized_button_normal_active = themes_path.."default/titlebar/maximized_normal_active.png" +theme.titlebar_maximized_button_focus_active = themes_path.."default/titlebar/maximized_focus_active.png" + +-- You can use your own layout icons like this: +theme.layout_fairh = themes_path.."default/layouts/fairhw.png" +theme.layout_fairv = themes_path.."default/layouts/fairvw.png" +theme.layout_floating = themes_path.."default/layouts/floatingw.png" +theme.layout_magnifier = themes_path.."default/layouts/magnifierw.png" +theme.layout_max = themes_path.."default/layouts/maxw.png" +theme.layout_fullscreen = themes_path.."default/layouts/fullscreenw.png" +theme.layout_tilebottom = themes_path.."default/layouts/tilebottomw.png" +theme.layout_tileleft = themes_path.."default/layouts/tileleftw.png" +theme.layout_tile = themes_path.."default/layouts/tilew.png" +theme.layout_tiletop = themes_path.."default/layouts/tiletopw.png" +theme.layout_spiral = themes_path.."default/layouts/spiralw.png" +theme.layout_dwindle = themes_path.."default/layouts/dwindlew.png" +theme.layout_cornernw = themes_path.."default/layouts/cornernww.png" +theme.layout_cornerne = themes_path.."default/layouts/cornernew.png" +theme.layout_cornersw = themes_path.."default/layouts/cornersww.png" +theme.layout_cornerse = themes_path.."default/layouts/cornersew.png" + +-- Generate Awesome icon: +theme.awesome_icon = theme_assets.awesome_icon( + theme.menu_height, theme.bg_focus, theme.fg_focus +) + +-- Define the icon theme for application icons. If not set then the icons +-- from /usr/share/icons and /usr/share/icons/hicolor will be used. +theme.icon_theme = "Mate Black" + +return theme + +-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80 diff --git a/.config/htop/htoprc b/.config/htop/htoprc new file mode 100644 index 0000000..bd9d1bc --- /dev/null +++ b/.config/htop/htoprc @@ -0,0 +1,39 @@ +# Beware! This file is rewritten by htop when settings are changed in the interface. +# The parser is also very primitive, and not human-friendly. +fields=0 48 17 18 38 39 40 2 46 47 49 1 +sort_key=46 +sort_direction=-1 +tree_sort_key=46 +tree_sort_direction=-1 +hide_kernel_threads=1 +hide_userland_threads=0 +shadow_other_users=0 +show_thread_names=0 +show_program_path=0 +highlight_base_name=0 +highlight_megabytes=1 +highlight_threads=1 +highlight_changes=0 +highlight_changes_delay_secs=5 +find_comm_in_cmdline=1 +strip_exe_from_cmdline=1 +show_merged_command=0 +tree_view=1 +tree_view_always_by_pid=0 +header_margin=1 +detailed_cpu_time=0 +cpu_count_from_one=0 +show_cpu_usage=1 +show_cpu_frequency=0 +show_cpu_temperature=0 +degree_fahrenheit=0 +update_process_names=0 +account_guest_in_cpu_meter=0 +color_scheme=0 +enable_mouse=1 +delay=15 +left_meters=LeftCPUs2 Memory Swap +left_meter_modes=1 1 1 +right_meters=RightCPUs2 Tasks LoadAverage Uptime +right_meter_modes=1 2 2 2 +hide_function_bar=0 diff --git a/.config/mpd/mpd.conf b/.config/mpd/mpd.conf new file mode 100644 index 0000000..51b5cd4 --- /dev/null +++ b/.config/mpd/mpd.conf @@ -0,0 +1,22 @@ +# Recommended location for database +db_file "~/.config/mpd/database" + +# If running mpd using systemd, delete this line to log directly to systemd. +log_file "syslog" + +# The music directory is by default the XDG directory, uncomment to amend and choose a different directory +music_directory "~/Musik/" + +# Uncomment to refresh the database whenever files in the music_directory are changed +auto_update "yes" + +# Uncomment to enable the functionalities +playlist_directory "~/.config/mpd/playlists" +pid_file "~/.config/mpd/pid" +state_file "~/.local/state/mpd/state" +sticker_file "~/.config/mpd/sticker.sql" + +audio_output { + type "pulse" + name "pulse audio" +} diff --git a/.config/ncmpcpp/config b/.config/ncmpcpp/config new file mode 100644 index 0000000..1e8e9fd --- /dev/null +++ b/.config/ncmpcpp/config @@ -0,0 +1,76 @@ +# Playlist +playlist_disable_highlight_delay = "0" +playlist_display_mode = "columns" +playlist_show_remaining_time = "yes" + +browser_display_mode = "columns" +autocenter_mode = "yes" +follow_now_playing_lyrics = "yes" +song_columns_list_format = "(10)[blue]{l} (30)[green]{a} (30)[magenta]{b} (50)[yellow]{t}" +colors_enabled = "yes" +main_window_color = "white" +header_window_color = "cyan" +volume_color = "red" +progressbar_color = "cyan" +statusbar_color = "white" +active_window_border = "blue" + +alternative_header_first_line_format = "$0$aqqu$/a {$7%a - $9}{$5%t$9}|{$8%f$9} $0$atqq$/a$9" +alternative_header_second_line_format = "{{$6%b$9}{ [$6%y$9]}}|{%D}" +song_list_format = "{$3%n ââ€Â‚ $9}{$7%a - $9}{$5%t$9}|{$8%f$9}$R{$6 ââ€Â‚ %b$9}{$3 ââ€Â‚ %l$9}" +user_interface = "alternative" +#user_interface = "classic" +default_place_to_search_in = "database" + + +# # visualizer +# visualizer_fifo_path = "/tmp/mpd.fifo" +# visualizer_output_name = "my_fifo" +# visualizer_sync_interval = "12" +# #visualizer_type = "wave" (spectrum/wave) +# #visualizer_type = "spectrum" (spectrum/wave) +# visualizer_in_stereo = "yes" +# visualizer_look = "+|" + + +## Navigation ## +cyclic_scrolling = "yes" +header_text_scrolling = "yes" +jump_to_now_playing_song_at_start = "yes" +lines_scrolled = "2" + +## Disable Mouse ## +mouse_support = no + +## Other ## +system_encoding = "utf-8" +regular_expressions = "extended" + + + +## Selected tracks ## +selected_item_prefix = "* " +discard_colors_if_item_is_selected = "no" + +## Seeking ## +incremental_seeking = "yes" +seek_time = "1" + +## Visivility ## +header_visibility = "yes" +statusbar_visibility = "yes" +titles_visibility = "yes" + + +progressbar_look = "=>-" +progressbar_elapsed_color = "white" + +now_playing_prefix = "> " +song_status_format = " $2%a $4⟫$3⟫ $8%t $4⟫$3⟫ $5%b " +centered_cursor = "yes" + +# Misc +display_bitrate = "yes" +# enable_window_title = "no" +ignore_leading_the = "yes" +empty_tag_marker = "" diff --git a/.config/neofetch/config.conf b/.config/neofetch/config.conf new file mode 100644 index 0000000..703e987 --- /dev/null +++ b/.config/neofetch/config.conf @@ -0,0 +1,125 @@ +# Source: https://github.com/Chick2D/neofetch-themes/ +# Made by https://github.com/tralph3 +# Customization Wiki https://github.com/dylanaraps/neofetch/wiki/Customizing-Info + +# Colour config is here and in .zshrc + +print_info() { + info title + info underline + + prin "$(color 12)╭──────────── $(color 10)Software$(color 12) ────────────" + info "$(color 12)│ $(color 14)OS" distro + info "$(color 12)│ $(color 14)Kernel" kernel + info "$(color 12)│ $(color 14)Packages" packages + info "$(color 12)│ $(color 14)Shell" shell + info "$(color 12)│ $(color 14)DE" de + info "$(color 12)│ $(color 14)Terminal" term + prin "$(color 12)├──────────── $(color 10)Hardware$(color 12) ────────────" + info "$(color 12)│ $(color 14)Host" model + info "$(color 12)│ $(color 14)CPU" cpu + info "$(color 12)│ $(color 14)GPU" gpu + info "$(color 12)│ $(color 14)Memory" memory + info "$(color 12)│ $(color 14)Disk" disk + prin "$(color 12)├───────────── $(color 10)Uptime$(color 12) ─────────────" + info "$(color 12)│" uptime + prin "$(color 12)╰──────────────────────────────────" + + info cols + + # Defaults + + # info "OS" distro + # info "Host" model + # info "Kernel" kernel + # info "Uptime" uptime + # info "Packages" packages + # info "Shell" shell + # info "Resolution" resolution + # info "DE" de + # info "WM" wm + # info "WM Theme" wm_theme + # info "Theme" theme + # info "Icons" icons + # info "Terminal" term + # info "Terminal Font" term_font + # info "CPU" cpu + # info "GPU" gpu + # info "Memory" memory + + # info "GPU Driver" gpu_driver # Linux/macOS only + # info "CPU Usage" cpu_usage + # info "Disk" disk + # info "Battery" battery + # info "Font" font + # info "Song" song + # [[ "$player" ]] && prin "Music Player" "$player" + # info "Local IP" local_ip + # info "Public IP" public_ip + # info "Users" users + # info "Locale" locale # This only works on glibc systems. + + # info cols + +} + +# To know what these functions mean, go to the Customization Wiki on top + +title_fqdn="off" +kernel_shorthand="on" +distro_shorthand="on" +os_arch="off" +uptime_shorthand="off" +memory_percent="off" +memory_unit="mib" +package_managers="on" +shell_path="off" +shell_version="on" +cpu_brand="on" +cpu_speed="on" +cpu_cores="logical" +cpu_temp="off" +gpu_type="all" +refresh_rate="on" +gtk_shorthand="on" +gtk2="on" +gtk3="on" +public_ip_host="http://ident.me" +public_ip_timeout=2 +de_version="on" +disk_subtitle="dir" +disk_percent="on" +music_player="auto" +song_format="%artist% - %title%" +mpc_args=() +colors=(distro) +underline_enabled="on" +underline_char="¨" +separator="›" +color_blocks="on" +block_width=3 +block_height=1 +col_offset="auto" +bar_char_elapsed="-" +bar_char_total="=" +bar_border="on" +bar_length=15 +bar_color_elapsed="distro" +bar_color_total="distro" +cpu_display="off" +memory_display="off" +battery_display="off" +disk_display="off" +image_source="auto" +ascii_distro="auto" +ascii_bold="on" +image_loop="off" +thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch" +crop_mode="normal" +crop_offset="center" +image_size="auto" +gap=3 +yoffset=0 +xoffset=0 +background_color= +stdout="off" diff --git a/.config/neofetch/neofetch-themes b/.config/neofetch/neofetch-themes new file mode 160000 +Subproject c7392136bed264258c9b8788b14410e1ff06d60 diff --git a/.config/terminator/config b/.config/terminator/config new file mode 100644 index 0000000..13106da --- /dev/null +++ b/.config/terminator/config @@ -0,0 +1,20 @@ +[global_config] + suppress_multiple_term_dialog = True +[keybindings] +[profiles] + [[default]] + background_color = "#1d1f21" + font = JetBrains Mono Light 10 + foreground_color = "#c5c8c6" + palette = "#282a2e:#a54242:#8c9440:#de935f:#5f819d:#85678f:#5e8d87:#707880:#373b41:#cc6666:#b5bd68:#f0c674:#81a2be:#b294bb:#8abeb7:#c5c8c6" + use_system_font = False +[layouts] + [[default]] + [[[child1]]] + type = Terminal + parent = window0 + profile = default + [[[window0]]] + type = Window + parent = "" +[plugins] diff --git a/.newsboat/config b/.newsboat/config new file mode 100644 index 0000000..8da8ff2 --- /dev/null +++ b/.newsboat/config @@ -0,0 +1,53 @@ +external-url-viewer "urlscan -dc -r 'linkhandler {$1}'" + +download-retries 2 +download-timeout 20 +use-proxy no +proxy-type socks5h +proxy 127.0.0.1:9050 +user-agent "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0" +history-limit 0 +reload-threads 4 +auto-reload yes +suppress-first-reload yes +reload-time 20 +notify-beep no +confirm-exit yes +save-path "~/Documents/rss/" +browser "/usr/bin/brave-browser %u" + + +bind-key U show-urls +bind-key s save + +feedlist-format "%?T?║%4i %n %8u (%T) %t &╠═══════ - %t? + +macro , open-in-browser + +# macro a set browser "tsp youtube-dl --add-metadata -xic -f bestaudio/best" ; open-in-browser ; set browser linkhandler +macro m set browser "setsid -f mpv" ; open-in-browser ; set browser linkhandler +macro v set browser "setsid -f mpv" ; open-in-browser ; set browser linkhandler +macro l set browser "/usr/local/bin/lynx" ; open-in-browser ; set browser linkhandler +macro f set browser "/usr/loacl/bin/feh" ; open-in-browser ; set browser linkhandler + +color listnormal cyan default +color listfocus default default standout bold +color listnormal_unread green default +color listfocus_unread green default bold +color info default black bold +color article white default bold + +highlight all "---.*---" white +highlight feedlist ".*(0/0))" white +highlight article "(^Feed:.*|^Title:.*|^Author:.*)" white default bold +highlight article "(^Link:.*|^Date:.*)" default default +highlight article "https?://[^ ]+" green default +highlight article "^(Title):.*$" yellow default +highlight article "\\[[0-9][0-9]*\\]" cyan default bold +highlight article "\\[image/\\ [0-9]+\\]" white default bold +highlight article "\\[embedded flash: [0-9][0-9]*\\]" white default bold +highlight article ":.*\\(link\\)$" green default +highlight article ":.*\\(image\\)$" yellow default +highlight article ":.*\\(embedded flash\\)$" magenta default + + diff --git a/.profile b/.profile new file mode 100644 index 0000000..e7398c5 --- /dev/null +++ b/.profile @@ -0,0 +1,29 @@ +# ~/.profile: executed by the command interpreter for login shells. +# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login +# exists. +# see /usr/share/doc/bash/examples/startup-files for examples. +# the files are located in the bash-doc package. + +# the default umask is set in /etc/profile; for setting the umask +# for ssh logins, install and configure the libpam-umask package. +#umask 022 + +# if running bash +if [ -n "$BASH_VERSION" ]; then + # include .bashrc if it exists + if [ -f "$HOME/.bashrc" ]; then + . "$HOME/.bashrc" + fi +fi + +# set PATH so it includes user's private bin if it exists +if [ -d "$HOME/bin" ] ; then + PATH="$HOME/bin:$PATH" +fi + +# set PATH so it includes user's private bin if it exists +if [ -d "$HOME/.local/bin" ] ; then + PATH="$HOME/.local/bin:$PATH" +fi +[ ! -s ~/.config/mpd/pid ] && mpd + diff --git a/.screenrc b/.screenrc new file mode 100644 index 0000000..59bcb7d --- /dev/null +++ b/.screenrc @@ -0,0 +1,12 @@ +screen -t /bin/bash + +altscreen on +term screen-256color +bind ',' prev +bind '.' next + +#change the hardstatus settings to give an window list at the bottom of the +##screen, with the time and date and with the current window highlighted +hardstatus alwayslastline +# hardstatus string '%{= kG}%-Lw%{= kW}%50> %n%f* %t%{= kG}%+Lw%< %{= kG}%-=%c:%s%{-}' +hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]' diff --git a/.vim/pack/default/start/gruvbox b/.vim/pack/default/start/gruvbox new file mode 160000 +Subproject f1ecde848f0cdba877acb0c740320568252cc48 @@ -0,0 +1,99 @@ +" Colour +colorscheme gruvbox +set background=dark + +" With a map leader it's possible to do extra key combinations +" like <leader>w saves the current file +let mapleader = "," + +" Enable type file detection. Vim will be able to try to detect the type of file in use. +filetype on + +" Enable plugins and load plugin for the detected file type. +filetype plugin on + +" Load an indent file for the detected file type. +filetype indent on + +" Turn syntax highlighting on. +syntax on + +" Add numbers to each line on the left-hand side. +set number + +" Highlight cursor line underneath the cursor horizontally. +set cursorline + +" Highlight cursor line underneath the cursor vertically. +" set cursorcolumn + +" Set shift width to 4 spaces. +set shiftwidth=4 + +" Set tab width to 4 columns. +set tabstop=4 + +" Use space characters instead of tabs. +set expandtab + +" Do not save backup files. +set nobackup + +" Do not wrap lines. Allow long lines to extend as far as the line goes. +set nowrap + +" While searching though a file incrementally highlight matching characters as you type. +set incsearch + +" Ignore capital letters during search. +set ignorecase + +" Override the ignorecase option if searching for capital letters. +" This will allow you to search specifically for capital letters. +set smartcase + +" Show matching words during a search. +set showmatch + +" Use highlighting when doing a search. +set hlsearch + +" Set the commands to save in history default number is 20. +set history=1000 + +" Enable auto completion menu after pressing TAB. +set wildmenu + +" Make wildmenu behave like similar to Bash completion. +set wildmode=list:longest + +" There are certain files that we would never want to edit with Vim. +" Wildmenu will ignore files with these extensions. +set wildignore=*.docx,*.jpg,*.png,*.gif,*.pdf,*.pyc,*.exe,*.flv,*.img,*.xlsx + +" Enable 256 colors palette in Gnome Terminal +if $COLORTERM == 'gnome-terminal' + set t_Co=256 +endif + +" Returns true if the color hex value is light +function! IsHexColorLight(color) abort + let l:raw_color = trim(a:color, '#') + + let l:red = str2nr(substitute(l:raw_color, '(.{2}).{4}', '1', 'g'), 16) + let l:green = str2nr(substitute(l:raw_color, '.{2}(.{2}).{2}', '1', 'g'), 16) + let l:blue = str2nr(substitute(l:raw_color, '.{4}(.{2})', '1', 'g'), 16) + + let l:brightness = ((l:red * 299) + (l:green * 587) + (l:blue * 114)) / 1000 + + return l:brightness > 155 +endfunction + +func! WordProcessorMode() + setlocal textwidth=80 + setlocal smartindent + setlocal spell spelllang=en_us + setlocal noexpandtab +endfu + + diff --git a/.weechat/irc.conf.blank b/.weechat/irc.conf.blank new file mode 100644 index 0000000..9cac1ab --- /dev/null +++ b/.weechat/irc.conf.blank @@ -0,0 +1,332 @@ +# +# weechat -- irc.conf +# +# WARNING: It is NOT recommended to edit this file by hand, +# especially if WeeChat is running. +# +# Use /set or similar command to change settings in WeeChat. +# +# For more info, see: https://weechat.org/doc/quickstart +# + +[look] +buffer_open_before_autojoin = on +buffer_open_before_join = off +buffer_switch_autojoin = on +buffer_switch_join = on +color_nicks_in_names = off +color_nicks_in_nicklist = off +color_nicks_in_server_messages = on +color_pv_nick_like_channel = on +ctcp_time_format = "%a, %d %b %Y %T %z" +display_away = local +display_ctcp_blocked = on +display_ctcp_reply = on +display_ctcp_unknown = on +display_host_join = on +display_host_join_local = on +display_host_quit = on +display_join_message = "329,332,333,366" +display_old_topic = on +display_pv_away_once = on +display_pv_back = on +display_pv_warning_address = off +highlight_channel = "$nick" +highlight_pv = "$nick" +highlight_server = "$nick" +highlight_tags_restrict = "irc_privmsg,irc_notice" +item_channel_modes_hide_args = "k" +item_display_server = buffer_plugin +item_nick_modes = on +item_nick_prefix = on +join_auto_add_chantype = off +msgbuffer_fallback = current +new_channel_position = none +new_pv_position = none +nick_completion_smart = speakers +nick_mode = prefix +nick_mode_empty = off +nicks_hide_password = "nickserv" +notice_as_pv = auto +notice_welcome_redirect = on +notice_welcome_tags = "" +notify_tags_ison = "notify_message" +notify_tags_whois = "notify_message" +part_closes_buffer = off +pv_buffer = independent +pv_tags = "notify_private" +raw_messages = 256 +server_buffer = merge_with_core +smart_filter = on +smart_filter_account = 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_account = cyan +message_chghost = brown +message_join = green +message_kick = red +message_quit = red +mirc_remap = "1,-1:darkgray" +nick_prefixes = "y:lightred;q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue" +notice = green +reason_kick = default +reason_quit = default +topic_current = default +topic_new = white +topic_old = default + +[network] +autoreconnect_delay_growing = 2 +autoreconnect_delay_max = 600 +ban_mask_default = "*!$ident@$host" +colors_receive = on +colors_send = on +lag_check = 60 +lag_max = 1800 +lag_min_show = 500 +lag_reconnect = 300 +lag_refresh_interval = 1 +notify_check_ison = 1 +notify_check_whois = 5 +sasl_fail_unavailable = on +send_unknown_commands = off +whois_double_nick = off + +[msgbuffer] + +[ctcp] + +[ignore] + +[server_default] +addresses = "" +anti_flood_prio_high = 2 +anti_flood_prio_low = 2 +autoconnect = off +autojoin = "" +autoreconnect = on +autoreconnect_delay = 10 +autorejoin = off +autorejoin_delay = 30 +away_check = 0 +away_check_max_nicks = 25 +capabilities = "" +charset_message = message +command = "" +command_delay = 0 +connection_timeout = 60 +ipv6 = on +local_hostname = "" +msg_kick = "" +msg_part = "WeeChat ${info:version}" +msg_quit = "WeeChat ${info:version}" +nicks = "tinfoil-hat,tinfoil-hat1,tinfoil-hat2,tinfoil-hat3,tinfoil-hat4" +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_password = "" +ssl_priorities = "NORMAL:-VERS-SSL3.0" +ssl_verify = on +usermode = "" +username = "tinfoil-hat" + +[server] +uugrn.addresses = "irc.uugrn.org/6669" +uugrn.proxy +uugrn.ipv6 +uugrn.ssl +uugrn.ssl_cert +uugrn.ssl_password +uugrn.ssl_priorities +uugrn.ssl_dhkey_size +uugrn.ssl_fingerprint +uugrn.ssl_verify +uugrn.password +uugrn.capabilities +uugrn.sasl_mechanism +uugrn.sasl_username +uugrn.sasl_password +uugrn.sasl_key +uugrn.sasl_timeout +uugrn.sasl_fail +uugrn.autoconnect = on +uugrn.autoreconnect +uugrn.autoreconnect_delay +uugrn.nicks +uugrn.nicks_alternate +uugrn.username +uugrn.realname +uugrn.local_hostname +uugrn.usermode +uugrn.command +uugrn.command_delay +uugrn.autojoin = "#uugrn" +uugrn.autorejoin +uugrn.autorejoin_delay +uugrn.connection_timeout +uugrn.anti_flood_prio_high +uugrn.anti_flood_prio_low +uugrn.away_check +uugrn.away_check_max_nicks +uugrn.msg_kick +uugrn.msg_part +uugrn.msg_quit +uugrn.notify +uugrn.split_msg_max_length +uugrn.charset_message +libera.addresses = "irc.libera.chat/6697" +libera.proxy +libera.ipv6 +libera.ssl = on +libera.ssl_cert +libera.ssl_password +libera.ssl_priorities +libera.ssl_dhkey_size +libera.ssl_fingerprint +libera.ssl_verify +libera.password +libera.capabilities +libera.sasl_mechanism +libera.sasl_username +libera.sasl_password +libera.sasl_key +libera.sasl_timeout +libera.sasl_fail +libera.autoconnect = on +libera.autoreconnect +libera.autoreconnect_delay +libera.nicks +libera.nicks_alternate +libera.username +libera.realname +libera.local_hostname +libera.usermode +libera.command +libera.command_delay +libera.autojoin = "#debian.de" +libera.autorejoin +libera.autorejoin_delay +libera.connection_timeout +libera.anti_flood_prio_high +libera.anti_flood_prio_low +libera.away_check +libera.away_check_max_nicks +libera.msg_kick +libera.msg_part +libera.msg_quit +libera.notify +libera.split_msg_max_length +libera.charset_message +oftc.addresses = "irc.oftc.net/6697" +oftc.proxy +oftc.ipv6 +oftc.ssl = on +oftc.ssl_cert +oftc.ssl_password +oftc.ssl_priorities +oftc.ssl_dhkey_size +oftc.ssl_fingerprint +oftc.ssl_verify +oftc.password +oftc.capabilities +oftc.sasl_mechanism +oftc.sasl_username +oftc.sasl_password +oftc.sasl_key +oftc.sasl_timeout +oftc.sasl_fail +oftc.autoconnect = on +oftc.autoreconnect +oftc.autoreconnect_delay +oftc.nicks +oftc.nicks_alternate +oftc.username +oftc.realname +oftc.local_hostname +oftc.usermode +oftc.command +oftc.command_delay +oftc.autojoin = "#debian.de" +oftc.autorejoin +oftc.autorejoin_delay +oftc.connection_timeout +oftc.anti_flood_prio_high +oftc.anti_flood_prio_low +oftc.away_check +oftc.away_check_max_nicks +oftc.msg_kick +oftc.msg_part +oftc.msg_quit +oftc.notify +oftc.split_msg_max_length +oftc.charset_message +rizon.addresses = "irc.rizon.net/6697" +rizon.proxy +rizon.ipv6 +rizon.ssl = on +rizon.ssl_cert +rizon.ssl_password +rizon.ssl_priorities +rizon.ssl_dhkey_size +rizon.ssl_fingerprint +rizon.ssl_verify +rizon.password +rizon.capabilities +rizon.sasl_mechanism +rizon.sasl_username +rizon.sasl_password +rizon.sasl_key +rizon.sasl_timeout +rizon.sasl_fail +rizon.autoconnect = on +rizon.autoreconnect +rizon.autoreconnect_delay +rizon.nicks +rizon.nicks_alternate +rizon.username +rizon.realname +rizon.local_hostname +rizon.usermode +rizon.command +rizon.command_delay +rizon.autojoin +rizon.autorejoin +rizon.autorejoin_delay +rizon.connection_timeout +rizon.anti_flood_prio_high +rizon.anti_flood_prio_low +rizon.away_check +rizon.away_check_max_nicks +rizon.msg_kick +rizon.msg_part +rizon.msg_quit +rizon.notify +rizon.split_msg_max_length +rizon.charset_message diff --git a/.weechat/weechat.conf b/.weechat/weechat.conf new file mode 100644 index 0000000..894fcde --- /dev/null +++ b/.weechat/weechat.conf @@ -0,0 +1,960 @@ +# +# weechat -- weechat.conf +# +# WARNING: It is NOT recommended to edit this file by hand, +# especially if WeeChat is running. +# +# Use commands like /set or /fset to change settings in WeeChat. +# +# For more info, see: https://weechat.org/doc/quickstart/ +# + +[debug] + +[startup] +command_after_plugins = "" +command_before_plugins = "" +display_logo = on +display_version = on +sys_rlimit = "" + +[look] +align_end_of_lines = message +align_multiline_words = on +bar_more_down = "?" +bar_more_left = "?" +bar_more_right = "?" +bar_more_up = "?" +bare_display_exit_on_input = on +bare_display_time_format = "%H:%M" +buffer_auto_renumber = on +buffer_notify_default = all +buffer_position = end +buffer_search_case_sensitive = off +buffer_search_force_default = off +buffer_search_regex = off +buffer_search_where = prefix_message +buffer_time_format = "%H:%M:%S" +buffer_time_same = "" +chat_space_right = off +color_basic_force_bold = off +color_inactive_buffer = off +color_inactive_message = off +color_inactive_prefix = on +color_inactive_prefix_buffer = on +color_inactive_time = off +color_inactive_window = off +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 = "@mitt" +highlight_disable_regex = "" +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 +hotlist_update_on_buffer_switch = on +input_cursor_scroll = 20 +input_share = none +input_share_overwrite = off +input_undo_max = 32 +item_away_message = on +item_buffer_filter = "?" +item_buffer_zoom = "!" +item_mouse_status = "M" +item_time_format = "%H:%M" +jump_current_to_previous_buffer = on +jump_previous_buffer_when_closing = on +jump_smart_back_to_buffer = on +key_bind_safe = on +key_grab_delay = 800 +mouse = off +mouse_timer_delay = 100 +nick_color_force = "" +nick_color_hash = djb2 +nick_color_hash_salt = "" +nick_color_stop_chars = "_|[" +nick_prefix = "" +nick_suffix = "" +paste_auto_add_newline = on +paste_bracketed = off +paste_bracketed_timer_delay = 10 +paste_max_lines = 1 +prefix_action = "?" +prefix_align = right +prefix_align_max = 11 +prefix_align_min = 10 +prefix_align_more = " " +prefix_align_more_after = on +prefix_buffer_align = right +prefix_buffer_align_max = 0 +prefix_buffer_align_more = "+" +prefix_buffer_align_more_after = on +prefix_error = "? " +prefix_join = "?" +prefix_network = "? " +prefix_quit = "?" +prefix_same_nick = "" +prefix_same_nick_middle = "" +prefix_suffix = "::" +quote_nick_prefix = "<" +quote_nick_suffix = ">" +quote_time_format = "%H:%M:%S" +read_marker = line +read_marker_always_show = off +read_marker_string = "" +read_marker_update_on_buffer_switch = on +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] +100 = "100" +101 = "101" +102 = "102" +103 = "103" +104 = "104" +105 = "105" +106 = "106" +107 = "107" +108 = "108" +109 = "109" +110 = "110" +111 = "111" +112 = "112" +113 = "113" +114 = "114" +115 = "115" +116 = "116" +117 = "117" +118 = "118" +119 = "119" +120 = "120" +121 = "121" +122 = "122" +123 = "123" +124 = "124" +125 = "125" +126 = "126" +127 = "127" +128 = "128" +129 = "129" +130 = "130" +131 = "131" +132 = "132" +133 = "133" +134 = "134" +135 = "135" +136 = "136" +137 = "137" +138 = "138" +139 = "139" +140 = "140" +141 = "141" +142 = "142" +143 = "143" +144 = "144" +145 = "145" +146 = "146" +147 = "147" +148 = "148" +149 = "149" +150 = "150" +151 = "151" +152 = "152" +153 = "153" +154 = "154" +155 = "155" +156 = "156" +157 = "157" +158 = "158" +159 = "159" +160 = "160" +161 = "161" +162 = "162" +163 = "163" +164 = "164" +165 = "165" +166 = "166" +167 = "167" +168 = "168" +169 = "169" +17 = "17" +170 = "170" +171 = "171" +172 = "172" +173 = "173" +174 = "174" +175 = "175" +176 = "176" +177 = "177" +178 = "178" +179 = "179" +18 = "18" +180 = "180" +181 = "181" +182 = "182" +183 = "183" +184 = "184" +185 = "185" +186 = "186" +187 = "187" +188 = "188" +189 = "189" +19 = "19" +190 = "190" +191 = "191" +192 = "192" +193 = "193" +194 = "194" +195 = "195" +196 = "196" +197 = "197" +198 = "198" +199 = "199" +20 = "20" +200 = "200" +201 = "201" +202 = "202" +203 = "203" +204 = "204" +205 = "205" +206 = "206" +207 = "207" +208 = "208" +209 = "209" +21 = "21" +210 = "210" +211 = "211" +212 = "212" +213 = "213" +214 = "214" +215 = "215" +216 = "216" +217 = "217" +218 = "218" +219 = "219" +22 = "22" +220 = "220" +221 = "221" +222 = "222" +223 = "223" +224 = "224" +225 = "225" +226 = "226" +227 = "227" +228 = "228" +229 = "229" +23 = "23" +230 = "230" +231 = "231" +232 = "232" +233 = "233" +234 = "234" +235 = "235" +236 = "236" +237 = "237" +238 = "238" +239 = "239" +24 = "24" +240 = "240" +241 = "241" +242 = "242" +243 = "243" +244 = "244" +245 = "245" +246 = "246" +247 = "247" +248 = "248" +249 = "249" +25 = "25" +250 = "250" +251 = "251" +252 = "252" +253 = "253" +254 = "254" +255 = "255" +256 = "256" +26 = "26" +27 = "27" +28 = "28" +29 = "29" +30 = "30" +31 = "31" +32 = "32" +33 = "33" +34 = "34" +35 = "35" +36 = "36" +37 = "37" +38 = "38" +39 = "39" +40 = "40" +41 = "41" +42 = "42" +43 = "43" +44 = "44" +45 = "45" +46 = "46" +47 = "47" +48 = "48" +49 = "49" +50 = "50" +51 = "51" +52 = "52" +53 = "53" +54 = "54" +55 = "55" +56 = "56" +57 = "57" +58 = "58" +59 = "59" +60 = "60" +61 = "61" +62 = "62" +63 = "63" +64 = "64" +65 = "65" +66 = "66" +67 = "67" +68 = "68" +69 = "69" +70 = "70" +71 = "71" +72 = "72" +73 = "73" +74 = "74" +75 = "75" +76 = "76" +77 = "77" +78 = "78" +79 = "79" +80 = "80" +81 = "81" +82 = "82" +83 = "83" +84 = "84" +85 = "85" +86 = "86" +87 = "87" +88 = "88" +89 = "89" +90 = "90" +91 = "91" +92 = "92" +93 = "93" +94 = "94" +95 = "95" +96 = "96" +97 = "97" +98 = "98" +99 = "99" + +[color] +bar_more = magenta +chat = default +chat_bg = default +chat_buffer = white +chat_channel = lightred +chat_day_change = cyan +chat_delimiters = default +chat_highlight = yellow +chat_highlight_bg = default +chat_host = cyan +chat_inactive_buffer = darkgray +chat_inactive_window = darkgray +chat_nick = lightcyan +chat_nick_colors = "darkgray,red,lightred,green,lightgreen,blue,lightblue,brown,cyan,lightcyan,magenta" +chat_nick_offline = darkgray +chat_nick_offline_highlight = default +chat_nick_offline_highlight_bg = blue +chat_nick_other = cyan +chat_nick_prefix = darkgray +chat_nick_self = red +chat_nick_suffix = green +chat_prefix_action = white +chat_prefix_buffer = red +chat_prefix_buffer_inactive_buffer = default +chat_prefix_error = yellow +chat_prefix_join = darkgray +chat_prefix_more = lightmagenta +chat_prefix_network = magenta +chat_prefix_quit = lightred +chat_prefix_suffix = lightmagenta +chat_read_marker = magenta +chat_read_marker_bg = default +chat_server = brown +chat_tags = red +chat_text_found = yellow +chat_text_found_bg = lightmagenta +chat_time = default +chat_time_delimiters = brown +chat_value = cyan +chat_value_null = blue +emphasized = yellow +emphasized_bg = magenta +input_actions = lightgreen +input_text_not_found = red +item_away = yellow +nicklist_away = cyan +nicklist_group = green +separator = brown +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_system = on +gnutls_ca_user = "" +gnutls_handshake_timeout = 30 +proxy_curl = "" + +[plugin] +autoload = "*" +extension = ".so,.dll" +path = "%h/plugins" +save_config_on_unload = on + +[signal] +sighup = "${if:${info:weechat_headless}?/reload:/quit -yes}" +sigquit = "/quit -yes" +sigterm = "/quit -yes" +sigusr1 = "" +sigusr2 = "" + +[bar] +buffers.color_bg = default +buffers.color_bg_inactive = default +buffers.color_delim = default +buffers.color_fg = default +buffers.conditions = "" +buffers.filling_left_right = vertical +buffers.filling_top_bottom = horizontal +buffers.hidden = off +buffers.items = "buffers" +buffers.position = top +buffers.priority = 0 +buffers.separator = on +buffers.size = 1 +buffers.size_max = 0 +buffers.type = root +buflist.color_bg = default +buflist.color_bg_inactive = default +buflist.color_delim = default +buflist.color_fg = default +buflist.conditions = "" +buflist.filling_left_right = vertical +buflist.filling_top_bottom = columns_vertical +buflist.hidden = off +buflist.items = "buflist" +buflist.position = left +buflist.priority = 0 +buflist.separator = on +buflist.size = 0 +buflist.size_max = 0 +buflist.type = root +fset.color_bg = default +fset.color_bg_inactive = 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_bg_inactive = default +input.color_delim = *yellow +input.color_fg = default +input.conditions = "active" +input.filling_left_right = vertical +input.filling_top_bottom = horizontal +input.hidden = off +input.items = " input_prompt,>>,input_text" +input.position = bottom +input.priority = 1000 +input.separator = on +input.size = 1 +input.size_max = 0 +input.type = window +isetbar.color_bg = default +isetbar.color_bg_inactive = 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_bg_inactive = default +nicklist.color_delim = cyan +nicklist.color_fg = cyan +nicklist.conditions = "nicklist" +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 = off +nicklist.size = 0 +nicklist.size_max = 0 +nicklist.type = window +status.color_bg = default +status.color_bg_inactive = default +status.color_delim = blue +status.color_fg = magenta +status.conditions = "" +status.filling_left_right = vertical +status.filling_top_bottom = horizontal +status.hidden = off +status.items = "[buffer_plugin],buffer_number+:+buffer_name,[lag],[hotlist],completion,scroll" +status.position = bottom +status.priority = 500 +status.separator = on +status.size = 1 +status.size_max = 0 +status.type = root +title.color_bg = default +title.color_bg_inactive = default +title.color_delim = white +title.color_fg = yellow +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 = on +title.size = 1 +title.size_max = 0 +title.type = window + +[custom_bar_item] + +[layout] + +[notify] + +[filter] + +[key] +ctrl-? = "/input delete_previous_char" +ctrl-A = "/input move_beginning_of_line" +ctrl-B = "/input move_previous_char" +ctrl-C_ = "/input insert \x1F" +ctrl-Cb = "/input insert \x02" +ctrl-Cc = "/input insert \x03" +ctrl-Ci = "/input insert \x1D" +ctrl-Co = "/input insert \x0F" +ctrl-Cv = "/input insert \x16" +ctrl-D = "/input delete_next_char" +ctrl-E = "/input move_end_of_line" +ctrl-F = "/input move_next_char" +ctrl-H = "/input delete_previous_char" +ctrl-I = "/input complete_next" +ctrl-J = "/input return" +ctrl-K = "/input delete_end_of_line" +ctrl-L = "/window refresh" +ctrl-M = "/input return" +ctrl-N = "/buffer +1" +ctrl-P = "/buffer -1" +ctrl-R = "/input search_text_here" +ctrl-Sctrl-U = "/input set_unread" +ctrl-T = "/input transpose_chars" +ctrl-U = "/input delete_beginning_of_line" +ctrl-W = "/input delete_previous_word" +ctrl-X = "/input switch_active_buffer" +ctrl-Y = "/input clipboard_paste" +meta-ctrl-M = "/input insert \n" +meta-meta-OP = "/bar scroll buflist * b" +meta-meta-OQ = "/bar scroll buflist * e" +meta-meta2-11~ = "/bar scroll buflist * b" +meta-meta2-12~ = "/bar scroll buflist * e" +meta-meta2-1~ = "/window scroll_top" +meta-meta2-23~ = "/bar scroll nicklist * b" +meta-meta2-24~ = "/bar scroll nicklist * e" +meta-meta2-4~ = "/window scroll_bottom" +meta-meta2-5~ = "/window scroll_up" +meta-meta2-6~ = "/window scroll_down" +meta-meta2-7~ = "/window scroll_top" +meta-meta2-8~ = "/window scroll_bottom" +meta-meta2-A = "/buffer -1" +meta-meta2-B = "/buffer +1" +meta-meta2-C = "/buffer +1" +meta-meta2-D = "/buffer -1" +meta-- = "/filter toggle @" +meta-/ = "/input jump_last_buffer_displayed" +meta-0 = "/buffer *10" +meta-1 = "/buffer *1" +meta-2 = "/buffer *2" +meta-3 = "/buffer *3" +meta-4 = "/buffer *4" +meta-5 = "/buffer *5" +meta-6 = "/buffer *6" +meta-7 = "/buffer *7" +meta-8 = "/buffer *8" +meta-9 = "/buffer *9" +meta-< = "/input jump_previously_visited_buffer" +meta-= = "/filter toggle" +meta-> = "/input jump_next_visited_buffer" +meta-B = "/buflist toggle" +meta-N = "/bar toggle nicklist" +meta-OA = "/input history_global_previous" +meta-OB = "/input history_global_next" +meta-OC = "/input move_next_word" +meta-OD = "/input move_previous_word" +meta-OF = "/input move_end_of_line" +meta-OH = "/input move_beginning_of_line" +meta-OP = "/bar scroll buflist * -100%" +meta-OQ = "/bar scroll buflist * +100%" +meta-Oa = "/input history_global_previous" +meta-Ob = "/input history_global_next" +meta-Oc = "/input move_next_word" +meta-Od = "/input move_previous_word" +meta2-11^ = "/bar scroll buflist * -100%" +meta2-11~ = "/bar scroll buflist * -100%" +meta2-12^ = "/bar scroll buflist * +100%" +meta2-12~ = "/bar scroll buflist * +100%" +meta2-15~ = "/buffer -1" +meta2-17~ = "/buffer +1" +meta2-18~ = "/window -1" +meta2-19~ = "/window +1" +meta2-1;3A = "/buffer -1" +meta2-1;3B = "/buffer +1" +meta2-1;3C = "/buffer +1" +meta2-1;3D = "/buffer -1" +meta2-1;3F = "/window scroll_bottom" +meta2-1;3H = "/window scroll_top" +meta2-1;3P = "/bar scroll buflist * b" +meta2-1;3Q = "/bar scroll buflist * e" +meta2-1;5A = "/input history_global_previous" +meta2-1;5B = "/input history_global_next" +meta2-1;5C = "/input move_next_word" +meta2-1;5D = "/input move_previous_word" +meta2-1;5P = "/bar scroll buflist * -100%" +meta2-1;5Q = "/bar scroll buflist * +100%" +meta2-1~ = "/input move_beginning_of_line" +meta2-200~ = "/input paste_start" +meta2-201~ = "/input paste_stop" +meta2-20~ = "/bar scroll title * -30%" +meta2-21~ = "/bar scroll title * +30%" +meta2-23;3~ = "/bar scroll nicklist * b" +meta2-23;5~ = "/bar scroll nicklist * -100%" +meta2-23^ = "/bar scroll nicklist * -100%" +meta2-23~ = "/bar scroll nicklist * -100%" +meta2-24;3~ = "/bar scroll nicklist * e" +meta2-24;5~ = "/bar scroll nicklist * +100%" +meta2-24^ = "/bar scroll nicklist * +100%" +meta2-24~ = "/bar scroll nicklist * +100%" +meta2-3~ = "/input delete_next_char" +meta2-4~ = "/input move_end_of_line" +meta2-5;3~ = "/window scroll_up" +meta2-5~ = "/window page_up" +meta2-6;3~ = "/window scroll_down" +meta2-6~ = "/window page_down" +meta2-7~ = "/input move_beginning_of_line" +meta2-8~ = "/input move_end_of_line" +meta2-A = "/input history_previous" +meta2-B = "/input history_next" +meta2-C = "/input move_next_char" +meta2-D = "/input move_previous_char" +meta2-F = "/input move_end_of_line" +meta2-G = "/window page_down" +meta2-H = "/input move_beginning_of_line" +meta2-I = "/window page_up" +meta2-Z = "/input complete_previous" +meta2-[E = "/buffer -1" +meta-_ = "/input redo" +meta-a = "/input jump_smart" +meta-b = "/input move_previous_word" +meta-d = "/input delete_next_word" +meta-f = "/input move_next_word" +meta-h = "/input hotlist_clear" +meta-jmeta-f = "/buffer -" +meta-jmeta-l = "/buffer +" +meta-jmeta-r = "/server raw" +meta-jmeta-s = "/server jump" +meta-j01 = "/buffer *1" +meta-j02 = "/buffer *2" +meta-j03 = "/buffer *3" +meta-j04 = "/buffer *4" +meta-j05 = "/buffer *5" +meta-j06 = "/buffer *6" +meta-j07 = "/buffer *7" +meta-j08 = "/buffer *8" +meta-j09 = "/buffer *9" +meta-j10 = "/buffer *10" +meta-j11 = "/buffer *11" +meta-j12 = "/buffer *12" +meta-j13 = "/buffer *13" +meta-j14 = "/buffer *14" +meta-j15 = "/buffer *15" +meta-j16 = "/buffer *16" +meta-j17 = "/buffer *17" +meta-j18 = "/buffer *18" +meta-j19 = "/buffer *19" +meta-j20 = "/buffer *20" +meta-j21 = "/buffer *21" +meta-j22 = "/buffer *22" +meta-j23 = "/buffer *23" +meta-j24 = "/buffer *24" +meta-j25 = "/buffer *25" +meta-j26 = "/buffer *26" +meta-j27 = "/buffer *27" +meta-j28 = "/buffer *28" +meta-j29 = "/buffer *29" +meta-j30 = "/buffer *30" +meta-j31 = "/buffer *31" +meta-j32 = "/buffer *32" +meta-j33 = "/buffer *33" +meta-j34 = "/buffer *34" +meta-j35 = "/buffer *35" +meta-j36 = "/buffer *36" +meta-j37 = "/buffer *37" +meta-j38 = "/buffer *38" +meta-j39 = "/buffer *39" +meta-j40 = "/buffer *40" +meta-j41 = "/buffer *41" +meta-j42 = "/buffer *42" +meta-j43 = "/buffer *43" +meta-j44 = "/buffer *44" +meta-j45 = "/buffer *45" +meta-j46 = "/buffer *46" +meta-j47 = "/buffer *47" +meta-j48 = "/buffer *48" +meta-j49 = "/buffer *49" +meta-j50 = "/buffer *50" +meta-j51 = "/buffer *51" +meta-j52 = "/buffer *52" +meta-j53 = "/buffer *53" +meta-j54 = "/buffer *54" +meta-j55 = "/buffer *55" +meta-j56 = "/buffer *56" +meta-j57 = "/buffer *57" +meta-j58 = "/buffer *58" +meta-j59 = "/buffer *59" +meta-j60 = "/buffer *60" +meta-j61 = "/buffer *61" +meta-j62 = "/buffer *62" +meta-j63 = "/buffer *63" +meta-j64 = "/buffer *64" +meta-j65 = "/buffer *65" +meta-j66 = "/buffer *66" +meta-j67 = "/buffer *67" +meta-j68 = "/buffer *68" +meta-j69 = "/buffer *69" +meta-j70 = "/buffer *70" +meta-j71 = "/buffer *71" +meta-j72 = "/buffer *72" +meta-j73 = "/buffer *73" +meta-j74 = "/buffer *74" +meta-j75 = "/buffer *75" +meta-j76 = "/buffer *76" +meta-j77 = "/buffer *77" +meta-j78 = "/buffer *78" +meta-j79 = "/buffer *79" +meta-j80 = "/buffer *80" +meta-j81 = "/buffer *81" +meta-j82 = "/buffer *82" +meta-j83 = "/buffer *83" +meta-j84 = "/buffer *84" +meta-j85 = "/buffer *85" +meta-j86 = "/buffer *86" +meta-j87 = "/buffer *87" +meta-j88 = "/buffer *88" +meta-j89 = "/buffer *89" +meta-j90 = "/buffer *90" +meta-j91 = "/buffer *91" +meta-j92 = "/buffer *92" +meta-j93 = "/buffer *93" +meta-j94 = "/buffer *94" +meta-j95 = "/buffer *95" +meta-j96 = "/buffer *96" +meta-j97 = "/buffer *97" +meta-j98 = "/buffer *98" +meta-j99 = "/buffer *99" +meta-k = "/input grab_key_command" +meta-l = "/window bare" +meta-m = "/mute mouse toggle" +meta-n = "/window scroll_next_highlight" +meta-p = "/window scroll_previous_highlight" +meta-r = "/input delete_line" +meta-s = "/mute spell toggle" +meta-u = "/window scroll_unread" +meta-wmeta-meta2-A = "/window up" +meta-wmeta-meta2-B = "/window down" +meta-wmeta-meta2-C = "/window right" +meta-wmeta-meta2-D = "/window left" +meta-wmeta2-1;3A = "/window up" +meta-wmeta2-1;3B = "/window down" +meta-wmeta2-1;3C = "/window right" +meta-wmeta2-1;3D = "/window left" +meta-wmeta-b = "/window balance" +meta-wmeta-s = "/window swap" +meta-x = "/input zoom_merged_buffer" +meta-z = "/window zoom" +ctrl-_ = "/input undo" + +[key_search] +ctrl-I = "/input search_switch_where" +ctrl-J = "/input search_stop_here" +ctrl-M = "/input search_stop_here" +ctrl-Q = "/input search_stop" +ctrl-R = "/input search_switch_regex" +meta2-A = "/input search_previous" +meta2-B = "/input search_next" +meta-c = "/input search_switch_case" + +[key_cursor] +ctrl-J = "/cursor stop" +ctrl-M = "/cursor stop" +meta-meta2-A = "/cursor move area_up" +meta-meta2-B = "/cursor move area_down" +meta-meta2-C = "/cursor move area_right" +meta-meta2-D = "/cursor move area_left" +meta2-1;3A = "/cursor move area_up" +meta2-1;3B = "/cursor move area_down" +meta2-1;3C = "/cursor move area_right" +meta2-1;3D = "/cursor move area_left" +meta2-A = "/cursor move up" +meta2-B = "/cursor move down" +meta2-C = "/cursor move right" +meta2-D = "/cursor move left" +@chat(python.matrix.*):r = "hsignal:matrix_cursor_reply" +@item(buffer_nicklist):K = "/window ${_window_number};/kickban ${nick}" +@item(buffer_nicklist):b = "/window ${_window_number};/ban ${nick}" +@item(buffer_nicklist):k = "/window ${_window_number};/kick ${nick}" +@item(buffer_nicklist):q = "/window ${_window_number};/query ${nick};/cursor stop" +@item(buffer_nicklist):w = "/window ${_window_number};/whois ${nick}" +@chat:Q = "hsignal:chat_quote_time_prefix_message;/cursor stop" +@chat:m = "hsignal:chat_quote_message;/cursor stop" +@chat:q = "hsignal:chat_quote_prefix_message;/cursor stop" + +[key_mouse] +@bar(buflist):ctrl-wheeldown = "hsignal:buflist_mouse" +@bar(buflist):ctrl-wheelup = "hsignal:buflist_mouse" +@bar(input):button2 = "/input grab_mouse_area" +@bar(nicklist):button1-gesture-down = "/bar scroll nicklist ${_window_number} +100%" +@bar(nicklist):button1-gesture-down-long = "/bar scroll nicklist ${_window_number} e" +@bar(nicklist):button1-gesture-up = "/bar scroll nicklist ${_window_number} -100%" +@bar(nicklist):button1-gesture-up-long = "/bar scroll nicklist ${_window_number} b" +@chat(fset.fset):button1 = "/window ${_window_number};/fset -go ${_chat_line_y}" +@chat(fset.fset):button2* = "hsignal:fset_mouse" +@chat(fset.fset):wheeldown = "/fset -down 5" +@chat(fset.fset):wheelup = "/fset -up 5" +@chat(script.scripts):button1 = "/window ${_window_number};/script go ${_chat_line_y}" +@chat(script.scripts):button2 = "/window ${_window_number};/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}" +@chat(script.scripts):wheeldown = "/script down 5" +@chat(script.scripts):wheelup = "/script up 5" +@item(buffer_nicklist):button1 = "/window ${_window_number};/query ${nick}" +@item(buffer_nicklist):button1-gesture-left = "/window ${_window_number};/kick ${nick}" +@item(buffer_nicklist):button1-gesture-left-long = "/window ${_window_number};/kickban ${nick}" +@item(buffer_nicklist):button2 = "/window ${_window_number};/whois ${nick}" +@item(buffer_nicklist):button2-gesture-left = "/window ${_window_number};/ban ${nick}" +@item(buflist):button1* = "hsignal:buflist_mouse" +@item(buflist):button2* = "hsignal:buflist_mouse" +@item(buflist2):button1* = "hsignal:buflist_mouse" +@item(buflist2):button2* = "hsignal:buflist_mouse" +@item(buflist3):button1* = "hsignal:buflist_mouse" +@item(buflist3):button2* = "hsignal:buflist_mouse" +@bar:wheeldown = "/bar scroll ${_bar_name} ${_window_number} +20%" +@bar:wheelup = "/bar scroll ${_bar_name} ${_window_number} -20%" +@chat:button1 = "/window ${_window_number}" +@chat:button1-gesture-left = "/window ${_window_number};/buffer -1" +@chat:button1-gesture-left-long = "/window ${_window_number};/buffer 1" +@chat:button1-gesture-right = "/window ${_window_number};/buffer +1" +@chat:button1-gesture-right-long = "/window ${_window_number};/input jump_last_buffer" +@chat:ctrl-wheeldown = "/window scroll_horiz -window ${_window_number} +10%" +@chat:ctrl-wheelup = "/window scroll_horiz -window ${_window_number} -10%" +@chat:wheeldown = "/window scroll_down -window ${_window_number}" +@chat:wheelup = "/window scroll_up -window ${_window_number}" +@*:button3 = "/cursor go ${_x},${_y}" diff --git a/.xsession b/.xsession new file mode 100644 index 0000000..40b3c3b --- /dev/null +++ b/.xsession @@ -0,0 +1,12 @@ +setxkbmap de +setx b off +feh --bg-scale ~/Bilder/wall.jpg +nm-applet & +picom & +xrdb -load ~/.Xresources & +pnmixer & +feh --bg-scale Bilder/wall.jpg & +seafile-applet & + +exec /usr/bin/awesome + |