Compare commits
	
		
			1 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 62bd4ddbce | 
							
								
								
									
										48
									
								
								.Xresources
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								.Xresources
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,48 @@ | ||||
| ! | ||||
| !   ██████  ██████  ██   ██ ██████  █████   █████  ██████  █████  ██████ | ||||
| !  ██░░░░  ██░░░░██░██  ░██░░██░░████░░░██ ██░░░██░░██░░████░░░██░░██░░██ | ||||
| ! ░░█████ ░██   ░██░██  ░██ ░██ ░░░██  ░░ ░███████ ░██ ░░░███████ ░██ ░░ | ||||
| !  ░░░░░██░██   ░██░██  ░██ ░██   ░██   ██░██░░░░  ░██   ░██░░░░  ░██    | ||||
| !  ██████ ░░██████ ░░██████░███   ░░█████ ░░██████░███   ░░██████░███    | ||||
| ! ░░░░░░   ░░░░░░   ░░░░░░ ░░░     ░░░░░   ░░░░░░ ░░░     ░░░░░░ ░░░    | ||||
| !  r  e  a  d     c  o  d  e     l  i  k  e     a     w  i  z  a  r  d  | ||||
| ! | ||||
| ! sourcerer by xero harrison (http://sourcerer.xero.nu) | ||||
| !  ├─ based on sorcerer by Jeet Sukumaran (http://jeetworks.org) | ||||
| !  └─ based on mustang by Henrique C. Alves (hcarvalhoalves@gmail.com) | ||||
| 
 | ||||
| ! █▓▒░ scorcerer colors | ||||
| *.foreground:   #c2c2b0 | ||||
| *.background:   #222222 | ||||
| *.cursorColor:  #c2c2b0 | ||||
| ! black | ||||
| *.color0:       #111111 | ||||
| *.color8:       #181818 | ||||
| ! red | ||||
| *.color1:       #aa4450 | ||||
| *.color9:       #ff6a6a | ||||
| ! green | ||||
| *.color2:       #719611 | ||||
| *.color10:      #b1d631 | ||||
| ! yellow | ||||
| *.color3:       #ff9800 | ||||
| *.color11:      #87875f | ||||
| ! blue | ||||
| *.color4:       #6688aa | ||||
| *.color12:      #90b0d1 | ||||
| ! magenta | ||||
| *.color5:       #8f6f8f | ||||
| *.color13:      #8181a6 | ||||
| ! cyan | ||||
| *.color6:       #528b8b | ||||
| *.color14:      #87ceeb | ||||
| ! white | ||||
| *.color7:       #d3d3d3 | ||||
| *.color15:      #c1cdc1 | ||||
| ! stylized | ||||
| *.colorIT:      #719611 | ||||
| *.colorBD:      #d3d3d3 | ||||
| *.colorUL:      #528b8b | ||||
| 
 | ||||
| URxvt.font: xft:Inconsolata Nerd Font:size=30 | ||||
| 
 | ||||
							
								
								
									
										104
									
								
								.bash_aliases
									
									
									
									
									
								
							
							
						
						
									
										104
									
								
								.bash_aliases
									
									
									
									
									
								
							| @ -1,26 +1,5 @@ | ||||
| # For Rust stuff, uncomment this line | ||||
| #. "$HOME/.cargo/env" | ||||
| 
 | ||||
| alias ,git='git config --global user.name "Shaun Reed" && git config --global user.email "shaunrd0@gmail.com"' | ||||
| if [ -f /.dockerenv ]; then | ||||
|   export DOT_PACKAGES='git stow vim tmux ranger clang wget curl' | ||||
|   alias ,update='apt update -y && apt upgrade -y && apt upgrade --fix-broken --fix-missing --auto-remove' | ||||
|   alias ,init='apt update -y && apt install $DOT_PACKAGES -y' | ||||
|   alias ,swap='swapoff -a && swapon -a' | ||||
| else | ||||
|   export DOT_PACKAGES='git stow vim xsel xclip tmux ranger clang yakuake wget curl' | ||||
|   alias ,update='sudo apt update -y && sudo apt upgrade -y && sudo apt upgrade --fix-broken --fix-missing --auto-remove' | ||||
|   alias ,init='sudo apt update -y && sudo apt install $DOT_PACKAGES' | ||||
|   # Clear kscreen cached settings | ||||
|   alias ,kscreen='rm -rf ~/.local/share/kscreen/*' | ||||
|   # Restart plasmashell | ||||
|   alias ,plasmashell='sudo pkill plasmashell && plasmashell --replace &> /dev/null &' | ||||
|   alias ,swap='sudo swapoff -a && sudo swapon -a' | ||||
|   alias ,vbox="ps aux www |grep 'VBoxClient --draganddrop' | awk '{print $2}' | xargs kill" | ||||
| fi | ||||
| 
 | ||||
| # Overrides for default .bashrc aliases and exports | ||||
| # Alias / export customizations | ||||
| 
 | ||||
| # colored GCC warnings and errors | ||||
| #export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' | ||||
| 
 | ||||
| @ -32,74 +11,31 @@ 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$//'\'')"' | ||||
| export EDITOR="vim" | ||||
| export VISUAL="vim" | ||||
| export LS_COLORS="di=1;34:ln=31;47:so=32:pi=33:ex=1;32:bd=34;46:cd=34;43:su=30;41:sg=30;46:tw=30;42:ow=30;43" | ||||
| export PATH=$PATH:/opt/:$HOME/.local/bin/:$HOME/.dotnet:$HOME/go/bin/ | ||||
| export DOTNET_ROOT=$HOME/.dotnet | ||||
| 
 | ||||
| # Example path for autocompletion using libclang-9-dev package, obtained by the following command | ||||
| export LIBCLANG="$(command -v clang &>/dev/null && ldconfig -p | sort | grep libclang-[0-9]. | awk -F "> " '{print$2}' | tail -n 1)" | ||||
| # Custom aliases / exports | ||||
| alias python3='python3.9' | ||||
| alias pip3='python3.9 -m pip' | ||||
| 
 | ||||
| # Source a top-secret alias file | ||||
| if [ -e ~/.bash_secrets ]; then | ||||
|   . ~/.bash_secrets | ||||
| fi | ||||
| alias kapp-git='git config --global user.name "Shaun Reed" && git config --global user.email "shaunrd0@gmail.com"' | ||||
| alias kapp-update='sudo apt update -y && sudo apt upgrade -y && sudo apt upgrade --fix-broken --fix-missing --auto-remove' | ||||
| 
 | ||||
| #export FONT='xft:InconsolataNerdFont' | ||||
| #export TERMINAL='urxvt -fn '$FONT' -e tmux -u' | ||||
| export TERMINAL='urxvt -e tmux -u' | ||||
| 
 | ||||
| export EDITOR='/usr/bin/vim' | ||||
| export VISUAL='/usr/bin/vim' | ||||
| export PATH=$PATH":$HOME/.local/bin/i3scripts:/opt/" | ||||
| export PATH=$PATH:/opt/:/home/kapper/.local/bin/ | ||||
| 
 | ||||
| if command -v tmux &> /dev/null && [ -n "$PS1" ] && [[ ! "$TERM" =~ screen ]] && [[ ! "$TERM" =~ tmux ]] && [ -z "$TMUX" ]; then | ||||
|   exec tmux | ||||
| fi | ||||
| eval "$(dircolors ~/.dir_colors)" | ||||
| export LS_COLORS="di=1;34:ln=31;47:so=32:pi=33:ex=1;32:bd=34;46:cd=34;43:su=30;41:sg=30;46:tw=30;42:ow=30;43" | ||||
| 
 | ||||
| # Set the default terminal to use konsole, with kapper profile | ||||
| # + Execute tmux on start | ||||
| if [ -e ~/.local/share/konsole/kapper.profile ]; then | ||||
|   if command -v tmux &>/dev/null; then | ||||
|     export TERMINAL='konsole --profile kapper -e tmux' | ||||
|   else | ||||
|     export TERMINAL='konsole --profile kapper' | ||||
|   fi | ||||
| fi | ||||
| 
 | ||||
| # Conditionally enables font glyphs in .vimrc if available | ||||
| if [ -e ~/.local/share/fonts/sauce-code-pro.otf ]; then | ||||
|   export SAUCE=1 | ||||
| fi | ||||
| 
 | ||||
| # Less colors for man pages | ||||
| export PAGER=less | ||||
| default=$(tput sgr0) | ||||
| red=$(tput setaf 1) | ||||
| green=$(tput setaf 2) | ||||
| purple=$(tput setaf 5) | ||||
| orange=$(tput setaf 9) | ||||
| # Begin blinking | ||||
| export LESS_TERMCAP_mb=$red | ||||
| # Begin bold | ||||
| export LESS_TERMCAP_md=$orange | ||||
| # End mode | ||||
| export LESS_TERMCAP_me=$default | ||||
| # End standout-mode | ||||
| export LESS_TERMCAP_se=$default | ||||
| # Begin standout-mode - info box | ||||
| export LESS_TERMCAP_so=$purple | ||||
| # End underline | ||||
| export LESS_TERMCAP_ue=$default | ||||
| # Begin underline | ||||
| export LESS_TERMCAP_us=$green | ||||
| # Allow mouse wheel movement for less output (manpages, diffs) | ||||
| export LESS='--mouse --wheel-lines 2' | ||||
| # Set additional flags for less | ||||
| # + -R for raw control characters | ||||
| # + -w to highlight first unread line when jumping N>1 lines down | ||||
| # + -#2 to shift 2 columns horizontally when right / left arrow is pressed | ||||
| export LESS="$LESS -R -w -#2" | ||||
| 
 | ||||
| 
 | ||||
| if ! [ command -v conda &>/dev/null ] && [ -e ~/Code/Clones/mambaforge/bin/conda ] && ! grep -e conda ~/.bashrc &>/dev/null; then | ||||
|   if ! (~/Code/Clones/mambaforge/bin/conda init | awk -F "==>" '{print $1}'); then | ||||
|     echo "[dot] ERROR: Failed to initialize Conda." | ||||
|   fi | ||||
|   echo "[dot] WARN: Ran \`conda init\`; Conda was installed but not initialized" | ||||
|   source ~/.bashrc | ||||
| # Source a top-secret alias file | ||||
| if [ -f ~/.bash_secrets ]; then | ||||
|   . ~/.bash_secrets | ||||
| fi | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										23
									
								
								.bashrc
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								.bashrc
									
									
									
									
									
								
							| @ -1,13 +1,14 @@ | ||||
| # ~/.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 | ||||
| 
 | ||||
| unset PROMPT_COMMAND | ||||
| 
 | ||||
| # don't put duplicate lines or lines starting with space in the history. | ||||
| # See bash(1) for more options | ||||
| HISTCONTROL=ignoreboth | ||||
| @ -56,10 +57,18 @@ if [ -n "$force_color_prompt" ]; then | ||||
|     fi | ||||
| fi | ||||
| 
 | ||||
| function _update_ps1() { | ||||
|     PS1=$(powerline-shell $?) | ||||
| } | ||||
| 
 | ||||
| if [[ $TERM != linux && ! $PROMPT_COMMAND =~ _update_ps1 ]]; then | ||||
|       PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND" | ||||
| fi | ||||
| 
 | ||||
| if [ "$color_prompt" = yes ]; then | ||||
|     PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' | ||||
|   PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\][\u@\h\[\033[00m\] \W\[\033[01;32m\]]\$\[\033[00m\]' | ||||
| else | ||||
|     PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' | ||||
|   PS1='${debian_chroot:+($debian_chroot)}[\u@\h \W]\$ ' | ||||
| fi | ||||
| unset color_prompt force_color_prompt | ||||
| 
 | ||||
| @ -84,6 +93,8 @@ if [ -x /usr/bin/dircolors ]; then | ||||
|     alias egrep='egrep --color=auto' | ||||
| fi | ||||
| 
 | ||||
| # Alias / export customizations | ||||
| 
 | ||||
| # colored GCC warnings and errors | ||||
| #export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' | ||||
| 
 | ||||
| @ -94,11 +105,9 @@ 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 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. | ||||
| # Edit ~/.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 | ||||
|  | ||||
							
								
								
									
										6
									
								
								.config/Code/User/settings.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.config/Code/User/settings.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | ||||
| { | ||||
|     "terminal.integrated.fontFamily": "Inconsolata Nerd Font Mono", | ||||
|     "editor.tabCompletion": "on", | ||||
|     "editor.tabSize": 2, | ||||
|     "window.zoomLevel": -1 | ||||
| } | ||||
							
								
								
									
										1
									
								
								.config/Code/languagepacks.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.config/Code/languagepacks.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| {} | ||||
							
								
								
									
										15
									
								
								.config/autostart/jetbrains-toolbox.desktop
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										15
									
								
								.config/autostart/jetbrains-toolbox.desktop
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,15 @@ | ||||
| [Desktop Entry] | ||||
| Icon=/home/kapper/.local/share/JetBrains/Toolbox/toolbox.svg | ||||
| Exec=/home/kapper/.local/share/JetBrains/Toolbox/bin/jetbrains-toolbox --minimize | ||||
| Version=1.0 | ||||
| Type=Application | ||||
| Categories=Development | ||||
| Name=JetBrains Toolbox | ||||
| StartupWMClass=jetbrains-toolbox | ||||
| Terminal=false | ||||
| MimeType=x-scheme-handler/jetbrains; | ||||
| X-GNOME-Autostart-enabled=true | ||||
| StartupNotify=false | ||||
| X-GNOME-Autostart-Delay=10 | ||||
| X-MATE-Autostart-Delay=10 | ||||
| X-KDE-autostart-after=panel | ||||
							
								
								
									
										109
									
								
								.config/compton.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								.config/compton.conf
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,109 @@ | ||||
| # Shadow | ||||
| shadow = true; | ||||
| # no-dnd-shadow = true; | ||||
| no-dock-shadow = true; | ||||
| clear-shadow = true; | ||||
| detect-rounded-corners = true; | ||||
| shadow-radius = 5; | ||||
| shadow-offset-x = 1; | ||||
| shadow-offset-y = 1; | ||||
| shadow-opacity = .3; | ||||
| shadow-ignore-shaped = false; | ||||
| shadow-exclude = [ | ||||
| 	"name = 'Notification'",  | ||||
| # workaround for conky until it provides window properties: | ||||
| 	"override_redirect = 1 && !WM_CLASS@:s", | ||||
|     "class_g ?= 'Dmenu'", | ||||
| #	"class_g ?= 'Dunst'", | ||||
| # disable shadows for hidden windows: | ||||
| 	"_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'", | ||||
| 	"_GTK_FRAME_EXTENTS@:c", | ||||
| # disables shadows on sticky windows: | ||||
| #	"_NET_WM_STATE@:32a *= '_NET_WM_STATE_STICKY'", | ||||
| # disables shadows on i3 frames | ||||
| 	"class_g ?= 'i3-frame'" | ||||
| ]; | ||||
| 
 | ||||
| # shadow-exclude-reg = "x10+0+0"; | ||||
| # xinerama-shadow-crop = true; | ||||
| 
 | ||||
| #menu-opacity = 0.95; | ||||
| #inactive-opacity = 0.93; | ||||
| #active-opacity = 1; | ||||
| #alpha-step = 0.01; | ||||
| #inactive-dim = 0.0; | ||||
| #blur-background = false; | ||||
| #blur-kern = "3x3box"; | ||||
| 
 | ||||
| fading = false; | ||||
| fade-delta = 1; | ||||
| fade-in-step = 0.03; | ||||
| fade-out-step = 0.03; | ||||
| fade-exclude = [ ]; | ||||
| 
 | ||||
| backend = "xrender"; | ||||
| mark-wmwin-focused = true; | ||||
| mark-ovredir-focused = true; | ||||
| detect-client-opacity = true; | ||||
| unredir-if-possible = true; | ||||
| refresh-rate = 0; | ||||
| vsync = "none"; | ||||
| dbe = false; | ||||
| paint-on-overlay = true; | ||||
| focus-exclude = [ "class_g = 'Cairo-clock'" ]; | ||||
| detect-transient = true; | ||||
| detect-client-leader = true; | ||||
| invert-color-include = [ ]; | ||||
| glx-copy-from-front = false; | ||||
| glx-swap-method = "undefined"; | ||||
| 
 | ||||
| opacity-rule = [  | ||||
| #"99:name *?= 'Call'",  | ||||
| #"99:class_g = 'Chromium'",  | ||||
| #"50:class_g *= 'shortcuts_green'", | ||||
| #"50:class_g *= 'sysinfo_green'", | ||||
| #"50:class_g *= 'conky'",  | ||||
| #"99:class_g = 'Darktable'",  | ||||
| #"50:class_g = 'Dmenu'",  | ||||
| #"99:name *?= 'Event'",  | ||||
| #"99:class_g = 'Firefox'",  | ||||
| #"99:class_g = 'GIMP'",  | ||||
| #"99:name *?= 'Image'", | ||||
| #"99:class_g = 'Lazpaint'",  | ||||
| #"99:class_g = 'Midori'",  | ||||
| #"99:name *?= 'Minitube'",  | ||||
| #"99:class_g = 'Mousepad'", | ||||
| #"99:name *?= 'MuseScore'",  | ||||
| #"90:name *?= 'Page Info'",  | ||||
| #"99:name *?= 'Pale Moon'",  | ||||
| #"90:name *?= 'Panel'",  | ||||
| #"99:class_g = 'Pinta'",  | ||||
| #"90:name *?= 'Restart'",  | ||||
| #"99:name *?= 'sudo'",  | ||||
| #"99:name *?= 'Screenshot'",  | ||||
| #"99:class_g = 'Viewnior'",  | ||||
| #"99:class_g = 'VirtualBox'",  | ||||
| #"99:name *?= 'VLC'",  | ||||
| #"99:name *?= 'Write'",  | ||||
| #"93:class_g = 'URxvt' && !_NET_WM_STATE@:32a",  | ||||
| #"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",  | ||||
| #"96:_NET_WM_STATE@:32a *= '_NET_WM_STATE_STICKY'"  | ||||
| ]; | ||||
| 
 | ||||
| wintypes :  | ||||
| { | ||||
|   tooltip :  | ||||
|   { | ||||
|     fade = true; | ||||
|     shadow = false; | ||||
|     opacity = 0.85; | ||||
|     focus = true; | ||||
|   }; | ||||
|   fullscreen :  | ||||
|   { | ||||
|     fade = true; | ||||
|     shadow = false; | ||||
|     opacity = 1; | ||||
|     focus = true; | ||||
|   }; | ||||
| }; | ||||
							
								
								
									
										76
									
								
								.config/conky/shortcuts_green
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								.config/conky/shortcuts_green
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,76 @@ | ||||
| conky.config = { | ||||
| 	alignment = 'top_left', | ||||
| 	background = true, | ||||
| 	color2 = '2ECC71', | ||||
| 	cpu_avg_samples = 2, | ||||
| 	default_color = 'FFFFFF', | ||||
| 	double_buffer = true, | ||||
| 	font = 'Bitstream Vera Sans:size=8', | ||||
| 	gap_x = 15, | ||||
| 	gap_y = 40, | ||||
| 	minimum_width = 200, | ||||
| 	no_buffers = true, | ||||
| 	own_window = true, | ||||
|   own_window_class = 'shortcuts_green', | ||||
| 	own_window_type = 'override', | ||||
| 	own_window_transparent = true, | ||||
| 	update_interval = 10.0, | ||||
| 	use_xft = true, | ||||
| } | ||||
| conky.text = [[ | ||||
| # | ||||
| # Date | ||||
| ${alignr}${color1} | ||||
| ${goto 20}${voffset 8}${color2}${font Bitstream Vera Sans:size=16}${time %A}$font\ | ||||
| ${goto 140}${voffset -8}${color}${font Bitstream Vera Sans:size=38}${time %e}$font | ||||
| ${goto 20}${color}${voffset -30}${color}${font Bitstream Vera Sans:size=18}${time %b}$font\ | ||||
| ${goto 60}${voffset -3} ${color}${font Bitstream Vera Sans:size=20}${time %Y}$font${color2}$hr | ||||
| # | ||||
| ---------------Applications--------------- | ||||
| ${color2}open new terminal - ${color}mod+Enter | ||||
| ${color2}open dropdown yakuake terminal - ${color}F4 | ||||
| ${color2}Firefox - ${color}mod+Shift+f | ||||
| 
 | ||||
| ---------------Screenshots---------------- | ||||
| ${color2}image clip tool - ${color}mod+Shift+p | ||||
| 
 | ||||
| ---------------Menus---------------------- | ||||
| ${color2}audio devices - ${color}mod+Ctrl+a | ||||
| ${color2}bluetooth devices - ${color}mod+Ctrl+d | ||||
| ${color2}bmenu system settings - ${color}mod+Ctrl+b | ||||
| ${color2}dmenu app launcher - ${color}mod+d | ||||
| ${color2}morc_menu app menu - ${color}mod+z | ||||
| ${color2}power modes - ${color}mod+0 | ||||
| ${color2}blur lock - ${color}mod+9 | ||||
| 
 | ||||
| ---------------Restart / Reload----------- | ||||
| 
 | ||||
| ${color2}kill conky - ${color}mod+o | ||||
| ${color2}start conky - ${color}mod+shift+o | ||||
| ${color2}kill compton - ${color}mod+t | ||||
| ${color2}start compton - ${color}mod+Shift+t | ||||
| ${color2}reload i3 - ${color}mod+Shift+c | ||||
| ${color2}restart i3 - ${color}mod+Shift+r | ||||
| 
 | ||||
| ---------------Scratchpad----------------- | ||||
| ${color2}send to scratchpad - ${color}mod+Shift+minus | ||||
| ${color2}show scratchpad - ${color}mod+minus | ||||
| 
 | ||||
| ---------------Windows-------------------- | ||||
| ${color2}modify gaps - ${color}mod+Shift+g | ||||
| ${color2}resize mode - ${color}mod+r | ||||
| ${color2}toggle split direction - ${color}mod+q | ||||
| ${color2}kill cursor selection - ${color}mod+Ctrl+q | ||||
| ${color2}kill active window - ${color}mod+Shift+q | ||||
| 
 | ||||
| ---------------Workspace-------------------- | ||||
| ${color2}move to empty workspace - ${color}mod+Shift+z | ||||
| ${color2}switch to workspace 1-8 - ${color}mod+1-8 | ||||
| ${color2}send to workspace 1-8 - ${color}mod+Ctrl+1-8 | ||||
| ${color2}navigate workspaces - ${color}mod+Ctrl+arrowkeys | ||||
| ${color2}toggle floating - ${color}mod+Shift+Space | ||||
| ${color2}exit - ${color}mod+0 | ||||
| 
 | ||||
| ${color2}help - ${color}mod+Shift+h | ||||
| ${color2}mod key - ${color}<Alt> | ||||
| ]] | ||||
							
								
								
									
										108
									
								
								.config/conky/sysinfo_green
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										108
									
								
								.config/conky/sysinfo_green
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,108 @@ | ||||
| conky.config = { | ||||
| 	alignment = 'top_right', | ||||
| 	background = true, | ||||
| 	color2 = '2ECC71', | ||||
| 	cpu_avg_samples = 2, | ||||
| 	default_color = 'FFFFFF', | ||||
|   double_buffer = true, | ||||
| 	font = 'Bitstream Vera Sans:size=8', | ||||
| 	gap_x = 15, | ||||
| 	gap_y = -5, | ||||
| 	minimum_width = 200, | ||||
| 	no_buffers = true, | ||||
| 	own_window = true, | ||||
| 	own_window_type = 'override', | ||||
| 	own_window_class = 'sysinfo_green', | ||||
|   own_window_transparent = true, | ||||
| 	update_interval = 5.0, | ||||
| 	use_xft = true, | ||||
|   temperature_unit = 'fahrenheit', | ||||
| } | ||||
| conky.text = [[ | ||||
|   | ||||
| # Process list, load average | ||||
| # 1m / 5m / 15m format for lad avg | ||||
| ${color2}${voffset 35}${alignr}${font Bitstream Vera Sans:size=10}Proccesses${color} | ||||
| ${color}${alignr}${font Bitstream Vera Sans:size=8}Load Average: $font$alignr${loadavg} | ||||
| # | ||||
| # Process list CPU / RAM utilization table | ||||
| ${font}CPU${goto 170}RAM | ||||
| ${voffset 3}$font${color2}${top name 1}${goto 120}${color}${top cpu 1}%${goto 170}${color2}${top_mem name 1}${color}${alignr}${top_mem mem_res 1}${color} | ||||
| ${color2}${top name 2}${goto 120}${color}${top cpu 2}%${goto 170}${color2}${top_mem name 2}${color}${alignr}${top_mem mem_res 2}${color} | ||||
| ${voffset 3}$hr | ||||
| #  | ||||
| # RAM Display | ||||
| ${color2}${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}RAM ${color} | ||||
| ${goto 0}${color2}$alignc${memgraph 40,305}${color} | ||||
| ${voffset 4}${goto 0}${alignc}${color2}${membar 10, 305} | ||||
| ${color}${goto 10}${font}${memperc}%${alignr}${exec grep -w Active: /proc/meminfo | awk '{print $2 / 1024 }'}MiB /${memmax}  | ||||
| ${voffset 3}${color}$hr | ||||
| #  | ||||
| # CPU Display | ||||
| ${color2}${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}CPU ${color} | ||||
| # Chipset | ||||
| ${alignr}${font}${exec inxi |grep CPU | awk '{print $4" "$2" "$3" "$6}'}${exec lscpu |grep -w "Model name:"| awk '{print " - " $8}'} | ||||
| # CPU Graph | ||||
| ${voffset 4}${goto 0}${alignc}${color2}${cpugraph 40, 305} | ||||
| # Percentage / GHz utilized | ||||
| ${voffset 0}${goto 10}${color}${font}${exec cat /sys/class/thermal/thermal_zone2/temp | awk '{print ( ( ( (9/5) * $1) / 1000) + 32) "°F" }'}${alignr}${cpu}% - ${freq_g}GHz | ||||
| # CPU Core Graphs | ||||
| ${voffset 10}${color}${goto 10}${font Bitstream Vera Sans:size=8}${cpu cpu1}%${goto 43}${color2}${cpubar cpu1 12,110} ${goto 170}${color}${cpu cpu2}%${goto 203}${color2}${cpubar cpu2 12,110}  | ||||
| ${voffset 10}${color}${goto 10}${font Bitstream Vera Sans:size=8}${cpu cpu3}%${goto 43}${color2}${cpubar cpu3 12,110} ${goto 170}${color}${cpu cpu4}%${goto 203}${color2}${cpubar cpu4 12,110} | ||||
| ${voffset 10}${color}${goto 10}${font Bitstream Vera Sans:size=8}${cpu cpu5}%${goto 43}${color2}${cpubar cpu5 12,110} ${goto 170}${color}${cpu cpu6}%${goto 203}${color2}${cpubar cpu6 12,110} | ||||
| ${voffset 10}${color}${goto 10}${font Bitstream Vera Sans:size=8}${cpu cpu7}%${goto 43}${color2}${cpubar cpu7 12,110} ${goto 170}${color}${cpu cpu8}%${goto 203}${color2}${cpubar cpu8 12,110} | ||||
| 
 | ||||
| ${voffset 3}${color}$hr | ||||
| # | ||||
| # Network display | ||||
| ${color2}${font}${alignr}NETWORK${color} | ||||
| ${color}${voffset 4}${font}Interface: ${gw_iface} ${font}${alignr}Gateway IP: ${gw_ip} | ||||
| ${font}${alignr}${if_match "$wireless_essid"=="off/any"}Déconnecté${else}${wireless_essid}${endif}  | ||||
| ${font}${goto 5}Down${alignr}Up | ||||
| ${goto 5}${color2}${downspeedgraph enp0s31f6 40,153}${goto 160}${upspeedgraph enp0s31f6 40,155}  | ||||
| # Uncomment next line for wireless | ||||
| # ${goto 5}${color}${downspeedf wlp3s0} Kb/s - ${totaldown wlp3s0}${goto 160}${upspeedf wlp3s0} Kb/s - ${totalup wlp3s0} | ||||
| # Ethernet network display | ||||
| ${goto 5}${color}${downspeedf enp0s31f6} Kb/s - ${totaldown enp0s31f6}${alignr}${upspeedf enp0s31f6} Kb/s - ${totalup enp0s31f6} | ||||
| ${voffset 4}${color}$hr | ||||
| # | ||||
| # HDDisk Display | ||||
| ${color2}${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}DISKS${color} | ||||
| # | ||||
| # Root Filesystem Display | ||||
| ${voffset 2}${font}${goto 45} /dev/sda - /${font}${alignr}System: ${fs_used /} / ${fs_size /}   | ||||
| ${color2}${diskiograph /dev/sda}${color} | ||||
| ${color2}${fs_bar 8 /}${color}  | ||||
| #  | ||||
| # Home Filesystem Display | ||||
| #${voffset 6}${font}${goto 45}/dev/sda1 - /home/${font}${alignr}Data: ${fs_used /home/} / ${fs_size /home/}  | ||||
| #${color2}${diskiograph /dev/sda1}${color} | ||||
| #${color2}${fs_bar 8 /home/} ${color} | ||||
| # Optinal drive display, specify path to check mount | ||||
| #${if_mounted /run/media/thib/Data}${color}${font}${exec sudo hddtemp /dev/sdb -u F | awk '{print $NF}'}${alignr}${fs_used /run/media/thib/Data}/${fs_size /run/media/thib/Data}${else}${color}${font}${alignr}Unmounted${endif} | ||||
| $hr | ||||
| # | ||||
| # Other information | ||||
| ${color2}${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}OTHER${color} | ||||
| # MOBO temp, uptime | ||||
| ${color}${voffset 4}${font}Motherboard: ${goto 120}${acpitemp}F°${alignr}Uptime: ${uptime_short} | ||||
| # Domain status | ||||
| # ${color}${voffset 4}${font}Knoats: ${alignc}${exec curl -Is https://knoats.com | grep HTTP | awk '{print $1 " - " $2}'}${alignr}${exec curl -o /dev/null -s -w %{time_total}\\n  https://knoats.com}s | ||||
| # ${font}Shaunreed: ${alignc}${exec curl -Is https://shaunreed.com | grep HTTP | awk '{print $1 " - " $2}'}${alignr}${exec curl -o /dev/null -s -w %{time_total}\\n  https://shaunreed.com}s | ||||
| # ${font}dv: ${alignc}${exec curl -Is https://kapp.ga | grep HTTP | awk '{print $1 " - " $2}'}${alignr}${exec curl -o /dev/null -s -w %{time_total}\\n  https://kapp.ga}s | ||||
| # | ||||
| ${voffset 3}$hr | ||||
| # | ||||
| # | ||||
| # Things I don't use, but could in the future | ||||
| # I don't need to track docker containers.. unless I can check remotes? | ||||
| # ${font}Docker containers: ${goto 120}${exec docker ps -q $1 | wc -l}/${exec docker ps -a | grep -v -F 'Exited (0)' | grep -c -F 'Exited ('} | ||||
| #  | ||||
| # Commented out, since I am using a desktop | ||||
| # BATTERY | ||||
| # $color${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}BATTERY | ||||
| # ${font}${voffset 3}${alignr}${battery_percent}% | ||||
| # ${color2}${battery_bar} | ||||
| # $color${alignr}${if_match "$battery_time"=="unknown"}Charging...${else}Remain Time: ${battery_time}${endif} | ||||
| ]] | ||||
| 
 | ||||
							
								
								
									
										454
									
								
								.config/i3/config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										454
									
								
								.config/i3/config
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,454 @@ | ||||
| # This file has been auto-generated by i3-config-wizard(1). | ||||
| # It will not be overwritten, so edit it as you like. | ||||
| # | ||||
| # Should you change your keyboard layout some time, delete | ||||
| # this file and re-run i3-config-wizard(1). | ||||
| # | ||||
| 
 | ||||
| # i3 config file (v4) | ||||
| # | ||||
| # Please see https://i3wm.org/docs/userguide.html for a complete reference! | ||||
| 
 | ||||
| set $mod Mod4 | ||||
| # Mod1 = Alt | ||||
| #set $mod Mod1 | ||||
| focus_follows_mouse no | ||||
| 
 | ||||
| for_window [class="yakuake"] floating enable | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| # Move to a new empty workspace | ||||
| #bindsym $mod+Ctrl+Left exec --no-startup-id i3empty.py prev | ||||
| bindsym $mod+Shift+z exec --no-startup-id $HOME/.local/bin/i3scripts/i3empty.py | ||||
| 
 | ||||
| # Font for window titles. Will also be used by the bar unless a different font | ||||
| # is used in the bar {} block below. | ||||
| font pango:Inconsolata Nerd Font Mono 10 | ||||
| #font pango:monospace 8 | ||||
| 
 | ||||
| # This font is widely installed, provides lots of unicode glyphs, right-to-left | ||||
| # text rendering and scalability on retina/hidpi displays (thanks to pango). | ||||
| #font pango:DejaVu Sans Mono 8 | ||||
| 
 | ||||
| # Before i3 v4.8, we used to recommend this one as the default: | ||||
| # font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 | ||||
| # The font above is very space-efficient, that is, it looks good, sharp and | ||||
| # clear in small sizes. However, its unicode glyph coverage is limited, the old | ||||
| # X core fonts rendering does not support right-to-left and this being a bitmap | ||||
| # font, it doesn’t scale on retina/hidpi displays. | ||||
| 
 | ||||
| # Use Mouse+$mod to drag floating windows to their wanted position | ||||
| floating_modifier $mod | ||||
| # set default desktop layout (default is tiling) | ||||
| # workspace_layout tabbed <stacking|tabbed> | ||||
| 
 | ||||
| # Configure border style <normal|1pixel|pixel xx|none|pixel> | ||||
| default_border pixel 2 | ||||
| default_floating_border normal | ||||
| # Hide borders | ||||
| hide_edge_borders none | ||||
| 
 | ||||
| 
 | ||||
| # start a terminal | ||||
| 
 | ||||
| # kill focused window | ||||
| bindsym $mod+Shift+q kill | ||||
| 
 | ||||
| # start dmenu (a program launcher) | ||||
| bindsym $mod+d exec dmenu_run | ||||
| bindsym $mod+x exec rofi -show run | ||||
| bindsym $mod+a exec rofi -show window | ||||
| bindsym $mod+z exec rofi -show ssh | ||||
| 
 | ||||
| # There also is the (new) i3-dmenu-desktop which only displays applications | ||||
| # shipping a .desktop file. It is a wrapper around dmenu, so you need that | ||||
| # installed. | ||||
| # bindsym $mod+d exec --no-startup-id i3-dmenu-desktop | ||||
| 
 | ||||
| # change focus | ||||
| bindsym $mod+j focus left | ||||
| bindsym $mod+k focus down | ||||
| bindsym $mod+l focus up | ||||
| bindsym $mod+semicolon focus right | ||||
| 
 | ||||
| # alternatively, you can use the cursor keys: | ||||
| bindsym $mod+Left focus left | ||||
| bindsym $mod+Down focus down | ||||
| bindsym $mod+Up focus up | ||||
| bindsym $mod+Right focus right | ||||
| 
 | ||||
| # move focused window | ||||
| bindsym $mod+Shift+j move left | ||||
| bindsym $mod+Shift+k move down | ||||
| bindsym $mod+Shift+l move up | ||||
| bindsym $mod+Shift+semicolon move right | ||||
| 
 | ||||
| # alternatively, you can use the cursor keys: | ||||
| bindsym $mod+Shift+Left move left | ||||
| bindsym $mod+Shift+Down move down | ||||
| bindsym $mod+Shift+Up move up | ||||
| bindsym $mod+Shift+Right move right | ||||
| 
 | ||||
| # split in horizontal orientation | ||||
| # bindsym $mod+h split h | ||||
| 
 | ||||
| # split in vertical orientation | ||||
| # bindsym $mod+v split v | ||||
| 
 | ||||
| # enter fullscreen mode for the focused container | ||||
| bindsym $mod+f fullscreen toggle | ||||
| 
 | ||||
| # change container layout (stacked, tabbed, toggle split) | ||||
| # bindsym $mod+s layout stacking | ||||
| # bindsym $mod+w layout tabbed | ||||
| # bindsym $mod+e layout toggle split | ||||
| 
 | ||||
| # toggle tiling / floating | ||||
| # bindsym $mod+Shift+space floating toggle | ||||
| 
 | ||||
| # change focus between tiling / floating windows | ||||
| # bindsym $mod+space focus mode_toggle | ||||
| 
 | ||||
| # focus the parent container | ||||
| #bindsym $mod+a focus parent | ||||
| 
 | ||||
| # focus the child container | ||||
| #bindsym $mod+d focus child | ||||
| 
 | ||||
| # Define names for default workspaces for which we configure key bindings later on. | ||||
| # We use variables to avoid repeating the names in multiple places. | ||||
| set $ws1 "1" | ||||
| set $ws2 "2" | ||||
| set $ws3 "3" | ||||
| set $ws4 "4" | ||||
| set $ws5 "5" | ||||
| set $ws6 "6" | ||||
| set $ws7 "7" | ||||
| set $ws8 "8" | ||||
| set $ws9 "9" | ||||
| set $ws10 "10" | ||||
| 
 | ||||
| 
 | ||||
| # Custom named workspaces for keeping frequently used apps | ||||
| # Numbers overwritten by Polybar i3 module config | ||||
| set $ws99 99 | ||||
| set $ws98 98 | ||||
| set $ws97 97 | ||||
| set $ws96 96 | ||||
| set $ws95 95 | ||||
| set $ws94 94 | ||||
| 
 | ||||
| # Custom named workspace keybinds | ||||
| # To get keysymbols, run 'xmodmap -pke' | ||||
| bindsym $mod+Ctrl+backslash move container to workspace $ws99 | ||||
| bindsym $mod+Ctrl+bracketright move container to workspace $ws98  | ||||
| bindsym $mod+Ctrl+apostrophe move container to workspace $ws97 | ||||
| bindsym $mod+Ctrl+slash move container to workspace $ws96 | ||||
| bindsym $mod+Ctrl+period move container to workspace $ws95 | ||||
| bindsym $mod+Ctrl+comma move container to workspace $ws94 | ||||
| # Move to workspace with focused container | ||||
| bindsym $mod+Shift+backslash move container to workspace $ws99; workspace $ws99 | ||||
| bindsym $mod+Shift+bracketright move container to workspace $ws98; workspace $ws98 | ||||
| bindsym $mod+Shift+apostrophe move container to workspace $ws97; workspace $ws97 | ||||
| bindsym $mod+Shift+slash move container to workspace $ws96; workspace $ws96 | ||||
| bindsym $mod+Shift+period move container to workspace $ws95; workspace $ws95 | ||||
| bindsym $mod+Shift+comma move container to workspace $ws94; workspace $ws94 | ||||
| # Move to workspace | ||||
| bindsym $mod+backslash workspace number $ws99 | ||||
| bindsym $mod+bracketright workspace number $ws98 | ||||
| bindsym $mod+apostrophe workspace number $ws97 | ||||
| bindsym $mod+slash workspace number $ws96 | ||||
| bindsym $mod+period workspace number $ws95 | ||||
| bindsym $mod+comma workspace number $ws94 | ||||
| 
 | ||||
| 
 | ||||
| # Switch to workspace | ||||
| bindsym $mod+1 workspace $ws1 | ||||
| bindsym $mod+2 workspace $ws2 | ||||
| bindsym $mod+3 workspace $ws3 | ||||
| bindsym $mod+4 workspace $ws4 | ||||
| bindsym $mod+5 workspace $ws5 | ||||
| bindsym $mod+6 workspace $ws6 | ||||
| bindsym $mod+7 workspace $ws7 | ||||
| bindsym $mod+8 workspace $ws8 | ||||
| bindsym $mod+9 workspace $ws9 | ||||
| bindsym $mod+0 workspace $ws10 | ||||
| 
 | ||||
| # move focused container to workspace | ||||
| # bindsym $mod+Shift+1 move container to workspace $ws1 | ||||
| # bindsym $mod+Shift+2 move container to workspace $ws2 | ||||
| # bindsym $mod+Shift+3 move container to workspace $ws3 | ||||
| # bindsym $mod+Shift+4 move container to workspace $ws4 | ||||
| # bindsym $mod+Shift+5 move container to workspace $ws5 | ||||
| # bindsym $mod+Shift+6 move container to workspace $ws6 | ||||
| # bindsym $mod+Shift+7 move container to workspace $ws7 | ||||
| # bindsym $mod+Shift+8 move container to workspace $ws8 | ||||
| # bindsym $mod+Shift+9 move container to workspace $ws9 | ||||
| # bindsym $mod+Shift+0 move container to workspace $ws10 | ||||
| 
 | ||||
| 
 | ||||
| # Passing -n to urxvt forces Xorg to default the WM_ICON_NAME to tmux | ||||
| # Only this instance of urxvt will have that WM_ICON_NAME | ||||
| # Prevents for_window from acting on new terminals | ||||
| # Passing -T to urxvt sets WM_NAME and WM_ICON_NAME, if not set in a later argument | ||||
| # Use -T below to title the startup terminal and assign properties to it | ||||
| # exec_always --no-startup-id i3-msg 'exec urxvt -T origin -hold -e htop' | ||||
| # for_window [title="origin"] move to workspace number $ws95 | ||||
| # for_window [title="origin"] floating enable | ||||
| # for_window [title="origin"] resize set height 700 | ||||
| # for_window [title="origin"] resize set width 1000 | ||||
| # for_window [title="origin"] move position center | ||||
| 
 | ||||
| bindsym $mod+Ctrl+a exec "pavucontrol" | ||||
| for_window [class="Pavucontrol"] floating enable | ||||
| for_window [class="Pavucontrol"] resize set height 400 | ||||
| for_window [class="Pavucontrol"] resize set width 600 | ||||
| for_window [class="Pavucontrol"] move position center | ||||
| 
 | ||||
| for_window [class="Yad"] floating enable | ||||
| for_window [class="Yad"] resize set height 400 | ||||
| for_window [class="Yad"] resize set width 600 | ||||
| 
 | ||||
| for_window [class="Bitwarden"] floating enable | ||||
| for_window [class="Bitwarden"] resize set height 600 | ||||
| for_window [class="Bitwarden"] resize set width 800 | ||||
| for_window [class="Bitwarden"] move position center | ||||
| 
 | ||||
| for_window [class="Gpick"] floating enable | ||||
| for_window [class="Gpick"] resize set height 500 | ||||
| for_window [class="Gpick"] resize set width 700 | ||||
| for_window [class="Gpick"] move position center | ||||
| 
 | ||||
| for_window [class="discord"] floating enable | ||||
| for_window [class="discord"] resize set height 600 | ||||
| for_window [class="discord"] resize set width 800 | ||||
| for_window [class="discord"] move position center | ||||
| 
 | ||||
| for_window [class="Wicd-client.py"] floating enable | ||||
| for_window [class="Wicd-client.py"] resize set height 400 | ||||
| for_window [class="Wicd-client.py"] resize set width 600 | ||||
| for_window [class="Wicd-client.py"] move position center | ||||
| 
 | ||||
| 
 | ||||
| # reload the configuration file | ||||
| bindsym $mod+Shift+c reload | ||||
| # restart i3 inplace (preserves your layout/session, can be used to upgrade i3) | ||||
| bindsym $mod+Shift+r restart | ||||
| # exit i3 (logs you out of your X session) | ||||
| bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'" | ||||
| 
 | ||||
| exec --no-startup-id yakuake | ||||
| exec --no-startup-id xbindkeys --poll-rc | ||||
| exec --no-startup-id $HOME/.local/bin/i3scripts/start_konky | ||||
| exec --no-startup-id sh ~/.fehbg | ||||
| exec --no-startup-id xautolock -time 10 -locker blurlock | ||||
| exec --no-startup-id wicd-client -t | ||||
| exec --no-startup-id xfce4-power-manager | ||||
| exec --no-startup-id google-drive-ocamlfuse ~/gdrive | ||||
| 
 | ||||
| 
 | ||||
| #   Application keybinds | ||||
| ########################################### | ||||
| bindsym $mod+Return exec konsole -e tmux | ||||
| 
 | ||||
| # start a terminal | ||||
| # Uses $TERMINAL environment setting | ||||
| # bindsym $mod+Return exec terminal | ||||
| # Start / kill conky | ||||
| bindsym $mod+t exec pkill compton | ||||
| bindsym $mod+Shift+t exec compton | ||||
| # Firefox | ||||
| bindsym $mod+Shift+f exec firefox | ||||
| # Bluetooth device settings | ||||
| bindsym $mod+Ctrl+d exec blueman-manager | ||||
| ##   Screenshot keybinds | ||||
| ########################################### | ||||
| # Screenshot marquee tool | ||||
| bindsym $mod+Shift+p --release exec --no-startup-id scrot -s | ||||
| 
 | ||||
| #   Restart, reload, kill keybinds | ||||
| ########################################### | ||||
| 
 | ||||
| # Bind Mod+O to kill conky | ||||
| bindsym $mod+o exec pkill conky | ||||
| # Bind Mod+Shift+O to start conky | ||||
| bindsym $mod+Shift+o exec $HOME/.local/bin/i3scripts/start_konky | ||||
| 
 | ||||
| # Bind Mod+P kill polybars | ||||
| bindsym $mod+p exec pkill -f polybar | ||||
| # Bind Mod+Shift+P to start polybars | ||||
| bindsym $mod+Shift+p exec /home/kapper/.config/polybar/start-polybar.sh | ||||
| 
 | ||||
| 
 | ||||
| #   Workspace keybinds | ||||
| ########################################### | ||||
| 
 | ||||
| # Modify window borders | ||||
| bindsym $mod+u border none | ||||
| bindsym $mod+y border pixel 1 | ||||
| bindsym $mod+n border normal | ||||
| 
 | ||||
| # Move focused container to workspace | ||||
| bindsym $mod+Ctrl+1 move container to workspace $ws1 | ||||
| bindsym $mod+Ctrl+2 move container to workspace $ws2 | ||||
| bindsym $mod+Ctrl+3 move container to workspace $ws3 | ||||
| bindsym $mod+Ctrl+4 move container to workspace $ws4 | ||||
| bindsym $mod+Ctrl+5 move container to workspace $ws5 | ||||
| bindsym $mod+Ctrl+6 move container to workspace $ws6 | ||||
| bindsym $mod+Ctrl+7 move container to workspace $ws7 | ||||
| bindsym $mod+Ctrl+8 move container to workspace $ws8 | ||||
| # Move to workspace with focused container | ||||
| bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1 | ||||
| bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2 | ||||
| bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3 | ||||
| bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4 | ||||
| bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5 | ||||
| bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6 | ||||
| bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7 | ||||
| bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8 | ||||
| 
 | ||||
| #navigate workspaces next / previous | ||||
| bindsym $mod+Ctrl+Right workspace next | ||||
| bindsym $mod+Ctrl+Left workspace prev | ||||
| # workspace back and forth (with/without active container) | ||||
| workspace_auto_back_and_forth yes | ||||
| # Bind to swap to previous / last workspace | ||||
| bindsym $mod+Tab workspace back_and_forth | ||||
| 
 | ||||
| #   Layout keybinds | ||||
| ########################################### | ||||
| 
 | ||||
| # Split orientation toggles | ||||
| bindsym $mod+h split h;exec notify-send 'tile horizontally' | ||||
| bindsym $mod+v split v;exec notify-send 'tile vertically' | ||||
| bindsym $mod+q split toggle | ||||
| 
 | ||||
| # change container layout (stacked, tabbed, toggle split) | ||||
| bindsym $mod+s layout stacking | ||||
| bindsym $mod+w layout tabbed | ||||
| bindsym $mod+e layout toggle split | ||||
| # toggle tiling / floating | ||||
| bindsym $mod+Shift+space floating toggle | ||||
| 
 | ||||
| # move the currently focused window to the scratchpad | ||||
| bindsym $mod+Shift+minus move scratchpad | ||||
| # Show the next scratchpad window or hide the focused scratchpad window. | ||||
| # If there are multiple scratchpad windows, this command cycles through them. | ||||
| bindsym $mod+minus scratchpad show | ||||
| # To remove a window from scratchpad, toggle floating  | ||||
| 
 | ||||
| # change focus between tiling / floating windows | ||||
| bindsym $mod+space focus mode_toggle | ||||
| # toggle sticky | ||||
| bindsym $mod+Shift+s sticky toggle | ||||
| # focus the parent container | ||||
| #bindsym $mod+a focus parent | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| # resize window (you can also use the mouse for that) | ||||
| mode "resize" { | ||||
|         # These bindings trigger as soon as you enter the resize mode | ||||
| 
 | ||||
|         # Pressing left will shrink the window’s width. | ||||
|         # Pressing right will grow the window’s width. | ||||
|         # Pressing up will shrink the window’s height. | ||||
|         # Pressing down will grow the window’s height. | ||||
|         bindsym j resize shrink width 10 px or 10 ppt | ||||
|         bindsym k resize grow height 10 px or 10 ppt | ||||
|         bindsym l resize shrink height 10 px or 10 ppt | ||||
|         bindsym semicolon resize grow width 10 px or 10 ppt | ||||
| 
 | ||||
|         # same bindings, but for the arrow keys | ||||
|         bindsym Left resize shrink width 10 px or 10 ppt | ||||
|         bindsym Down resize grow height 10 px or 10 ppt | ||||
|         bindsym Up resize shrink height 10 px or 10 ppt | ||||
|         bindsym Right resize grow width 10 px or 10 ppt | ||||
| 
 | ||||
|         # back to normal: Enter or Escape or $mod+r | ||||
|         bindsym Return mode "default" | ||||
|         bindsym Escape mode "default" | ||||
|         bindsym $mod+r mode "default" | ||||
| } | ||||
| 
 | ||||
| bindsym $mod+r mode "resize" | ||||
| 
 | ||||
| # Use polybar installed | ||||
| exec_always --no-startup-id /home/kapper/.config/polybar/start-polybar.sh | ||||
| exec_always --no-startup-id compton | ||||
| # Start i3bar to display a workspace bar (plus the system information i3status | ||||
| # finds out, if available) | ||||
| #bar { | ||||
| # | ||||
| #        status_command i3blocks | ||||
| #} | ||||
| 
 | ||||
| # Theme colors | ||||
| # class                   border  backgr. text    indic.   child_border | ||||
|   client.focused          #005F00 #005F00 #80FFF9 #AFD700 | ||||
|   client.focused_inactive #2F3D44 #2F3D44 #1ABC9C #454948 | ||||
|   client.unfocused        #000000 #000000 #1ABC9C #000000 | ||||
|   client.urgent           #CB4B16 #FDF6E3 #1ABC9C #268BD2 | ||||
|   client.placeholder      #000000 #0c0c0c #ffffff #000000  | ||||
| 
 | ||||
|   client.background       #000000 | ||||
| 
 | ||||
| 
 | ||||
| ################################################################# | ||||
| ### Settings for i3-gaps  ####################################### | ||||
| ################################################################# | ||||
| 
 | ||||
| # Set inner/outer gaps default values | ||||
| gaps inner 14 | ||||
| gaps outer -2 | ||||
| 
 | ||||
| # Additionally, you can issue commands with the following syntax. This is useful to bind keys to changing the gap size. | ||||
| # gaps inner|outer current|all set|plus|minus <px> | ||||
| # gaps inner all set 10 | ||||
| # gaps outer all plus 5 | ||||
| 
 | ||||
| # Smart gaps (gaps used if only more than one container on the workspace) | ||||
| smart_gaps on | ||||
| 
 | ||||
| # Smart borders (draw borders around container only if it is not the only container on this workspace)  | ||||
| # on|no_gaps (on=always activate and no_gaps=only activate if the gap size to the edge of the screen is 0) | ||||
| #smart_borders on | ||||
| 
 | ||||
| # Press $mod+Shift+g to enter the gap mode. Choose o or i for modifying outer/inner gaps. Press one of + / - (in-/decrement for current workspace) or 0 (remove gaps for current workspace). If you also press Shift with these keys, the change will be global for all workspaces. | ||||
| set $mode_gaps Gaps: (o) outer, (i) inner | ||||
| set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||||
| set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global) | ||||
| bindsym $mod+Shift+g mode "$mode_gaps" | ||||
| 
 | ||||
| mode "$mode_gaps" { | ||||
|         bindsym o      mode "$mode_gaps_outer" | ||||
|         bindsym i      mode "$mode_gaps_inner" | ||||
|         bindsym Return mode "default" | ||||
|         bindsym Escape mode "default" | ||||
| } | ||||
| mode "$mode_gaps_inner" { | ||||
|         bindsym plus  gaps inner current plus 5 | ||||
|         bindsym minus gaps inner current minus 5 | ||||
|         bindsym 0     gaps inner current set 0 | ||||
| 
 | ||||
|         bindsym Shift+plus  gaps inner all plus 5 | ||||
|         bindsym Shift+minus gaps inner all minus 5 | ||||
|         bindsym Shift+0     gaps inner all set 0 | ||||
| 
 | ||||
|         bindsym Return mode "default" | ||||
|         bindsym Escape mode "default" | ||||
| } | ||||
| mode "$mode_gaps_outer" { | ||||
|         bindsym plus  gaps outer current plus 5 | ||||
|         bindsym minus gaps outer current minus 5 | ||||
|         bindsym 0     gaps outer current set 0 | ||||
| 
 | ||||
|         bindsym Shift+plus  gaps outer all plus 5 | ||||
|         bindsym Shift+minus gaps outer all minus 5 | ||||
|         bindsym Shift+0     gaps outer all set 0 | ||||
| 
 | ||||
|         bindsym Return mode "default" | ||||
|         bindsym Escape mode "default" | ||||
| } | ||||
| 
 | ||||
							
								
								
									
										182
									
								
								.config/i3blocks/config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										182
									
								
								.config/i3blocks/config
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,182 @@ | ||||
| # i3blocks config file | ||||
| # | ||||
| # Please see man i3blocks for a complete reference! | ||||
| # The man page is also hosted at http://vivien.github.io/i3blocks | ||||
| # | ||||
| # List of valid properties: | ||||
| # | ||||
| # align | ||||
| # color | ||||
| # command | ||||
| # full_text | ||||
| # instance | ||||
| # interval | ||||
| # label | ||||
| # min_width | ||||
| # name | ||||
| # separator | ||||
| # separator_block_width | ||||
| # short_text | ||||
| # signal | ||||
| # urgent | ||||
| 
 | ||||
| # Global properties | ||||
| # | ||||
| # The top properties below are applied to every block, but can be overridden. | ||||
| # Each block command defaults to the script name to avoid boilerplate. | ||||
| command=/usr/share/i3blocks/$BLOCK_NAME | ||||
| separator_block_width=20 | ||||
| markup=none | ||||
| 
 | ||||
| [weather] | ||||
| command=sh $HOME/.local/bin/i3scripts/weathermap | ||||
| align=right | ||||
| color=#ffaf00 | ||||
| interval=1800 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| [wicd-wifi] | ||||
| #label= | ||||
| command=sudo pkill wicd-client && wicd-client -t | ||||
| interval=once | ||||
| 
 | ||||
| # Volume indicator | ||||
| # | ||||
| # The first parameter sets the step (and units to display) | ||||
| # The second parameter overrides the mixer selection | ||||
| # See the script for details. | ||||
| 
 | ||||
| [volume] | ||||
| # DEPENDS: sudo apt install volumeicon-alsa | ||||
| #label=VOL | ||||
| #label=♪ | ||||
| #instance=Master | ||||
| #instance=PCM | ||||
| command=volumeicon | ||||
| interval=once | ||||
| #signal=10 | ||||
| 
 | ||||
| # Memory usage | ||||
| # | ||||
| # The type defaults to "mem" if the instance is not specified. | ||||
| [memory] | ||||
| label=MEM | ||||
| separator=false | ||||
| interval=30 | ||||
| 
 | ||||
| [memory] | ||||
| label=SWAP | ||||
| instance=swap | ||||
| separator=true | ||||
| interval=30 | ||||
| 
 | ||||
| # CPU usage | ||||
| # | ||||
| # The script may be called with -w and -c switches to specify thresholds, | ||||
| # see the script for details. | ||||
| [cpu_usage] | ||||
| label=CPU | ||||
| interval=10 | ||||
| min_width=CPU: 100.00% | ||||
| separator=false | ||||
| 
 | ||||
| [load_average] | ||||
| interval=10 | ||||
| 
 | ||||
| 
 | ||||
| # Disk usage | ||||
| # | ||||
| # The directory defaults to $HOME if the instance is not specified. | ||||
| # The script may be called with a optional argument to set the alert | ||||
| # (defaults to 10 for 10%). | ||||
| [disk] | ||||
| label=HOME | ||||
| #instance=/mnt/data | ||||
| interval=30 | ||||
| 
 | ||||
| # Network interface monitoring | ||||
| # | ||||
| # If the instance is not specified, use the interface used for default route. | ||||
| # The address can be forced to IPv4 or IPv6 with -4 or -6 switches. | ||||
| [iface] | ||||
| #instance=wlan0 | ||||
| color=#00FF00 | ||||
| interval=10 | ||||
| separator=false | ||||
| 
 | ||||
| [public-ip] | ||||
| command=wget -qO - ifconfig.me | ||||
| interval=60 | ||||
| 
 | ||||
| 
 | ||||
| [wifi] | ||||
| #instance=wlp3s0 | ||||
| interval=10 | ||||
| separator=false | ||||
| 
 | ||||
| [bandwidth] | ||||
| #instance=eth0 | ||||
| interval=5 | ||||
| 
 | ||||
| [backlight] | ||||
| label=BRI | ||||
| command=xbacklight | ||||
| separator=true | ||||
| interval=1 | ||||
| 
 | ||||
| 
 | ||||
| # Battery indicator | ||||
| # | ||||
| # The battery instance defaults to 0. | ||||
| [battery] | ||||
| label=BAT | ||||
| #label=⚡ | ||||
| #instance=1 | ||||
| interval=30 | ||||
| 
 | ||||
| # Date Time | ||||
| # | ||||
| [time] | ||||
| command=date '+%Y-%m-%d %H:%M:%S' | ||||
| interval=5 | ||||
| 
 | ||||
| # Generic media player support | ||||
| # | ||||
| # This displays "ARTIST - SONG" if a music is playing. | ||||
| # Supported players are: spotify, vlc, audacious, xmms2, mplayer, and others. | ||||
| #[mediaplayer] | ||||
| #instance=spotify | ||||
| #interval=5 | ||||
| #signal=10 | ||||
| 
 | ||||
| # OpenVPN support | ||||
| # | ||||
| # Support multiple VPN, with colors. | ||||
| #[openvpn] | ||||
| #interval=20 | ||||
| 
 | ||||
| # Temperature | ||||
| # | ||||
| # Support multiple chips, though lm-sensors. | ||||
| # The script may be called with -w and -c switches to specify thresholds, | ||||
| # see the script for details. | ||||
| #[temperature] | ||||
| #label=TEMP | ||||
| #interval=10 | ||||
| 
 | ||||
| # Key indicators | ||||
| # | ||||
| # Add the following bindings to i3 config file: | ||||
| # | ||||
| # bindsym --release Caps_Lock exec pkill -SIGRTMIN+11 i3blocks | ||||
| # bindsym --release Num_Lock  exec pkill -SIGRTMIN+11 i3blocks | ||||
| #[keyindicator] | ||||
| #instance=CAPS | ||||
| #interval=once | ||||
| #signal=11 | ||||
| 
 | ||||
| #[keyindicator] | ||||
| #instance=NUM | ||||
| #interval=once | ||||
| #signal=11 | ||||
							
								
								
									
										175
									
								
								.config/i3blocks/volume
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										175
									
								
								.config/i3blocks/volume
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,175 @@ | ||||
| #!/bin/bash | ||||
| # Displays the default device, volume, and mute status for i3blocks | ||||
| 
 | ||||
| set -a | ||||
| 
 | ||||
| AUDIO_HIGH_SYMBOL=${AUDIO_HIGH_SYMBOL:-'  '} | ||||
| 
 | ||||
| AUDIO_MED_THRESH=${AUDIO_MED_THRESH:-50} | ||||
| AUDIO_MED_SYMBOL=${AUDIO_MED_SYMBOL:-'  '} | ||||
| 
 | ||||
| AUDIO_LOW_THRESH=${AUDIO_LOW_THRESH:-0} | ||||
| AUDIO_LOW_SYMBOL=${AUDIO_LOW_SYMBOL:-'  '} | ||||
| 
 | ||||
| AUDIO_MUTED_SYMBOL=${AUDIO_MUTED_SYMBOL:-'  '} | ||||
| 
 | ||||
| AUDIO_DELTA=${AUDIO_DELTA:-5} | ||||
| 
 | ||||
| DEFAULT_COLOR=${DEFAULT_COLOR:-"#ffffff"} | ||||
| MUTED_COLOR=${MUTED_COLOR:-"#a0a0a0"} | ||||
| 
 | ||||
| LONG_FORMAT=${LONG_FORMAT:-'${SYMB} ${VOL}% [${INDEX}:${NAME}]'} | ||||
| SHORT_FORMAT=${SHORT_FORMAT:-'${SYMB} ${VOL}% [${INDEX}]'} | ||||
| USE_ALSA_NAME=${USE_ALSA_NAME:-0} | ||||
| USE_DESCRIPTION=${USE_DESCRIPTION:-0} | ||||
| 
 | ||||
| SUBSCRIBE=${SUBSCRIBE:-0} | ||||
| 
 | ||||
| MIXER=${MIXER:-""} | ||||
| SCONTROL=${SCONTROL:-""} | ||||
| 
 | ||||
| while getopts F:Sf:adH:M:L:X:T:t:C:c:i:m:s:h opt; do | ||||
| case "$opt" in | ||||
| S) SUBSCRIBE=1 ;; | ||||
| F) LONG_FORMAT="$OPTARG" ;; | ||||
| f) SHORT_FORMAT="$OPTARG" ;; | ||||
| a) USE_ALSA_NAME=1 ;; | ||||
| d) USE_DESCRIPTION=1 ;; | ||||
| H) AUDIO_HIGH_SYMBOL="$OPTARG" ;; | ||||
| M) AUDIO_MED_SYMBOL="$OPTARG" ;; | ||||
| L) AUDIO_LOW_SYMBOL="$OPTARG" ;; | ||||
| X) AUDIO_MUTED_SYMBOL="$OPTARG" ;; | ||||
| T) AUDIO_MED_THRESH="$OPTARG" ;; | ||||
| t) AUDIO_LOW_THRESH="$OPTARG" ;; | ||||
| C) DEFAULT_COLOR="$OPTARG" ;; | ||||
| c) MUTED_COLOR="$OPTARG" ;; | ||||
| i) AUDIO_INTERVAL="$OPTARG" ;; | ||||
| m) MIXER="$OPTARG" ;; | ||||
| s) SCONTROL="$OPTARG" ;; | ||||
| h) printf \ | ||||
|     "Usage: volume-pulseaudio [-S] [-F format] [-f format] [-p] [-a|-d] [-H symb] [-M symb] | ||||
|     [-L symb] [-X symb] [-T thresh] [-t thresh] [-C color] [-c color] [-i inter]  | ||||
|     [-m mixer] [-s scontrol] [-h] | ||||
|     Options: | ||||
|     -F, -f\tOutput format (-F long format, -f short format) to use, with exposed variables: | ||||
|     \${SYMB}, \${VOL}, \${INDEX}, \${NAME} | ||||
| -S\tSubscribe to volume events (requires persistent block, always uses long format) | ||||
|   -a\tUse ALSA name if possible | ||||
|   -d\tUse device description instead of name if possible | ||||
|   -H\tSymbol to use when audio level is high. Default: '$AUDIO_HIGH_SYMBOL' | ||||
|   -M\tSymbol to use when audio level is medium. Default: '$AUDIO_MED_SYMBOL' | ||||
|   -L\tSymbol to use when audio level is low. Default: '$AUDIO_LOW_SYMBOL' | ||||
|   -X\tSymbol to use when audio is muted. Default: '$AUDIO_MUTED_SYMBOL' | ||||
|   -T\tThreshold for medium audio level. Default: $AUDIO_MED_THRESH | ||||
|   -t\tThreshold for low audio level. Default: $AUDIO_LOW_THRESH | ||||
|   -C\tColor for non-muted audio. Default: $DEFAULT_COLOR | ||||
|   -c\tColor for muted audio. Default: $MUTED_COLOR | ||||
|   -i\tInterval size of volume increase/decrease. Default: $AUDIO_DELTA | ||||
|   -m\tUse the given mixer. | ||||
|   -s\tUse the given scontrol. | ||||
|   -h\tShow this help text | ||||
|   " && exit 0;; | ||||
|   esac | ||||
|   done | ||||
| 
 | ||||
|   if [[ -z "$MIXER" ]] ; then | ||||
|   MIXER="default" | ||||
|   if amixer -D pulse info >/dev/null 2>&1 ; then | ||||
|   MIXER="pulse" | ||||
|   fi | ||||
|   fi | ||||
| 
 | ||||
|   if [[ -z "$SCONTROL" ]] ; then | ||||
|   SCONTROL=$(amixer -D "$MIXER" scontrols | sed -n "s/Simple mixer control '\([^']*\)',0/\1/p" | head -n1) | ||||
|   fi | ||||
| 
 | ||||
|   CAPABILITY=$(amixer -D $MIXER get $SCONTROL | sed -n "s/  Capabilities:.*cvolume.*/Capture/p") | ||||
| 
 | ||||
| 
 | ||||
|   function move_sinks_to_new_default { | ||||
|     DEFAULT_SINK=$1 | ||||
|       pacmd list-sink-inputs | grep index: | grep -o '[0-9]\+' | while read SINK | ||||
|       do | ||||
|         pacmd move-sink-input $SINK $DEFAULT_SINK | ||||
|           done | ||||
|   } | ||||
| 
 | ||||
| function set_default_playback_device_next { | ||||
|   inc=${1:-1} | ||||
|   num_devices=$(pacmd list-sinks | grep -c index:) | ||||
|     sink_arr=($(pacmd list-sinks | grep index: | grep -o '[0-9]\+')) | ||||
|     default_sink_index=$(( $(pacmd list-sinks | grep index: | grep -no '*' | grep -o '^[0-9]\+') - 1 )) | ||||
|     default_sink_index=$(( ($default_sink_index + $num_devices + $inc) % $num_devices )) | ||||
|     default_sink=${sink_arr[$default_sink_index]} | ||||
|   pacmd set-default-sink $default_sink | ||||
|     move_sinks_to_new_default $default_sink | ||||
| } | ||||
| 
 | ||||
| case "$BLOCK_BUTTON" in | ||||
| 1) set_default_playback_device_next ;; | ||||
| 2) amixer -q -D $MIXER sset $SCONTROL $CAPABILITY toggle ;; | ||||
| 3) set_default_playback_device_next -1 ;; | ||||
| 4) amixer -q -D $MIXER sset $SCONTROL $CAPABILITY $AUDIO_DELTA%+ ;; | ||||
| 5) amixer -q -D $MIXER sset $SCONTROL $CAPABILITY $AUDIO_DELTA%- ;; | ||||
| esac | ||||
| 
 | ||||
| function print_format { | ||||
|   echo "$1" | envsubst '${SYMB}${VOL}${INDEX}${NAME}' | ||||
| } | ||||
| 
 | ||||
| function print_block { | ||||
|   ACTIVE=$(pacmd list-sinks | grep "state\: RUNNING" -B4 -A7 | grep "index:\|name:\|volume: front\|muted:") | ||||
|     [ -z "$ACTIVE" ] && ACTIVE=$(pacmd list-sinks | grep "index:\|name:\|volume: front\|muted:" | grep -A3 '*') | ||||
|     for name in INDEX NAME VOL MUTED; do | ||||
|       read $name | ||||
|         done < <(echo "$ACTIVE") | ||||
|         INDEX=$(echo "$INDEX" | grep -o '[0-9]\+') | ||||
|         VOL=$(echo "$VOL" | grep -o "[0-9]*%" | head -1 ) | ||||
|         VOL="${VOL%?}" | ||||
| 
 | ||||
|         NAME=$(echo "$NAME" | sed \ | ||||
|             's/.*<.*\.\(.*\)>.*/\1/; t;'\ | ||||
|             's/.*<\(.*\)>.*/\1/; t;'\ | ||||
|             's/.*/unknown/') | ||||
| 
 | ||||
|         if [[ $USE_ALSA_NAME == 1 ]] ; then | ||||
|           ALSA_NAME=$(pacmd list-sinks |\ | ||||
|               awk '/^\s*\*/{f=1}/^\s*index:/{f=0}f' |\ | ||||
|               grep "alsa.name\|alsa.mixer_name" |\ | ||||
|               head -n1 |\ | ||||
|               sed 's/.*= "\(.*\)".*/\1/') | ||||
|                     NAME=${ALSA_NAME:-$NAME} | ||||
|   elif [[ $USE_DESCRIPTION == 1 ]] ; then | ||||
|     DESCRIPTION=$(pacmd list-sinks |\ | ||||
|         awk '/^\s*\*/{f=1}/^\s*index:/{f=0}f' |\ | ||||
|         grep "device.description" |\ | ||||
|         head -n1 |\ | ||||
|         sed 's/.*= "\(.*\)".*/\1/') | ||||
|     NAME=${DESCRIPTION:-$NAME} | ||||
|   fi | ||||
| 
 | ||||
|     if [[ $MUTED =~ "no" ]] ; then | ||||
|       SYMB=$AUDIO_HIGH_SYMBOL | ||||
|         [[ $VOL -le $AUDIO_MED_THRESH ]] && SYMB=$AUDIO_MED_SYMBOL | ||||
|         [[ $VOL -le $AUDIO_LOW_THRESH ]] && SYMB=$AUDIO_LOW_SYMBOL | ||||
|           COLOR=$DEFAULT_COLOR | ||||
|     else | ||||
|       SYMB=$AUDIO_MUTED_SYMBOL | ||||
|         COLOR=$MUTED_COLOR | ||||
|         fi | ||||
| 
 | ||||
|         if [[ $SUBSCRIBE == 1 ]] ; then | ||||
|           print_format "$LONG_FORMAT" | ||||
|         else | ||||
|           print_format "$LONG_FORMAT" | ||||
|             print_format "$SHORT_FORMAT" | ||||
|             echo "$COLOR" | ||||
|             fi | ||||
| } | ||||
| 
 | ||||
| print_block | ||||
| if [[ $SUBSCRIBE == 1 ]] ; then | ||||
| while read -r EVENT; do | ||||
|   print_block | ||||
| done < <(pactl subscribe | stdbuf -oL grep change) | ||||
|   fi | ||||
							
								
								
									
										74
									
								
								.config/i3status/config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								.config/i3status/config
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,74 @@ | ||||
| # i3status configuration file. | ||||
| # see "man i3status" for documentation. | ||||
| 
 | ||||
| # It is important that this file is edited as UTF-8. | ||||
| # The following line should contain a sharp s: | ||||
| # ß | ||||
| # If the above line is not correctly displayed, fix your editor first! | ||||
| 
 | ||||
| general { | ||||
|         colors = true | ||||
|         interval = 5 | ||||
| } | ||||
| 
 | ||||
| # order += "read_file BRIGHTNESS" | ||||
| order += "memory" | ||||
| order += "cpu_usage" | ||||
| order += "volume master" | ||||
| order += "ipv6" | ||||
| order += "disk /" | ||||
| order += "wireless _first_" | ||||
| order += "ethernet _first_" | ||||
| order += "battery all" | ||||
| order += "load" | ||||
| order += "tztime local" | ||||
| 
 | ||||
| # read_file BRIGHTNESS { | ||||
| #   format = "BRI %content" | ||||
| #   path = "/home/kapper/.config/.brightness" | ||||
| #   max_characters = 5 | ||||
| # } | ||||
| 
 | ||||
| memory 0{ | ||||
| 
 | ||||
|   format = "%free %available%" | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
| volume master { | ||||
|   format = "♪: %volume" | ||||
|   format_muted = "♪: muted (%volume)" | ||||
| } | ||||
| 
 | ||||
| cpu_usage { | ||||
|   format = "CPU %usage {%cpu0 %cpu1}" | ||||
|   max_threshold = 75 | ||||
| } | ||||
| 
 | ||||
| wireless _first_ { | ||||
|         format_up = "W: (%quality at %essid) %ip" | ||||
|         format_down = "W: down" | ||||
| } | ||||
| 
 | ||||
| ethernet _first_ { | ||||
|         # if you use %speed, i3status requires root privileges | ||||
|         format_up = "E: %ip (%speed)" | ||||
|         format_down = "E: down" | ||||
| } | ||||
| 
 | ||||
| battery all { | ||||
|         format = "%status %percentage %remaining" | ||||
| } | ||||
| 
 | ||||
| tztime local { | ||||
|         format = "%Y-%m-%d %H:%M:%S" | ||||
| } | ||||
| 
 | ||||
| load { | ||||
|         format = "%1min" | ||||
| } | ||||
| 
 | ||||
| disk "/" { | ||||
|         format = "%avail" | ||||
| } | ||||
| 
 | ||||
							
								
								
									
										18
									
								
								.config/konsolerc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								.config/konsolerc
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,18 @@ | ||||
| [Desktop Entry] | ||||
| DefaultProfile=Default Powerline.profile | ||||
| 
 | ||||
| [Favorite Profiles] | ||||
| Favorites=Default Powerline.profile | ||||
| 
 | ||||
| [KonsoleWindow] | ||||
| ShowMenuBarByDefault=false | ||||
| 
 | ||||
| [MainWindow] | ||||
| Height 1200=1127 | ||||
| Height 1504=1431 | ||||
| MenuBar=Disabled | ||||
| State=AAAA/wAAAAD9AAAAAAAAB4AAAARnAAAABAAAAAQAAAAIAAAACPwAAAAA | ||||
| ToolBarsMovable=Disabled | ||||
| Width 1920=960 | ||||
| Width 2256=1128 | ||||
| Window-Maximized 1200x1920=true | ||||
							
								
								
									
										4
									
								
								.config/mimeapps.list
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								.config/mimeapps.list
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,4 @@ | ||||
| 
 | ||||
| [Default Applications] | ||||
| x-scheme-handler/jetbrains=jetbrains-toolbox.desktop | ||||
| x-scheme-handler/bitwarden=bitwarden_bitwarden.desktop | ||||
							
								
								
									
										7
									
								
								.config/pavucontrol.ini
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								.config/pavucontrol.ini
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,7 @@ | ||||
| [window] | ||||
| width=1366 | ||||
| height=749 | ||||
| sinkInputType=0 | ||||
| sourceOutputType=1 | ||||
| sinkType=0 | ||||
| sourceType=0 | ||||
							
								
								
									
										106
									
								
								.config/polybar/.env/break-timer
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										106
									
								
								.config/polybar/.env/break-timer
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,106 @@ | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| scrollUp | ||||
| scrollUp | ||||
| scrollUp | ||||
| scrollUp | ||||
| scrollUp | ||||
| scrollUp | ||||
| scrollUp | ||||
| scrollUp | ||||
| scrollUp | ||||
| left | ||||
| left | ||||
| right | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| right | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| scrollDown | ||||
| left | ||||
| right | ||||
| right | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| right | ||||
| left | ||||
| right | ||||
| right | ||||
| right | ||||
| left | ||||
| middle | ||||
| middle | ||||
| middle | ||||
| right | ||||
| middle | ||||
| middle | ||||
| right | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| left | ||||
| middle | ||||
| right | ||||
| left | ||||
| left | ||||
| left | ||||
| right | ||||
| right | ||||
| left | ||||
							
								
								
									
										692
									
								
								.config/polybar/config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										692
									
								
								.config/polybar/config
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,692 @@ | ||||
| ;                      Polybars | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| 
 | ||||
| [bar/top] | ||||
| ; Polybar Position | ||||
| monitor = ${env:MONITOR} | ||||
| width = 100% | ||||
| height = 25 | ||||
| 
 | ||||
| ; Polybar Color | ||||
| ; Depreciated.. | ||||
| ;tray-transparent = true | ||||
| ; Transparent adds 2 leading values to color (2+hex) | ||||
| background = #00000000 | ||||
| ; Opaque is hex color (hex) | ||||
| foreground = #00c24a | ||||
| line-color = ${bar/bottom.background} | ||||
| line-size = 16 | ||||
| spacing = 2 | ||||
| tray-background = #00111111 | ||||
| 
 | ||||
| ; Polybar Padding | ||||
| padding-left = 0 | ||||
| padding-right = 5 | ||||
| 
 | ||||
| ; Margin Between Modules | ||||
| module-margin = 2 | ||||
| 
 | ||||
| ; Type font | ||||
| font-0 = NotoSans-Regular:size=8;0 | ||||
| font-1 = Inconsolata Nerd Font:size=12;0 | ||||
| font-2 = Noto Sans Mono:size=8;0 | ||||
| 
 | ||||
| ; Modules | ||||
| modules-left = powermenu weather | ||||
| modules-center = ki3 | ||||
| modules-right = volume date | ||||
| 
 | ||||
| ; Set the cursor to display pointer / resize is interaction available | ||||
| cursor-click = pointer | ||||
| cursor-scroll = ns-resize | ||||
| 
 | ||||
| [bar/bottom] | ||||
| ; Position, size of polybar | ||||
| monitor = ${env:MONITOR} | ||||
| bottom = true | ||||
| width = 100% | ||||
| height = 20 | ||||
| 
 | ||||
| ; Use top bar colors | ||||
| background = ${bar/top.background} | ||||
| foreground = ${bar/top.foreground} | ||||
| line-color = ${bar/top.background} | ||||
| line-size = 2 | ||||
| spacing = 3 | ||||
| 
 | ||||
| ; Polybar padding | ||||
| padding-left = 6 | ||||
| padding-right = 6 | ||||
| 
 | ||||
| ; Margins between modules | ||||
| module-margin-left = 1 | ||||
| module-margin-right = 2 | ||||
| 
 | ||||
| ; Font settings, order matters | ||||
| ; Top font takes priority over following | ||||
| ;font-0 = Source Code Pro:size=10;0 | ||||
| font-0 = NotoSans-Regular:size=8;1 | ||||
| font-1 = Inconsolata Nerd Font:size=12;3 | ||||
| font-2 = Noto Sans Mono:size=8;0 | ||||
| 
 | ||||
| ; Modules | ||||
| modules-left = temp-cpu cpu memory | ||||
| modules-center = popup-utc network public-ip filesystem | ||||
| modules-right = vpn battery | ||||
| 
 | ||||
| ; Set the cursor to display pointer / resize is interaction available | ||||
| cursor-click = pointer | ||||
| cursor-scroll = ns-resize | ||||
| 
 | ||||
| ;                     Modules | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| 
 | ||||
| 
 | ||||
| ;   VPN Status | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/vpn] | ||||
| type = custom/script | ||||
| exec = mullvad status | awk '{print "VPN: "$3}' | ||||
| interval = 10 | ||||
| 
 | ||||
| ;    Pop-up Calendar | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/popup-utc] | ||||
| type = custom/script | ||||
| exec = ~/.local/bin/i3scripts/popup-calendar | ||||
| interval = 5 | ||||
| click-left = ~/.local/bin/i3scripts/popup-calendar --popup | ||||
| click-right = ~/.local/bin/i3scripts/popup-calendar-local | ||||
| 
 | ||||
| ;    Local Date | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/date] | ||||
| type = internal/date | ||||
| date = %%{F#aaa}%Y-%m-%d%%{F-}  %%{F#fff}%H:%M%%{F-} | ||||
| date-alt = %%{F#aaa}%A, %d %B %Y  %%{F#fff}%H:%M%%{F#666}:%%{F#fba922}%S%%{F-} | ||||
| click-right = exec notify-send hi | ||||
| 
 | ||||
| ;    Weather | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/weather] | ||||
| type = custom/script | ||||
| exec = ~/.local/bin/i3scripts/weathermap | ||||
| interval = 600 | ||||
| ;label-font = Font Awesome 5 Free Solid:size=40;0 | ||||
| 
 | ||||
| ;    Type Speed | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/info-hackspeed] | ||||
| type = custom/script | ||||
| exec = ~/.local/bin/i3scripts/info-hackspeed | ||||
| tail = true | ||||
| 
 | ||||
| ; Polybar Break Timer | ||||
| [module/breaktimer] | ||||
| type = custom/script | ||||
| format-prefix = "   " | ||||
| ;format-foreground = ${colors.verdeclaro} | ||||
| exec = polybar-break-timer $HOME/.config/polybar/.env/break-timer | ||||
| click-left = echo left >> $HOME/.config/polybar/.env/break-timer | ||||
| click-middle = echo middle >> $HOME/.config/polybar/.env/break-timer | ||||
| click-right = echo right >> $HOME/.config/polybar/.env/break-timer | ||||
| scroll-up = echo scrollUp >> $HOME/.config/polybar/.env/break-timer | ||||
| scroll-down = echo scrollDown >> $HOME/.config/polybar/.env/break-timer | ||||
| tail = true | ||||
| 
 | ||||
| ;    System Idle Time | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/info-idle] | ||||
| type = custom/script | ||||
| exec = ~/.local/bin/i3scripts/info-idle | ||||
| tail = true | ||||
| 
 | ||||
| ;    Disk Space | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/filesystem] | ||||
| type = internal/fs | ||||
| ; Mountpoints to display | ||||
| mount-0 = / | ||||
| ;mount-1 = /home | ||||
| ;mount-2 = /var | ||||
| ; Seconds to sleep between updates | ||||
| ; Default: 30 | ||||
| interval = 10 | ||||
| ; Display fixed precision values | ||||
| ; Default: false | ||||
| fixed-values = true | ||||
|  ;Available tags: | ||||
|  ;   <label-mounted> (default) | ||||
|  ;   <bar-free> | ||||
|  ;   <bar-used> | ||||
|  ;   <ramp-capacity> | ||||
| format-mounted = <label-mounted> | ||||
| ; Available tokens: | ||||
| ;   %mountpoint% | ||||
| ;   %type% | ||||
| ;   %fsname% | ||||
| ;   %percentage_free% | ||||
| ;   %percentage_used% | ||||
| ;   %total% | ||||
| ;   %free% | ||||
| ;   %used% | ||||
| ; Default: %mountpoint% %percentage_free%% | ||||
| label-mounted = %mountpoint%  %free% | ||||
| ; Spacing between entries | ||||
| ; Default: 2 | ||||
| spacing = 4 | ||||
| 
 | ||||
| ;    Network Status | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/network] | ||||
| type = internal/network | ||||
| interface = enp0s31f6 | ||||
| ; Available tags: | ||||
| ;   <label-connected> (default) | ||||
| ;   <ramp-signal> | ||||
| format-connected = <label-connected> | ||||
| ; Available tags: | ||||
| ;   <label-disconnected> (default) | ||||
| format-disconnected = <label-disconnected> | ||||
| ; Available tags: | ||||
| ;   <label-connected> (default) | ||||
| ;   <label-packetloss> | ||||
| ;   <animation-packetloss> | ||||
| format-packetloss = <animation-packetloss> <label-connected> | ||||
| ; Default: %ifname% %local_ip% | ||||
| label-connected =  %upspeed%    /   %downspeed:9%     龍   %linkspeed%          %local_ip% | ||||
| label-connected-foreground =#00c24a | ||||
| ; Default: (none) | ||||
| label-disconnected = not connected | ||||
| label-disconnected-foreground = #d00 | ||||
| ; Default: (none) | ||||
| ;label-packetloss = %essid% | ||||
| ;label-packetloss-foreground = #eefafafa | ||||
| ; Only applies if <ramp-signal> is used | ||||
| ;ramp-signal-0 = 😱 | ||||
| ;ramp-signal-1 = 😠 | ||||
| ;ramp-signal-2 = 😒 | ||||
| ;ramp-signal-3 = 😊 | ||||
| ;ramp-signal-4 = 😃 | ||||
| ;ramp-signal-5 = 😈 | ||||
| ; Only applies if <animation-packetloss> is used | ||||
| ;animation-packetloss-0 = ⚠ | ||||
| ;animation-packetloss-0-foreground = #ffa64c | ||||
| ;animation-packetloss-1 = 📶 | ||||
| ;animation-packetloss-1-foreground = #000000 | ||||
| ; Framerate in milliseconds | ||||
| ;animation-packetloss-framerate = 500 | ||||
| ; Seconds to sleep between updates | ||||
| ; Default: 1 | ||||
| interval = 5.0 | ||||
| ; Test connectivity every Nth update | ||||
| ; A value of 0 disables the feature | ||||
| ; NOTE: Experimental (needs more testing) | ||||
| ; Default: 0 | ||||
| ;ping-interval = 3 | ||||
| ; @deprecated: Define min width using token specifiers (%downspeed:min% and %upspeed:min%) | ||||
| ; Minimum output width of upload/download rate | ||||
| ; Default: 3 | ||||
| udspeed-minwidth = 5 | ||||
| ; Accumulate values from all interfaces | ||||
| ; when querying for up/downspeed rate | ||||
| ; Default: false | ||||
| accumulate-stats = true | ||||
| ; Consider an `UNKNOWN` interface state as up. | ||||
| ; Some devices like USB network adapters have | ||||
| ; an unknown state, even when they're running | ||||
| ; Default: false | ||||
| unknown-as-up = true | ||||
| 
 | ||||
| ;    Show Public IP | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/public-ip] | ||||
| type = custom/script | ||||
| exec = curl -s ifconfig.me | ||||
| interval = 600 | ||||
| 
 | ||||
| ;    CPU Temp | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/temp-cpu] | ||||
| type = custom/script | ||||
| ; Seconds to sleep between updates | ||||
| ; Default: 1 | ||||
| interval = 5.0 | ||||
| ; Full path of temperature sysfs path | ||||
| ; Use `sensors` to find preferred temperature source, then run | ||||
| ; $ for i in /sys/class/hwmon/hwmon*/temp*_input; do echo "$(<$(dirname $i)/name): $(cat ${i%_*}_label 2>/dev/null || echo $(basename ${i%_*})) $(readlink -f $i)"; done | ||||
| ; to find path to desired file | ||||
| ; Default reverts to thermal zone setting | ||||
| exec = cat /sys/class/thermal/thermal_zone2/temp | awk '{print ( ( ( (9/5) * $1) / 1000) + 32) "°F" }' | ||||
| format = <label> | ||||
| tail = true | ||||
| label = CPU: %output% | ||||
| 
 | ||||
| ;    GPU Temp | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/temp-gpu] | ||||
| type = internal/temperature | ||||
| ; Seconds to sleep between updates | ||||
| ; Default: 1 | ||||
| interval = 5.0 | ||||
| ; Thermal zone to use | ||||
| ; To list all the zone types, run | ||||
| ; $ for i in /sys/class/thermal/thermal_zone*; do echo "$i: $(<$i/type)"; done | ||||
| ; Default: 0 | ||||
| thermal-zone = 2 | ||||
| ; Full path of temperature sysfs path | ||||
| ; Use `sensors` to find preferred temperature source, then run | ||||
| ; $ for i in /sys/class/hwmon/hwmon*/temp*_input; do echo "$(<$(dirname $i)/name): $(cat ${i%_*}_label 2>/dev/null || echo $(basename ${i%_*})) $(readlink -f $i)"; done | ||||
| ; to find path to desired file | ||||
| ; Default reverts to thermal zone setting | ||||
| hwmon-path = /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/hwmon/hwmon3/temp1_input | ||||
| ; Base temperature for where to start the ramp (in degrees celsius) | ||||
| ; Default: 0 | ||||
| base-temperature = 20 | ||||
| ; Threshold temperature to display warning label (in degrees celsius) | ||||
| ; Default: 80 | ||||
| warn-temperature = 60 | ||||
| ; Available tokens: | ||||
| ;   %temperature% (deprecated) | ||||
| ;   %temperature-c%   (default, temperature in °C) | ||||
| ;   %temperature-f%   (temperature in °F) | ||||
| label = ﲅ     %temperature-f% | ||||
| ; Available tokens: | ||||
| ;   %temperature% (deprecated) | ||||
| ;   %temperature-c%   (default, temperature in °C) | ||||
| ;   %temperature-f%   (temperature in °F) | ||||
| label-warn = %temperature-f% | ||||
| label-warn-foreground = #f00 | ||||
| 
 | ||||
| ;    Keyboard Status | ||||
| ;    Locale, Caps, Numlock | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/keyboard] | ||||
| type = internal/xkeyboard | ||||
| ; List of indicators to ignore | ||||
| blacklist-1 = scroll lock | ||||
| label-indicator-on-capslock = Caps  | ||||
| label-indicator-off-capslock = | ||||
| label-indicator-on-numlock = Num  | ||||
| label-indicator-off-numlock = | ||||
| format = <label-indicator> <label-layout> | ||||
| ; layout-icon-[0-9]+ = layout;icon | ||||
| ; Assign each layout an icon that will be available as %icon% token for the | ||||
| ; <label-layout> tag. The part before ';' will try to match %layout% value. | ||||
| label-layout = %name% %icon% | ||||
| ;layout-icon-default =  | ||||
| ;layout-icon-1 = us; | ||||
| 
 | ||||
| ;    System Menus | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/powermenu] | ||||
| type = custom/menu | ||||
| format-padding = 0 | ||||
| format = <label-toggle> <menu> | ||||
| label-open = "   " | ||||
| label-close = "   " | ||||
| menu-0-0 = "      pkill poly   " | ||||
| menu-0-0-foreground = #fba922 | ||||
| menu-0-0-exec = pkill -f polybar | ||||
| menu-0-1 = "    i3 restart   " | ||||
| menu-0-1-foreground = #fba922 | ||||
| ;menu-0-1-background = #141414 | ||||
| menu-0-1-exec = i3 restart | ||||
| menu-0-2 = "   Reboot   " | ||||
| menu-0-2-foreground = #fba922 | ||||
| menu-0-2-exec = sudo reboot | ||||
| menu-0-3 = "   Power off   " | ||||
| menu-0-3-foreground = #fba922 | ||||
| menu-0-3-exec = sudo poweroff | ||||
| menu-0-4 = "     Lock   " | ||||
| menu-0-4-foreground = #fba922 | ||||
| menu-0-4-exec = i3lock -c 000000 | ||||
| 
 | ||||
| ;    Pseudo-Caffeine | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/caffeine] | ||||
| type = custom/menu | ||||
| format = <menu> <label-toggle> | ||||
| label-open = "    " | ||||
| label-close = "    " | ||||
| label-open-padding = 0 | ||||
| label-close-padding = 1 | ||||
| label-separator = " " | ||||
| 
 | ||||
| menu-0-0 = " ON " | ||||
| menu-0-0-exec = sh /home/kapper/.local/bin/i3scripts/xoffee disable | ||||
| menu-0-1 = " OFF " | ||||
| menu-0-1-exec = sh /home/kapper/.local/bin/i3scripts/xoffee enable | ||||
| 
 | ||||
| ;    CPU Core Usages | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/cpu] | ||||
| type = internal/cpu | ||||
| interval = 5 | ||||
| format = <ramp-coreload> <label> | ||||
| label = %percentage-cores% | ||||
| ramp-coreload-0 = ▁ | ||||
| ramp-coreload-0-font = 2 | ||||
| ramp-coreload-0-foreground = #aaff77 | ||||
| ramp-coreload-1 = ▂ | ||||
| ramp-coreload-1-font = 2 | ||||
| ramp-coreload-1-foreground = #aaff77 | ||||
| ramp-coreload-2 = ▃ | ||||
| ramp-coreload-2-font = 2 | ||||
| ramp-coreload-2-foreground = #aaff77 | ||||
| ramp-coreload-3 = ▄ | ||||
| ramp-coreload-3-font = 2 | ||||
| ramp-coreload-3-foreground = #aaff77 | ||||
| ramp-coreload-4 = ▅ | ||||
| ramp-coreload-4-font = 2 | ||||
| ramp-coreload-4-foreground = #fba922 | ||||
| ramp-coreload-5 = ▆ | ||||
| ramp-coreload-5-font = 2 | ||||
| ramp-coreload-5-foreground = #fba922 | ||||
| ramp-coreload-6 = ▇ | ||||
| ramp-coreload-6-font = 2 | ||||
| ramp-coreload-6-foreground = #ff5555 | ||||
| ramp-coreload-7 = █ | ||||
| ramp-coreload-7-font = 2 | ||||
| ramp-coreload-7-foreground = #ff5555 | ||||
| 
 | ||||
| ;    UTC Date / Time | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/clock-utc] | ||||
| type = custom/script | ||||
| exec = TZ=UTC date +"UTC: %%{F#999}%Y-%m-%d%%{F-}  %%{F#fff}%H:%M%%{F-}" | ||||
| interval = 30 | ||||
| 
 | ||||
| ;    Local Date / Time | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/clock] | ||||
| type = internal/date | ||||
| interval = 30 | ||||
| date = %%{F#999}%Y-%m-%d%%{F-}  %%{F#fff}%H:%M%%{F-} | ||||
| 
 | ||||
| ;    Memory Free MiB | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/memfree] | ||||
| type = custom/script | ||||
| exec = grep -w MemAvailable: /proc/meminfo | awk '{print $2 / 1024 "MiB"}' | ||||
| interval = 5 | ||||
| label =  RAM: %output% | ||||
| 
 | ||||
| 
 | ||||
| ;    Memory Usage | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| ; Available tags: | ||||
| ;   <label> (default) | ||||
| ;   <bar-used> | ||||
| ;   <bar-free> | ||||
| ;   <ramp-used> | ||||
| ;   <ramp-free> | ||||
| ;   <bar-swap-used> | ||||
| ;   <bar-swap-free> | ||||
| ;   <ramp-swap-used> | ||||
| ;   <ramp-swap-free> | ||||
| ; Available tokens: | ||||
| ;   %percentage_used% (default) | ||||
| ;   %percentage_free% | ||||
| ;   %gb_used% | ||||
| ;   %gb_free% | ||||
| ;   %gb_total% | ||||
| ;   %mb_used% | ||||
| ;   %mb_free% | ||||
| ;   %mb_total% | ||||
| ;   %percentage_swap_used% | ||||
| ;   %percentage_swap_free% | ||||
| ;   %mb_swap_total% | ||||
| ;   %mb_swap_free% | ||||
| ;   %mb_swap_used% | ||||
| ;   %gb_swap_total% | ||||
| ;   %gb_swap_free% | ||||
| ;   %gb_swap_used% | ||||
| [module/memory] | ||||
| type = internal/memory | ||||
| format = <label> <bar-used> | ||||
| label = SWAP:%mb_swap_free% RAM: %mb_free% | ||||
| bar-used-width = 15 | ||||
| bar-used-foreground-0 = #aaff77 | ||||
| bar-used-foreground-1 = #fba922 | ||||
| bar-used-foreground-2 = #ff5555 | ||||
| ;bar-used-foreground-3 = #ff5555 | ||||
| bar-used-indicator =  | ||||
| bar-used-indicator-font = 6 | ||||
| bar-used-indicator-foreground = #ff | ||||
| 
 | ||||
| bar-used-fill =  | ||||
| bar-used-fill-font = 6 | ||||
| bar-used-empty = - | ||||
| bar-used-empty-font = 6 | ||||
| bar-used-empty-foreground = #444444 | ||||
| 
 | ||||
| 
 | ||||
| ;    Battery Status | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/battery] | ||||
| type = internal/battery | ||||
| 
 | ||||
| ; This is useful in case the battery never reports 100% charge | ||||
| full-at = 99 | ||||
| 
 | ||||
| ; Use the following command to list batteries and adapters: | ||||
| ; $ ls -1 /sys/class/power_supply/ | ||||
| battery = BAT0 | ||||
| adapter = AC | ||||
| 
 | ||||
| ; If an inotify event haven't been reported in this many | ||||
| ; seconds, manually poll for new values. | ||||
| ; | ||||
| ; Needed as a fallback for systems that don't report events | ||||
| ; on sysfs/procfs. | ||||
| ; | ||||
| ; Disable polling by setting the interval to 0. | ||||
| ; | ||||
| ; Default: 5 | ||||
| poll-interval = 5 | ||||
| 
 | ||||
| ; see "man date" for details on how to format the time string | ||||
| ; NOTE: if you want to use syntax tags here you need to use %%{...} | ||||
| ; Default: %H:%M:%S | ||||
| ;time-format = %H:%M | ||||
| 
 | ||||
| ; Available tags: | ||||
| ;   <label-charging> (default) | ||||
| ;   <bar-capacity> | ||||
| ;   <ramp-capacity> | ||||
| ;   <animation-charging> | ||||
| format-charging = <ramp-capacity> <label-charging> | ||||
| 
 | ||||
| ; Available tags: | ||||
| ;   <label-discharging> (default) | ||||
| ;   <bar-capacity> | ||||
| ;   <ramp-capacity> | ||||
| ;   <animation-discharging> | ||||
| format-discharging = <ramp-capacity> <label-discharging> | ||||
| 
 | ||||
| ; Available tags: | ||||
| ;   <label-full> (default) | ||||
| ;   <bar-capacity> | ||||
| ;   <ramp-capacity> | ||||
| format-full = <ramp-capacity> <label-full> | ||||
| 
 | ||||
| ; Available tokens: | ||||
| ;   %percentage% (default) - is set to 100 if full-at is reached | ||||
| ;   %percentage_raw% | ||||
| ;   %time% | ||||
| ;   %consumption% (shows current charge rate in watts) | ||||
| label-charging = Charging %percentage%% | %time% | %consumption% W | ||||
| 
 | ||||
| ; Available tokens: | ||||
| ;   %percentage% (default) - is set to 100 if full-at is reached | ||||
| ;   %percentage_raw% | ||||
| ;   %time% | ||||
| ;   %consumption% (shows current discharge rate in watts) | ||||
| label-discharging = %percentage%% | %time% | %consumption% W | ||||
| 
 | ||||
| ; Available tokens: | ||||
| ;   %percentage% (default) - is set to 100 if full-at is reached | ||||
| ;   %percentage_raw% | ||||
| label-full = Fully charged | ||||
| 
 | ||||
| ; Only applies if <ramp-capacity> is used | ||||
| ramp-capacity-0 =  | ||||
| ramp-capacity-1 =  | ||||
| ramp-capacity-2 =  | ||||
| ramp-capacity-3 =  | ||||
| ramp-capacity-4 =  | ||||
| 
 | ||||
| ; Only applies if <bar-capacity> is used | ||||
| bar-capacity-width = 10 | ||||
| ;bar-used-width = 15 | ||||
| ;bar-used-foreground-0 = #aaff77 | ||||
| ;bar-used-foreground-1 = #aaff77 | ||||
| ;bar-used-foreground-2 = #fba922 | ||||
| ;bar-used-foreground-3 = #ff5555 | ||||
| ;bar-used-indicator =  | ||||
| ;bar-used-indicator-font = 6 | ||||
| ;bar-used-indicator-foreground = #ff | ||||
| ;bar-used-fill =  | ||||
| ;bar-used-fill-font = 6 | ||||
| ;bar-used-empty = - | ||||
| ;bar-used-empty-font = 6 | ||||
| ;bar-used-empty-foreground = #444444 | ||||
| 
 | ||||
| ; Only applies if <animation-charging> is used | ||||
| animation-charging-0 =  | ||||
| animation-charging-1 =  | ||||
| animation-charging-2 =  | ||||
| animation-charging-3 =  | ||||
| animation-charging-4 =  | ||||
| ; Framerate in milliseconds | ||||
| animation-charging-framerate = 750 | ||||
| 
 | ||||
| ; Only applies if <animation-discharging> is used | ||||
| animation-discharging-0 =  | ||||
| animation-discharging-1 =  | ||||
| animation-discharging-2 =  | ||||
| animation-discharging-3 =  | ||||
| animation-discharging-4 =  | ||||
| ; Framerate in milliseconds | ||||
| animation-discharging-framerate = 500 | ||||
| 
 | ||||
| ;    I3 Workspace Display | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/ki3] | ||||
| type = internal/i3 | ||||
| ; Only show workspaces defined on the same output as the bar | ||||
| ; | ||||
| ; Useful if you want to show monitor specific workspaces | ||||
| ; on different bars | ||||
| ; | ||||
| ; Default: false | ||||
| pin-workspaces = true | ||||
| ; This will split the workspace name on ':' | ||||
| ; Default: false | ||||
| strip-wsnumbers = false | ||||
| ; Sort the workspaces by index instead of the default | ||||
| ; sorting that groups the workspaces by output | ||||
| ; Default: false | ||||
| index-sort = true | ||||
| ; Create click handler used to focus workspace | ||||
| ; Default: true | ||||
| enable-click = true | ||||
| ; Create scroll handlers used to cycle workspaces | ||||
| ; Default: true | ||||
| enable-scroll = true | ||||
| ; Wrap around when reaching the first/last workspace | ||||
| ; Default: true | ||||
| wrapping-scroll = true | ||||
| ; Set the scroll cycle direction | ||||
| ; Default: true | ||||
| reverse-scroll = false | ||||
| ; Use fuzzy (partial) matching on labels when assigning | ||||
| ; icons to workspaces | ||||
| ; Example: code;♚ will apply the icon to all workspaces | ||||
| ; containing 'code' in the label | ||||
| ; Default: false | ||||
| fuzzy-match = false | ||||
| ; Available tags: | ||||
| ;   <label-state> (default) - gets replaced with <label-(focused|unfocused|visible|urgent)> | ||||
| ;   <label-mode> (default) | ||||
| format = <label-state> <label-mode> | ||||
| ; Available tokens: | ||||
| ;   %mode% | ||||
| ; Default: %mode% | ||||
| label-mode = %mode% | ||||
| label-mode-padding = 2 | ||||
| label-mode-background = #e60053 | ||||
| 
 | ||||
| 
 | ||||
| ; ws-icon-[0-9]+ = label;icon | ||||
| ; NOTE: The label needs to match the name of the i3 workspace | ||||
| ws-icon-0 = 1; | ||||
| ws-icon-1 = 2; | ||||
| ws-icon-2 = 3; | ||||
| ws-icon-3 = 4; | ||||
| ws-icon-4 = 5; | ||||
| ws-icon-5 = 6; | ||||
| ws-icon-6 = 7; | ||||
| ws-icon-7 = 8; | ||||
| ws-icon-8 = 9; | ||||
| ws-icon-9 = 99; | ||||
| ws-icon-10 = 98; | ||||
| ws-icon-11 = 97; | ||||
| ws-icon-12 = 96;爵 | ||||
| ws-icon-13 = 95; | ||||
| ws-icon-14 = 94; | ||||
| ws-icon-default =  | ||||
| ; NOTE: You cannot skip icons, e.g. to get a ws-icon-6 | ||||
| ; you must also define a ws-icon-5. | ||||
| ; NOTE: Icon will be available as the %icon% token inside label-* | ||||
| ; Available tokens: | ||||
| ;   %name% | ||||
| ;   %icon% | ||||
| ;   %index% | ||||
| ;   %output% | ||||
| ; Default: %icon%  %name% | ||||
| label-focused = %icon% | ||||
| ;label-focused-foreground = #ffffff | ||||
| ;label-focused-background = #016239 | ||||
| ;label-focused-underline = #6e | ||||
| label-focused-padding = 4 | ||||
| ; Available tokens: | ||||
| ;   %name% | ||||
| ;   %icon% | ||||
| ;   %index% | ||||
| ;   %output% | ||||
| ; Default: %icon%  %name% | ||||
| label-unfocused = %icon% | ||||
| label-unfocused-padding = 4 | ||||
| label-unfocused-foreground = #3f3f3f | ||||
| ; Available tokens: | ||||
| ;   %name% | ||||
| ;   %icon% | ||||
| ;   %index% | ||||
| ;   %output% | ||||
| ; Default: %icon%  %name% | ||||
| label-visible = %icon% | ||||
| label-visible-foreground = #777777 | ||||
| ;label-visible-underline = #1f1f1f | ||||
| label-visible-padding = 4 | ||||
| ; Separator in between workspaces | ||||
| label-separator = | | ||||
| label-separator-padding = 1 | ||||
| label-separator-foreground = #ffb52a | ||||
| 
 | ||||
| ;    Volume Status | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| [module/volume] | ||||
| type = internal/alsa | ||||
| ;speaker-mixer = | ||||
| ;headphone-mixer = Headphone | ||||
| ;headphone-id = 9 | ||||
| format-volume = <ramp-volume> <label-volume> | ||||
| label-muted = muted | ||||
| label-muted-foreground = #66 | ||||
| ramp-volume-0 = 奄 | ||||
| ramp-volume-1 = 奔 | ||||
| ramp-volume-2 = 墳 | ||||
| ramp-volume-3 =  | ||||
| 
 | ||||
							
								
								
									
										21
									
								
								.config/polybar/start-polybar.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										21
									
								
								.config/polybar/start-polybar.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,21 @@ | ||||
| #!/bin/bash | ||||
| ## Author: Shaun Reed | Contact: shaunrd0@gmail.com | URL: www.shaunreed.com ## | ||||
| ##  A script placed in ~/.config/polybar/ - Uses ${env:MONITOR}              ## | ||||
| ##  Starts polybars top and bottom on multiple displays                      ## | ||||
| ############################################################################### | ||||
| # start-polybar.sh | ||||
| 
 | ||||
| # Kill any previous polybars | ||||
| killall -q polybar | ||||
| 
 | ||||
| # Wait until the processes have been shut down | ||||
| while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done | ||||
| 
 | ||||
| 
 | ||||
| # For each monitor in list up to ':' | ||||
| for m in $(polybar --list-monitors | cut -d":" -f1); do | ||||
|   # Reload polybars with monitor device name | ||||
|   MONITOR=$m polybar --reload top & | ||||
|   MONITOR=$m polybar --reload bottom & | ||||
| done | ||||
| 
 | ||||
							
								
								
									
										11
									
								
								.config/powerline-shell/config.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								.config/powerline-shell/config.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,11 @@ | ||||
| { | ||||
|   "segments": [ | ||||
|     "virtual_env", | ||||
|     "ssh", | ||||
|     "cwd", | ||||
|     "hg", | ||||
|     "jobs", | ||||
|     "root" | ||||
|   ], | ||||
|   "theme": "~/.config/powerline-shell/kapp.py" | ||||
| } | ||||
							
								
								
									
										54
									
								
								.config/powerline-shell/kapp.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								.config/powerline-shell/kapp.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,54 @@ | ||||
| from powerline_shell.themes.default import DefaultColor | ||||
| 
 | ||||
| # 0 — black   8 — gray | ||||
| # 1 — maroon  9 — red | ||||
| # 2 — green   10 — lime | ||||
| # 3 — olive   11 — yellow | ||||
| # 4 — navy    12 — blue | ||||
| # 5 — purple  13 — fuchsia | ||||
| # 6 — teal    14 — aqua | ||||
| # 7 — silver  15 — white  | ||||
| 
 | ||||
| class Color(DefaultColor): | ||||
|     """Basic theme which only uses colors in 0-15 range""" | ||||
|     USERNAME_FG = 0 # black | ||||
|     USERNAME_BG = 15 # white | ||||
|     USERNAME_ROOT_BG = 8 # gray | ||||
| 
 | ||||
|     HOSTNAME_FG = 0 # black | ||||
|     HOSTNAME_BG = 2 # green | ||||
| 
 | ||||
|     HOME_SPECIAL_DISPLAY = False | ||||
|     PATH_BG = 8  # gray | ||||
|     PATH_FG = 2  # silver | ||||
|     CWD_FG = 15  # white | ||||
|     SEPARATOR_FG = 2 | ||||
| 
 | ||||
|     READONLY_BG = 1 # maroon | ||||
|     READONLY_FG = 15 # white | ||||
| 
 | ||||
|     REPO_CLEAN_BG = 15   # green | ||||
|     REPO_CLEAN_FG = 0   # black | ||||
|     REPO_DIRTY_BG = 3   # olive | ||||
|     REPO_DIRTY_FG = 15  # white | ||||
| 
 | ||||
|     JOBS_FG = 15 # white | ||||
|     JOBS_BG = 8 # gray | ||||
| 
 | ||||
|     CMD_PASSED_BG = 2 # green | ||||
|     CMD_PASSED_FG = 0 # black | ||||
|     CMD_FAILED_BG = 11 # yellow | ||||
|     CMD_FAILED_FG = 0 # black | ||||
| 
 | ||||
|     SVN_CHANGES_BG = REPO_DIRTY_BG | ||||
|     SVN_CHANGES_FG = REPO_DIRTY_FG | ||||
| 
 | ||||
|     VIRTUAL_ENV_BG = 2 # green  | ||||
|     VIRTUAL_ENV_FG = 0 # black | ||||
| 
 | ||||
|     AWS_PROFILE_FG = 14 # aqua | ||||
|     AWS_PROFILE_BG = 8 # gray | ||||
| 
 | ||||
|     TIME_FG = 8 # gray | ||||
|     TIME_BG = 7 # silver | ||||
| 
 | ||||
							
								
								
									
										1
									
								
								.config/powerline-shell/powerline-shell
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
								
									
									
								
							
						
						
									
										1
									
								
								.config/powerline-shell/powerline-shell
									
									
									
									
									
										Submodule
									
								
							| @ -0,0 +1 @@ | ||||
| Subproject commit a9b8c9bb39dbfb7ec3c639e497b5a76fa6dcb8cc | ||||
| @ -243,9 +243,8 @@ class cd(Command): | ||||
| 
 | ||||
|         paths = self._tab_fuzzy_match(basepath, tokens) | ||||
|         if not os.path.isabs(dest): | ||||
|             paths_rel = self.fm.thisdir.path | ||||
|             paths = [os.path.relpath(os.path.join(basepath, path), paths_rel) | ||||
|                      for path in paths] | ||||
|             paths_rel = basepath | ||||
|             paths = [os.path.relpath(path, paths_rel) for path in paths] | ||||
|         else: | ||||
|             paths_rel = '' | ||||
|         return paths, paths_rel | ||||
| @ -275,7 +274,7 @@ class cd(Command): | ||||
|             return None | ||||
|         if len(paths) == 1: | ||||
|             return start + paths[0] + sep | ||||
|         return [start + dirname + sep for dirname in paths] | ||||
|         return [start + dirname for dirname in paths] | ||||
| 
 | ||||
| 
 | ||||
| class chain(Command): | ||||
| @ -283,7 +282,6 @@ class chain(Command): | ||||
| 
 | ||||
|     Calls multiple commands at once, separated by semicolons. | ||||
|     """ | ||||
|     resolve_macros = False | ||||
| 
 | ||||
|     def execute(self): | ||||
|         if not self.rest(1).strip(): | ||||
| @ -574,7 +572,7 @@ class default_linemode(Command): | ||||
| class quit(Command):  # pylint: disable=redefined-builtin | ||||
|     """:quit | ||||
| 
 | ||||
|     Closes the current tab, if there's more than one tab. | ||||
|     Closes the current tab, if there's only one tab. | ||||
|     Otherwise quits if there are no tasks in progress. | ||||
|     """ | ||||
|     def _exit_no_work(self): | ||||
| @ -593,7 +591,7 @@ class quit(Command):  # pylint: disable=redefined-builtin | ||||
| class quit_bang(Command): | ||||
|     """:quit! | ||||
| 
 | ||||
|     Closes the current tab, if there's more than one tab. | ||||
|     Closes the current tab, if there's only one tab. | ||||
|     Otherwise force quits immediately. | ||||
|     """ | ||||
|     name = 'quit!' | ||||
| @ -701,64 +699,6 @@ class delete(Command): | ||||
|             self.fm.delete(files) | ||||
| 
 | ||||
| 
 | ||||
| class trash(Command): | ||||
|     """:trash | ||||
| 
 | ||||
|     Tries to move the selection or the files passed in arguments (if any) to | ||||
|     the trash, using rifle rules with label "trash". | ||||
|     The arguments use a shell-like escaping. | ||||
| 
 | ||||
|     "Selection" is defined as all the "marked files" (by default, you | ||||
|     can mark files with space or v). If there are no marked files, | ||||
|     use the "current file" (where the cursor is) | ||||
| 
 | ||||
|     When attempting to trash non-empty directories or multiple | ||||
|     marked files, it will require a confirmation. | ||||
|     """ | ||||
| 
 | ||||
|     allow_abbrev = False | ||||
|     escape_macros_for_shell = True | ||||
| 
 | ||||
|     def execute(self): | ||||
|         import shlex | ||||
|         from functools import partial | ||||
| 
 | ||||
|         def is_directory_with_files(path): | ||||
|             return os.path.isdir(path) and not os.path.islink(path) and len(os.listdir(path)) > 0 | ||||
| 
 | ||||
|         if self.rest(1): | ||||
|             files = shlex.split(self.rest(1)) | ||||
|             many_files = (len(files) > 1 or is_directory_with_files(files[0])) | ||||
|         else: | ||||
|             cwd = self.fm.thisdir | ||||
|             tfile = self.fm.thisfile | ||||
|             if not cwd or not tfile: | ||||
|                 self.fm.notify("Error: no file selected for deletion!", bad=True) | ||||
|                 return | ||||
| 
 | ||||
|             # relative_path used for a user-friendly output in the confirmation. | ||||
|             files = [f.relative_path for f in self.fm.thistab.get_selection()] | ||||
|             many_files = (cwd.marked_items or is_directory_with_files(tfile.path)) | ||||
| 
 | ||||
|         confirm = self.fm.settings.confirm_on_delete | ||||
|         if confirm != 'never' and (confirm != 'multiple' or many_files): | ||||
|             self.fm.ui.console.ask( | ||||
|                 "Confirm deletion of: %s (y/N)" % ', '.join(files), | ||||
|                 partial(self._question_callback, files), | ||||
|                 ('n', 'N', 'y', 'Y'), | ||||
|             ) | ||||
|         else: | ||||
|             # no need for a confirmation, just delete | ||||
|             self.fm.execute_file(files, label='trash') | ||||
| 
 | ||||
|     def tab(self, tabnum): | ||||
|         return self._tab_directory_content() | ||||
| 
 | ||||
|     def _question_callback(self, files, answer): | ||||
|         if answer == 'y' or answer == 'Y': | ||||
|             self.fm.execute_file(files, label='trash') | ||||
| 
 | ||||
| 
 | ||||
| class jump_non(Command): | ||||
|     """:jump_non [-FLAGS...] | ||||
| 
 | ||||
| @ -1056,7 +996,7 @@ class rename_append(Command): | ||||
|         relpath = tfile.relative_path.replace(MACRO_DELIMITER, MACRO_DELIMITER_ESC) | ||||
|         basename = tfile.basename.replace(MACRO_DELIMITER, MACRO_DELIMITER_ESC) | ||||
| 
 | ||||
|         if basename.find('.') <= 0 or os.path.isdir(relpath): | ||||
|         if basename.find('.') <= 0: | ||||
|             self.fm.open_console('rename ' + relpath) | ||||
|             return | ||||
| 
 | ||||
| @ -1088,9 +1028,8 @@ class chmod(Command): | ||||
|     def execute(self): | ||||
|         mode_str = self.rest(1) | ||||
|         if not mode_str: | ||||
|             if self.quantifier is None: | ||||
|                 self.fm.notify("Syntax: chmod <octal number> " | ||||
|                                "or specify a quantifier", bad=True) | ||||
|             if not self.quantifier: | ||||
|                 self.fm.notify("Syntax: chmod <octal number>", bad=True) | ||||
|                 return | ||||
|             mode_str = str(self.quantifier) | ||||
| 
 | ||||
| @ -1124,8 +1063,7 @@ class bulkrename(Command): | ||||
|     After you close it, it will be executed. | ||||
|     """ | ||||
| 
 | ||||
|     def execute(self): | ||||
|         # pylint: disable=too-many-locals,too-many-statements,too-many-branches | ||||
|     def execute(self):  # pylint: disable=too-many-locals,too-many-statements | ||||
|         import sys | ||||
|         import tempfile | ||||
|         from ranger.container.file import File | ||||
| @ -1134,57 +1072,46 @@ class bulkrename(Command): | ||||
| 
 | ||||
|         # Create and edit the file list | ||||
|         filenames = [f.relative_path for f in self.fm.thistab.get_selection()] | ||||
|         with tempfile.NamedTemporaryFile(delete=False) as listfile: | ||||
|             listpath = listfile.name | ||||
|             if py3: | ||||
|                 listfile.write("\n".join(filenames).encode( | ||||
|                     encoding="utf-8", errors="surrogateescape")) | ||||
|             else: | ||||
|                 listfile.write("\n".join(filenames)) | ||||
|         listfile = tempfile.NamedTemporaryFile(delete=False) | ||||
|         listpath = listfile.name | ||||
| 
 | ||||
|         if py3: | ||||
|             listfile.write("\n".join(filenames).encode("utf-8")) | ||||
|         else: | ||||
|             listfile.write("\n".join(filenames)) | ||||
|         listfile.close() | ||||
|         self.fm.execute_file([File(listpath)], app='editor') | ||||
|         with (open(listpath, 'r', encoding="utf-8", errors="surrogateescape") if | ||||
|               py3 else open(listpath, 'r')) as listfile: | ||||
|             new_filenames = listfile.read().split("\n") | ||||
|         listfile = open(listpath, 'r') | ||||
|         new_filenames = listfile.read().split("\n") | ||||
|         listfile.close() | ||||
|         os.unlink(listpath) | ||||
|         if all(a == b for a, b in zip(filenames, new_filenames)): | ||||
|             self.fm.notify("No renaming to be done!") | ||||
|             return | ||||
| 
 | ||||
|         # Generate script | ||||
|         with tempfile.NamedTemporaryFile() as cmdfile: | ||||
|             script_lines = [] | ||||
|             script_lines.append("# This file will be executed when you close" | ||||
|                                 " the editor.") | ||||
|             script_lines.append("# Please double-check everything, clear the" | ||||
|                                 " file to abort.") | ||||
|             new_dirs = [] | ||||
|             for old, new in zip(filenames, new_filenames): | ||||
|                 if old != new: | ||||
|                     basepath, _ = os.path.split(new) | ||||
|                     if (basepath and basepath not in new_dirs | ||||
|                             and not os.path.isdir(basepath)): | ||||
|                         script_lines.append("mkdir -vp -- {dir}".format( | ||||
|                             dir=esc(basepath))) | ||||
|                         new_dirs.append(basepath) | ||||
|                     script_lines.append("mv -vi -- {old} {new}".format( | ||||
|                         old=esc(old), new=esc(new))) | ||||
|             # Make sure not to forget the ending newline | ||||
|             script_content = "\n".join(script_lines) + "\n" | ||||
|             if py3: | ||||
|                 cmdfile.write(script_content.encode(encoding="utf-8", | ||||
|                                                     errors="surrogateescape")) | ||||
|             else: | ||||
|                 cmdfile.write(script_content) | ||||
|             cmdfile.flush() | ||||
|         cmdfile = tempfile.NamedTemporaryFile() | ||||
|         script_lines = [] | ||||
|         script_lines.append("# This file will be executed when you close the editor.\n") | ||||
|         script_lines.append("# Please double-check everything, clear the file to abort.\n") | ||||
|         script_lines.extend("mv -vi -- %s %s\n" % (esc(old), esc(new)) | ||||
|                             for old, new in zip(filenames, new_filenames) if old != new) | ||||
|         script_content = "".join(script_lines) | ||||
|         if py3: | ||||
|             cmdfile.write(script_content.encode("utf-8")) | ||||
|         else: | ||||
|             cmdfile.write(script_content) | ||||
|         cmdfile.flush() | ||||
| 
 | ||||
|             # Open the script and let the user review it, then check if the | ||||
|             # script was modified by the user | ||||
|             self.fm.execute_file([File(cmdfile.name)], app='editor') | ||||
|             cmdfile.seek(0) | ||||
|             script_was_edited = (script_content != cmdfile.read()) | ||||
|         # Open the script and let the user review it, then check if the script | ||||
|         # was modified by the user | ||||
|         self.fm.execute_file([File(cmdfile.name)], app='editor') | ||||
|         cmdfile.seek(0) | ||||
|         script_was_edited = (script_content != cmdfile.read()) | ||||
| 
 | ||||
|             # Do the renaming | ||||
|             self.fm.run(['/bin/sh', cmdfile.name], flags='w') | ||||
|         # Do the renaming | ||||
|         self.fm.run(['/bin/sh', cmdfile.name], flags='w') | ||||
|         cmdfile.close() | ||||
| 
 | ||||
|         # Retag the files, but only if the script wasn't changed during review, | ||||
|         # because only then we know which are the source and destination files. | ||||
| @ -1303,7 +1230,7 @@ class copycmap(copymap): | ||||
| 
 | ||||
| 
 | ||||
| class copytmap(copymap): | ||||
|     """:copytmap <keys> <newkeys1> [<newkeys2>...] | ||||
|     """:copycmap <keys> <newkeys1> [<newkeys2>...] | ||||
| 
 | ||||
|     Copies a "taskview" keybinding from <keys> to <newkeys> | ||||
|     """ | ||||
| @ -1322,69 +1249,30 @@ class unmap(Command): | ||||
|             self.fm.ui.keymaps.unbind(self.context, arg) | ||||
| 
 | ||||
| 
 | ||||
| class uncmap(unmap): | ||||
|     """:uncmap <keys> [<keys2>, ...] | ||||
| 
 | ||||
|     Remove the given "console" mappings | ||||
|     """ | ||||
|     context = 'console' | ||||
| 
 | ||||
| 
 | ||||
| class cunmap(uncmap): | ||||
| class cunmap(unmap): | ||||
|     """:cunmap <keys> [<keys2>, ...] | ||||
| 
 | ||||
|     Remove the given "console" mappings | ||||
| 
 | ||||
|     DEPRECATED in favor of uncmap. | ||||
|     """ | ||||
| 
 | ||||
|     def execute(self): | ||||
|         self.fm.notify("cunmap is deprecated in favor of uncmap!") | ||||
|         super(cunmap, self).execute() | ||||
|     context = 'browser' | ||||
| 
 | ||||
| 
 | ||||
| class unpmap(unmap): | ||||
|     """:unpmap <keys> [<keys2>, ...] | ||||
| class punmap(unmap): | ||||
|     """:punmap <keys> [<keys2>, ...] | ||||
| 
 | ||||
|     Remove the given "pager" mappings | ||||
|     """ | ||||
|     context = 'pager' | ||||
| 
 | ||||
| 
 | ||||
| class punmap(unpmap): | ||||
|     """:punmap <keys> [<keys2>, ...] | ||||
| 
 | ||||
|     Remove the given "pager" mappings | ||||
| 
 | ||||
|     DEPRECATED in favor of unpmap. | ||||
|     """ | ||||
| 
 | ||||
|     def execute(self): | ||||
|         self.fm.notify("punmap is deprecated in favor of unpmap!") | ||||
|         super(punmap, self).execute() | ||||
| 
 | ||||
| 
 | ||||
| class untmap(unmap): | ||||
|     """:untmap <keys> [<keys2>, ...] | ||||
| class tunmap(unmap): | ||||
|     """:tunmap <keys> [<keys2>, ...] | ||||
| 
 | ||||
|     Remove the given "taskview" mappings | ||||
|     """ | ||||
|     context = 'taskview' | ||||
| 
 | ||||
| 
 | ||||
| class tunmap(untmap): | ||||
|     """:tunmap <keys> [<keys2>, ...] | ||||
| 
 | ||||
|     Remove the given "taskview" mappings | ||||
| 
 | ||||
|     DEPRECATED in favor of untmap. | ||||
|     """ | ||||
| 
 | ||||
|     def execute(self): | ||||
|         self.fm.notify("tunmap is deprecated in favor of untmap!") | ||||
|         super(tunmap, self).execute() | ||||
| 
 | ||||
| 
 | ||||
| class map_(Command): | ||||
|     """:map <keysequence> <command> | ||||
| 
 | ||||
| @ -1691,7 +1579,7 @@ class filter_stack(Command): | ||||
|         elif subcommand == "clear": | ||||
|             self.fm.thisdir.filter_stack = [] | ||||
|         elif subcommand == "rotate": | ||||
|             rotate_by = int(self.arg(2) or self.quantifier or 1) | ||||
|             rotate_by = int(self.arg(2) or 1) | ||||
|             self.fm.thisdir.filter_stack = ( | ||||
|                 self.fm.thisdir.filter_stack[-rotate_by:] | ||||
|                 + self.fm.thisdir.filter_stack[:-rotate_by] | ||||
| @ -1751,17 +1639,6 @@ class flat(Command): | ||||
|         self.fm.thisdir.flat = level | ||||
|         self.fm.thisdir.load_content() | ||||
| 
 | ||||
| 
 | ||||
| class reset_previews(Command): | ||||
|     """:reset_previews | ||||
| 
 | ||||
|     Reset the file previews. | ||||
|     """ | ||||
|     def execute(self): | ||||
|         self.fm.previews = {} | ||||
|         self.fm.ui.need_redraw = True | ||||
| 
 | ||||
| 
 | ||||
| # Version control commands | ||||
| # -------------------------------- | ||||
| 
 | ||||
| @ -1925,14 +1802,11 @@ class yank(Command): | ||||
|                     ['xsel'], | ||||
|                     ['xsel', '-b'], | ||||
|                 ], | ||||
|                 'wl-copy': [ | ||||
|                     ['wl-copy'], | ||||
|                 ], | ||||
|                 'pbcopy': [ | ||||
|                     ['pbcopy'], | ||||
|                 ], | ||||
|             } | ||||
|             ordered_managers = ['pbcopy', 'wl-copy', 'xclip', 'xsel'] | ||||
|             ordered_managers = ['pbcopy', 'xclip', 'xsel'] | ||||
|             executables = get_executables() | ||||
|             for manager in ordered_managers: | ||||
|                 if manager in executables: | ||||
| @ -1960,34 +1834,3 @@ class yank(Command): | ||||
|             in sorted(self.modes.keys()) | ||||
|             if mode | ||||
|         ) | ||||
| 
 | ||||
| 
 | ||||
| class paste_ext(Command): | ||||
|     """ | ||||
|     :paste_ext | ||||
| 
 | ||||
|     Like paste but tries to rename conflicting files so that the | ||||
|     file extension stays intact (e.g. file_.ext). | ||||
|     """ | ||||
| 
 | ||||
|     @staticmethod | ||||
|     def make_safe_path(dst): | ||||
|         if not os.path.exists(dst): | ||||
|             return dst | ||||
| 
 | ||||
|         dst_name, dst_ext = os.path.splitext(dst) | ||||
| 
 | ||||
|         if not dst_name.endswith("_"): | ||||
|             dst_name += "_" | ||||
|             if not os.path.exists(dst_name + dst_ext): | ||||
|                 return dst_name + dst_ext | ||||
|         n = 0 | ||||
|         test_dst = dst_name + str(n) | ||||
|         while os.path.exists(test_dst + dst_ext): | ||||
|             n += 1 | ||||
|             test_dst = dst_name + str(n) | ||||
| 
 | ||||
|         return test_dst + dst_ext | ||||
| 
 | ||||
|     def execute(self): | ||||
|         return self.fm.paste(make_safe_path=paste_ext.make_safe_path) | ||||
|  | ||||
							
								
								
									
										322
									
								
								.config/ranger/plugins/devicons.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										322
									
								
								.config/ranger/plugins/devicons.py
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,322 @@ | ||||
| #!/usr/bin/python | ||||
| # coding=UTF-8 | ||||
| # These glyphs, and the mapping of file extensions to glyphs | ||||
| # has been copied from the vimscript code that is present in | ||||
| # https://github.com/ryanoasis/vim-devicons | ||||
| import re; | ||||
| import os; | ||||
| 
 | ||||
| # all those glyphs will show as weird squares if you don't have the correct patched font | ||||
| # My advice is to use NerdFonts which can be found here: | ||||
| # https://github.com/ryanoasis/nerd-fonts | ||||
| file_node_extensions = { | ||||
|     '7z'       : '', | ||||
|     'a'        : '', | ||||
|     'ai'       : '', | ||||
|     'apk'      : '', | ||||
|     'asm'      : '', | ||||
|     'asp'      : '', | ||||
|     'aup'      : '', | ||||
|     'avi'      : '', | ||||
|     'bat'      : '', | ||||
|     'bmp'      : '', | ||||
|     'bz2'      : '', | ||||
|     'c'        : '', | ||||
|     'c++'      : '', | ||||
|     'cab'      : '', | ||||
|     'cbr'      : '', | ||||
|     'cbz'      : '', | ||||
|     'cc'       : '', | ||||
|     'class'    : '', | ||||
|     'clj'      : '', | ||||
|     'cljc'     : '', | ||||
|     'cljs'     : '', | ||||
|     'cmake'    : '', | ||||
|     'coffee'   : '', | ||||
|     'conf'     : '', | ||||
|     'cp'       : '', | ||||
|     'cpio'     : '', | ||||
|     'cpp'      : '', | ||||
|     'cs'       : '', | ||||
|     'css'      : '', | ||||
|     'cue'      : '', | ||||
|     'cvs'      : '', | ||||
|     'cxx'      : '', | ||||
|     'd'        : '', | ||||
|     'dart'     : '', | ||||
|     'db'       : '', | ||||
|     'deb'      : '', | ||||
|     'diff'     : '', | ||||
|     'dll'      : '', | ||||
|     'doc'      : '', | ||||
|     'docx'     : '', | ||||
|     'dump'     : '', | ||||
|     'edn'      : '', | ||||
|     'efi'      : '', | ||||
|     'ejs'      : '', | ||||
|     'elf'      : '', | ||||
|     'elm'      : '', | ||||
|     'epub'     : '', | ||||
|     'erl'      : '', | ||||
|     'ex'       : '', | ||||
|     'exe'      : '', | ||||
|     'exs'      : '', | ||||
|     'eex'      : '', | ||||
|     'f#'       : '', | ||||
|     'fifo'     : '|', | ||||
|     'fish'     : '', | ||||
|     'flac'     : '', | ||||
|     'flv'      : '', | ||||
|     'fs'       : '', | ||||
|     'fsi'      : '', | ||||
|     'fsscript' : '', | ||||
|     'fsx'      : '', | ||||
|     'gem'      : '', | ||||
|     'gif'      : '', | ||||
|     'go'       : '', | ||||
|     'gz'       : '', | ||||
|     'gzip'     : '', | ||||
|     'h'        : '', | ||||
|     'hbs'      : '', | ||||
|     'hrl'      : '', | ||||
|     'hs'       : '', | ||||
|     'htaccess' : '', | ||||
|     'htpasswd' : '', | ||||
|     'htm'      : '', | ||||
|     'html'     : '', | ||||
|     'ico'      : '', | ||||
|     'img'      : '', | ||||
|     'ini'      : '', | ||||
|     'iso'      : '', | ||||
|     'jar'      : '', | ||||
|     'java'     : '', | ||||
|     'jl'       : '', | ||||
|     'jpeg'     : '', | ||||
|     'jpg'      : '', | ||||
|     'js'       : '', | ||||
|     'json'     : '', | ||||
|     'jsx'      : '', | ||||
|     'key'      : '', | ||||
|     'less'     : '', | ||||
|     'lha'      : '', | ||||
|     'lhs'      : '', | ||||
|     'log'      : '', | ||||
|     'lua'      : '', | ||||
|     'lzh'      : '', | ||||
|     'lzma'     : '', | ||||
|     'm4a'      : '', | ||||
|     'm4v'      : '', | ||||
|     'markdown' : '', | ||||
|     'md'       : '', | ||||
|     'mkv'      : '', | ||||
|     'ml'       : 'λ', | ||||
|     'mli'      : 'λ', | ||||
|     'mov'      : '', | ||||
|     'mp3'      : '', | ||||
|     'mp4'      : '', | ||||
|     'mpeg'     : '', | ||||
|     'mpg'      : '', | ||||
|     'msi'      : '', | ||||
|     'mustache' : '', | ||||
|     'o'        : '', | ||||
|     'ogg'      : '', | ||||
|     'pdf'      : '', | ||||
|     'php'      : '', | ||||
|     'pl'       : '', | ||||
|     'pm'       : '', | ||||
|     'png'      : '', | ||||
|     'pub'      : '', | ||||
|     'ppt'      : '', | ||||
|     'pptx'     : '', | ||||
|     'psb'      : '', | ||||
|     'psd'      : '', | ||||
|     'py'       : '', | ||||
|     'pyc'      : '', | ||||
|     'pyd'      : '', | ||||
|     'pyo'      : '', | ||||
|     'rar'      : '', | ||||
|     'rb'       : '', | ||||
|     'rc'       : '', | ||||
|     'rlib'     : '', | ||||
|     'rom'      : '', | ||||
|     'rpm'      : '', | ||||
|     'rs'       : '', | ||||
|     'rss'      : '', | ||||
|     'rtf'      : '', | ||||
|     's'        : '', | ||||
|     'so'       : '', | ||||
|     'scala'    : '', | ||||
|     'scss'     : '', | ||||
|     'sh'       : '', | ||||
|     'slim'     : '', | ||||
|     'sln'      : '', | ||||
|     'sql'      : '', | ||||
|     'styl'     : '', | ||||
|     'suo'      : '', | ||||
|     't'        : '', | ||||
|     'tar'      : '', | ||||
|     'tgz'      : '', | ||||
|     'ts'       : '', | ||||
|     'twig'     : '', | ||||
|     'vim'      : '', | ||||
|     'vimrc'    : '', | ||||
|     'wav'      : '', | ||||
|     'webm'     : '', | ||||
|     'xbps'     : '', | ||||
|     'xhtml'    : '', | ||||
|     'xls'      : '', | ||||
|     'xlsx'     : '', | ||||
|     'xml'      : '', | ||||
|     'xul'      : '', | ||||
|     'xz'       : '', | ||||
|     'yaml'     : '', | ||||
|     'yml'      : '', | ||||
|     'zip'      : '', | ||||
| } | ||||
| 
 | ||||
| dir_node_exact_matches = { | ||||
| # English | ||||
|     '.git'                             : '', | ||||
|     'Desktop'                          : '', | ||||
|     'Documents'                        : '', | ||||
|     'Downloads'                        : '', | ||||
|     'Dotfiles'                         : '', | ||||
|     'Dropbox'                          : '', | ||||
|     'Music'                            : '', | ||||
|     'Pictures'                         : '', | ||||
|     'Public'                           : '', | ||||
|     'Templates'                        : '', | ||||
|     'Videos'                           : '', | ||||
| # Spanish | ||||
|     'Escritorio'                       : '', | ||||
|     'Documentos'                       : '', | ||||
|     'Descargas'                        : '', | ||||
|     'Música'                           : '', | ||||
|     'Imágenes'                         : '', | ||||
|     'Público'                          : '', | ||||
|     'Plantillas'                       : '', | ||||
|     'Vídeos'                           : '', | ||||
| # French | ||||
|     'Bureau'                           : '', | ||||
|     'Documents'                        : '', | ||||
|     'Images'                           : '', | ||||
|     'Musique'                          : '', | ||||
|     'Publique'                         : '', | ||||
|     'Téléchargements'                  : '', | ||||
|     'Vidéos'                           : '', | ||||
| # Portuguese | ||||
|     'Documentos'                       : '', | ||||
|     'Imagens'                          : '', | ||||
|     'Modelos'                          : '', | ||||
|     'Música'                           : '', | ||||
|     'Público'                          : '', | ||||
|     'Vídeos'                           : '', | ||||
|     'Área de trabalho'                 : '', | ||||
| # Italian | ||||
|     'Documenti'                        : '', | ||||
|     'Immagini'                         : '', | ||||
|     'Modelli'                          : '', | ||||
|     'Musica'                           : '', | ||||
|     'Pubblici'                         : '', | ||||
|     'Scaricati'                        : '', | ||||
|     'Scrivania'                        : '', | ||||
|     'Video'                            : '', | ||||
| # German | ||||
|     'Bilder'                           : '', | ||||
|     'Dokumente'                        : '', | ||||
|     'Musik'                            : '', | ||||
|     'Schreibtisch'                     : '', | ||||
|     'Vorlagen'                         : '', | ||||
|     'Öffentlich'                       : '', | ||||
| # Hungarian | ||||
|     'Dokumentumok'                     : '', | ||||
|     'Képek'                            : '', | ||||
|     'Modelli'                          : '', | ||||
|     'Zene'                             : '', | ||||
|     'Letöltések'                       : '', | ||||
|     'Számítógép'                       : '', | ||||
|     'Videók'                           : '', | ||||
| } | ||||
| 
 | ||||
| file_node_exact_matches = { | ||||
|     '.Xauthority'                      : '', | ||||
|     '.Xdefaults'                       : '', | ||||
|     '.Xresources'                      : '', | ||||
|     '.bash_aliases'                    : '', | ||||
|     '.bashprofile'                     : '', | ||||
|     '.bash_profile'                    : '', | ||||
|     '.bash_logout'                     : '', | ||||
|     '.bash_history'                    : '', | ||||
|     '.bashrc'                          : '', | ||||
|     '.dmrc'                            : '', | ||||
|     '.DS_Store'                        : '', | ||||
|     '.fasd'                            : '', | ||||
|     '.fehbg'                           : '', | ||||
|     '.gitconfig'                       : '', | ||||
|     '.gitattributes'                   : '', | ||||
|     '.gitignore'                       : '', | ||||
|     '.inputrc'                         : '', | ||||
|     '.jack-settings'                   : '', | ||||
|     '.mime.types'                      : '', | ||||
|     '.nvidia-settings-rc'              : '', | ||||
|     '.pam_environment'                 : '', | ||||
|     '.profile'                         : '', | ||||
|     '.recently-used'                   : '', | ||||
|     '.selected_editor'                 : '', | ||||
|     '.vim'                             : '', | ||||
|     '.vimrc'                           : '', | ||||
|     '.viminfo'                         : '', | ||||
|     '.xinitrc'                         : '', | ||||
|     '.xinputrc'                        : '', | ||||
|     'config'                           : '', | ||||
|     'Dockerfile'                       : '', | ||||
|     'docker-compose.yml'               : '', | ||||
|     'dropbox'                          : '', | ||||
|     'exact-match-case-sensitive-1.txt' : 'X1', | ||||
|     'exact-match-case-sensitive-2'     : 'X2', | ||||
|     'favicon.ico'                      : '', | ||||
|     'a.out'                            : '', | ||||
|     'bspwmrc'                          : '', | ||||
|     'sxhkdrc'                          : '', | ||||
|     'Makefile'                         : '', | ||||
|     'Makefile.in'                      : '', | ||||
|     'Makefile.ac'                      : '', | ||||
|     'config.mk'                        : '', | ||||
|     'config.m4'                        : '', | ||||
|     'config.ac'                        : '', | ||||
|     'configure'                        : '', | ||||
|     'Rakefile'                         : '', | ||||
|     'gruntfile.coffee'                 : '', | ||||
|     'gruntfile.js'                     : '', | ||||
|     'gruntfile.ls'                     : '', | ||||
|     'gulpfile.coffee'                  : '', | ||||
|     'gulpfile.js'                      : '', | ||||
|     'gulpfile.ls'                      : '', | ||||
|     'ini'                              : '', | ||||
|     'ledger'                           : '', | ||||
|     'package.json'                     : '', | ||||
|     'package-lock.json'                : '', | ||||
|     '.ncmpcpp'                         : '', | ||||
|     'playlists'                        : '', | ||||
|     'known_hosts'                      : '', | ||||
|     'authorized_keys'                  : '', | ||||
|     'license'                          : '', | ||||
|     'LICENSE.md'                       : '', | ||||
|     'LICENSE'                          : '', | ||||
|     'LICENSE.txt'                      : '', | ||||
|     'mimeapps.list'                    : '', | ||||
|     'node_modules'                     : '', | ||||
|     'procfile'                         : '', | ||||
|     'react.jsx'                        : '', | ||||
|     'README.rst'                       : '', | ||||
|     'README.md'                        : '', | ||||
|     'README.markdown'                  : '', | ||||
|     'README'                           : '', | ||||
|     'README.txt'                       : '', | ||||
|     'user-dirs.dirs'                   : '', | ||||
|     'webpack.config.js'                : '', | ||||
| } | ||||
| 
 | ||||
| def devicon(file): | ||||
|   if file.is_directory: return dir_node_exact_matches.get(file.relative_path, '') | ||||
|   return file_node_exact_matches.get(os.path.basename(file.relative_path), file_node_extensions.get(file.extension, '')) | ||||
							
								
								
									
										19
									
								
								.config/ranger/plugins/devicons_linemode.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										19
									
								
								.config/ranger/plugins/devicons_linemode.py
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,19 @@ | ||||
| import ranger.api | ||||
| from ranger.core.linemode import LinemodeBase | ||||
| from .devicons import * | ||||
| 
 | ||||
| @ranger.api.register_linemode | ||||
| class DevIconsLinemode(LinemodeBase): | ||||
|   name = "devicons" | ||||
| 
 | ||||
|   uses_metadata = False | ||||
| 
 | ||||
|   def filetitle(self, file, metadata): | ||||
|     return devicon(file) + ' ' + file.relative_path | ||||
| 
 | ||||
| @ranger.api.register_linemode | ||||
| class DevIconsLinemodeFile(LinemodeBase): | ||||
|   name = "filename" | ||||
| 
 | ||||
|   def filetitle(self, file, metadata): | ||||
|     return devicon(file) + ' ' + file.relative_path | ||||
| @ -1,10 +1,3 @@ | ||||
| # | ||||
| # Please note that configuration files may change as ranger evolves. | ||||
| # It's completely up to you to keep them up to date. | ||||
| # | ||||
| # To stop ranger from loading both the default and your custom rc.conf, | ||||
| # please set the environment variable RANGER_LOAD_DEFAULT_RC to FALSE. | ||||
| # | ||||
| # =================================================================== | ||||
| # This file contains the default startup commands for ranger. | ||||
| # To change them, it is recommended to create either /etc/ranger/rc.conf | ||||
| @ -41,7 +34,7 @@ set column_ratios 1,3,4 | ||||
| set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$ | ||||
| 
 | ||||
| # Show hidden files? You can toggle this by typing 'zh' | ||||
| set show_hidden false | ||||
| set show_hidden true | ||||
| 
 | ||||
| # Ask for a confirmation when running the "delete" command? | ||||
| # Valid values are "always", "never", "multiple" (default) | ||||
| @ -78,7 +71,7 @@ set vcs_backend_svn disabled | ||||
| set vcs_msg_length 50 | ||||
| 
 | ||||
| # Use one of the supported image preview protocols | ||||
| set preview_images false | ||||
| set preview_images true | ||||
| 
 | ||||
| # Set the preview image method. Supported methods: | ||||
| # | ||||
| @ -121,7 +114,7 @@ set preview_images false | ||||
| #   Preview images in full color with the external command "ueberzug". | ||||
| #   Images are shown by using a child window. | ||||
| #   Only for users who run X11 in GNU/Linux. | ||||
| set preview_images_method w3m | ||||
| set preview_images_method ueberzug | ||||
| 
 | ||||
| # Delay in seconds before displaying an image with the w3m method. | ||||
| # Increase it in case of experiencing display corruption. | ||||
| @ -287,14 +280,14 @@ set clear_filters_on_dir_change false | ||||
| 
 | ||||
| # Disable displaying line numbers in main column. | ||||
| # Possible values: false, absolute, relative. | ||||
| set line_numbers false | ||||
| set line_numbers absolute | ||||
| 
 | ||||
| # When line_numbers=relative show the absolute line number in the | ||||
| # current line. | ||||
| set relative_current_zero false | ||||
| 
 | ||||
| # Start line numbers from 1 instead of 0 | ||||
| set one_indexed false | ||||
| set one_indexed true | ||||
| 
 | ||||
| # Save tabs on exit | ||||
| set save_tabs_on_exit false | ||||
| @ -460,6 +453,7 @@ map gu cd /usr | ||||
| map gd cd /dev | ||||
| map gl cd -r . | ||||
| map gL cd -r %f | ||||
| map gc cd ~/.config | ||||
| map go cd /opt | ||||
| map gv cd /var | ||||
| map gm cd /media | ||||
| @ -547,7 +541,7 @@ map <A-Left>  tab_move -1 | ||||
| map gt        tab_move 1 | ||||
| map gT        tab_move -1 | ||||
| map gn        tab_new | ||||
| map gc        tab_close | ||||
| map gC        tab_close | ||||
| map uq        tab_restore | ||||
| map <a-1>     tab_open 1 | ||||
| map <a-2>     tab_open 2 | ||||
| @ -764,6 +758,3 @@ tmap <delete>   eval -q fm.ui.taskview.task_remove() | ||||
| tmap <C-l> redraw_window | ||||
| tmap <ESC> taskview_close | ||||
| copytmap <ESC> q Q w <C-c> | ||||
| 
 | ||||
| default_linemode devicons | ||||
| 
 | ||||
|  | ||||
| @ -26,7 +26,7 @@ | ||||
| #   directory      | $1 is a directory | ||||
| #   number <n>     | change the number of this command to n | ||||
| #   terminal       | stdin, stderr and stdout are connected to a terminal | ||||
| #   X              | A graphical environment is available (darwin, Xorg, or Wayland) | ||||
| #   X              | $DISPLAY is not empty (i.e. Xorg runs) | ||||
| # | ||||
| # There are also pseudo-conditions which have a "side effect": | ||||
| #   flag <flags>  | Change how the program is run. See below. | ||||
| @ -66,13 +66,13 @@ ext x?html?, has uzbl-tabbed,      X, flag f = uzbl-tabbed -- "$@" | ||||
| ext x?html?, has uzbl-browser,     X, flag f = uzbl-browser -- "$@" | ||||
| ext x?html?, has uzbl-core,        X, flag f = uzbl-core -- "$@" | ||||
| ext x?html?, has midori,           X, flag f = midori -- "$@" | ||||
| ext x?html?, has chromium-browser, X, flag f = chromium-browser -- "$@" | ||||
| ext x?html?, has chromium,         X, flag f = chromium -- "$@" | ||||
| ext x?html?, has google-chrome,    X, flag f = google-chrome -- "$@" | ||||
| ext x?html?, has opera,            X, flag f = opera -- "$@" | ||||
| ext x?html?, has firefox,          X, flag f = firefox -- "$@" | ||||
| ext x?html?, has seamonkey,        X, flag f = seamonkey -- "$@" | ||||
| ext x?html?, has iceweasel,        X, flag f = iceweasel -- "$@" | ||||
| ext x?html?, has chromium-browser, X, flag f = chromium-browser -- "$@" | ||||
| ext x?html?, has chromium,         X, flag f = chromium -- "$@" | ||||
| ext x?html?, has google-chrome,    X, flag f = google-chrome -- "$@" | ||||
| ext x?html?, has epiphany,         X, flag f = epiphany -- "$@" | ||||
| ext x?html?, has konqueror,        X, flag f = konqueror -- "$@" | ||||
| ext x?html?, has elinks,            terminal = elinks "$@" | ||||
| @ -98,7 +98,7 @@ ext exe                       = wine "$1" | ||||
| name ^[mM]akefile$            = make | ||||
| 
 | ||||
| #-------------------------------------------- | ||||
| # Scripts | ||||
| # Code | ||||
| #------------------------------------------- | ||||
| ext py  = python3 -- "$1" | ||||
| ext pl  = perl -- "$1" | ||||
| @ -131,7 +131,7 @@ mime ^video|audio, has totem,    X, flag f = totem -- "$@" | ||||
| mime ^video|audio, has totem,    X, flag f = totem --fullscreen -- "$@" | ||||
| 
 | ||||
| #-------------------------------------------- | ||||
| # Video without X | ||||
| # Video without X: | ||||
| #------------------------------------------- | ||||
| mime ^video, terminal, !X, has mpv       = mpv -- "$@" | ||||
| mime ^video, terminal, !X, has mplayer2  = mplayer2 -- "$@" | ||||
| @ -167,20 +167,14 @@ ext djvu, has atril,  X, flag f = atril -- "$@" | ||||
| ext djvu, has djview, X, flag f = djview -- "$@" | ||||
| 
 | ||||
| ext epub, has ebook-viewer, X, flag f = ebook-viewer -- "$@" | ||||
| ext epub, has zathura,      X, flag f = zathura -- "$@" | ||||
| ext epub, has mupdf,        X, flag f = mupdf -- "$@" | ||||
| ext mobi, has ebook-viewer, X, flag f = ebook-viewer -- "$@" | ||||
| 
 | ||||
| ext cbr,  has zathura,      X, flag f = zathura -- "$@" | ||||
| ext cbz,  has zathura,      X, flag f = zathura -- "$@" | ||||
| 
 | ||||
| #------------------------------------------- | ||||
| # Images | ||||
| # Image Viewing: | ||||
| #------------------------------------------- | ||||
| mime ^image/svg, has inkscape, X, flag f = inkscape -- "$@" | ||||
| mime ^image/svg, has display,  X, flag f = display -- "$@" | ||||
| 
 | ||||
| mime ^image, has imv,       X, flag f = imv -- "$@" | ||||
| mime ^image, has pqiv,      X, flag f = pqiv -- "$@" | ||||
| mime ^image, has sxiv,      X, flag f = sxiv -- "$@" | ||||
| mime ^image, has feh,       X, flag f = feh -- "$@" | ||||
| @ -190,7 +184,6 @@ mime ^image, has eog,       X, flag f = eog -- "$@" | ||||
| mime ^image, has eom,       X, flag f = eom -- "$@" | ||||
| mime ^image, has nomacs,    X, flag f = nomacs -- "$@" | ||||
| mime ^image, has geeqie,    X, flag f = geeqie -- "$@" | ||||
| mime ^image, has gpicview,  X, flag f = gpicview -- "$@" | ||||
| mime ^image, has gwenview,  X, flag f = gwenview -- "$@" | ||||
| mime ^image, has gimp,      X, flag f = gimp -- "$@" | ||||
| ext xcf,                    X, flag f = gimp -- "$@" | ||||
| @ -218,11 +211,6 @@ ext ace, has unace = for file in "$@"; do unace e "$file"; done | ||||
| ext rar, has unrar = unrar l "$1" | "$PAGER" | ||||
| ext rar, has unrar = for file in "$@"; do unrar x "$file"; done | ||||
| 
 | ||||
| #------------------------------------------- | ||||
| # Fonts | ||||
| #------------------------------------------- | ||||
| mime ^font, has fontforge, X, flag f = fontforge "$@" | ||||
| 
 | ||||
| #------------------------------------------- | ||||
| # Flag t fallback terminals | ||||
| #------------------------------------------- | ||||
| @ -259,26 +247,10 @@ label wallpaper, number 12, mime ^image, has feh, X = feh --bg-tile "$1" | ||||
| label wallpaper, number 13, mime ^image, has feh, X = feh --bg-center "$1" | ||||
| label wallpaper, number 14, mime ^image, has feh, X = feh --bg-fill "$1" | ||||
| 
 | ||||
| #------------------------------------------- | ||||
| # Generic file openers | ||||
| #------------------------------------------- | ||||
| label open, has xdg-open = xdg-open -- "$@" | ||||
| label open, has open     = open -- "$@" | ||||
| 
 | ||||
| # Define the editor for non-text files + pager as last action | ||||
|               !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php  = ask | ||||
| label editor, !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php  = ${VISUAL:-$EDITOR} -- "$@" | ||||
| label pager,  !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php  = "$PAGER" -- "$@" | ||||
| 
 | ||||
| 
 | ||||
| ###################################################################### | ||||
| # The actions below are left so low down in this file on purpose, so # | ||||
| # they are never triggered accidentally.                             # | ||||
| ###################################################################### | ||||
| 
 | ||||
| # Execute a file as program/script. | ||||
| # The very last action, so that it's never triggered accidentally, is to execute a program: | ||||
| mime application/x-executable = "$1" | ||||
| 
 | ||||
| # Move the file to trash using trash-cli. | ||||
| label trash, has trash-put = trash-put -- "$@" | ||||
| label trash = mkdir -p -- ${XDG_DATA_DIR:-$HOME/.ranger}/ranger-trash; mv -- "$@" ${XDG_DATA_DIR:-$HOME/.ranger}/ranger-trash | ||||
|  | ||||
| @ -3,206 +3,129 @@ | ||||
| set -o noclobber -o noglob -o nounset -o pipefail | ||||
| IFS=$'\n' | ||||
| 
 | ||||
| ## If the option `use_preview_script` is set to `true`, | ||||
| ## then this script will be called and its output will be displayed in ranger. | ||||
| ## ANSI color codes are supported. | ||||
| ## STDIN is disabled, so interactive scripts won't work properly | ||||
| # If the option `use_preview_script` is set to `true`, | ||||
| # then this script will be called and its output will be displayed in ranger. | ||||
| # ANSI color codes are supported. | ||||
| # STDIN is disabled, so interactive scripts won't work properly | ||||
| 
 | ||||
| ## This script is considered a configuration file and must be updated manually. | ||||
| ## It will be left untouched if you upgrade ranger. | ||||
| # This script is considered a configuration file and must be updated manually. | ||||
| # It will be left untouched if you upgrade ranger. | ||||
| 
 | ||||
| ## Because of some automated testing we do on the script #'s for comments need | ||||
| ## to be doubled up. Code that is commented out, because it's an alternative for | ||||
| ## example, gets only one #. | ||||
| # Meanings of exit codes: | ||||
| # code | meaning    | action of ranger | ||||
| # -----+------------+------------------------------------------- | ||||
| # 0    | success    | Display stdout as preview | ||||
| # 1    | no preview | Display no preview at all | ||||
| # 2    | plain text | Display the plain content of the file | ||||
| # 3    | fix width  | Don't reload when width changes | ||||
| # 4    | fix height | Don't reload when height changes | ||||
| # 5    | fix both   | Don't ever reload | ||||
| # 6    | image      | Display the image `$IMAGE_CACHE_PATH` points to as an image preview | ||||
| # 7    | image      | Display the file directly as an image | ||||
| 
 | ||||
| ## Meanings of exit codes: | ||||
| ## code | meaning    | action of ranger | ||||
| ## -----+------------+------------------------------------------- | ||||
| ## 0    | success    | Display stdout as preview | ||||
| ## 1    | no preview | Display no preview at all | ||||
| ## 2    | plain text | Display the plain content of the file | ||||
| ## 3    | fix width  | Don't reload when width changes | ||||
| ## 4    | fix height | Don't reload when height changes | ||||
| ## 5    | fix both   | Don't ever reload | ||||
| ## 6    | image      | Display the image `$IMAGE_CACHE_PATH` points to as an image preview | ||||
| ## 7    | image      | Display the file directly as an image | ||||
| 
 | ||||
| ## Script arguments | ||||
| # Script arguments | ||||
| FILE_PATH="${1}"         # Full path of the highlighted file | ||||
| PV_WIDTH="${2}"          # Width of the preview pane (number of fitting characters) | ||||
| ## shellcheck disable=SC2034 # PV_HEIGHT is provided for convenience and unused | ||||
| PV_HEIGHT="${3}"         # Height of the preview pane (number of fitting characters) | ||||
| IMAGE_CACHE_PATH="${4}"  # Full path that should be used to cache image preview | ||||
| PV_IMAGE_ENABLED="${5}"  # 'True' if image previews are enabled, 'False' otherwise. | ||||
| 
 | ||||
| FILE_EXTENSION="${FILE_PATH##*.}" | ||||
| FILE_EXTENSION_LOWER="$(printf "%s" "${FILE_EXTENSION}" | tr '[:upper:]' '[:lower:]')" | ||||
| FILE_EXTENSION_LOWER=$(echo ${FILE_EXTENSION} | tr '[:upper:]' '[:lower:]') | ||||
| 
 | ||||
| ## Settings | ||||
| # Settings | ||||
| HIGHLIGHT_SIZE_MAX=262143  # 256KiB | ||||
| HIGHLIGHT_TABWIDTH=${HIGHLIGHT_TABWIDTH:-8} | ||||
| HIGHLIGHT_STYLE=${HIGHLIGHT_STYLE:-pablo} | ||||
| HIGHLIGHT_OPTIONS="--replace-tabs=${HIGHLIGHT_TABWIDTH} --style=${HIGHLIGHT_STYLE} ${HIGHLIGHT_OPTIONS:-}" | ||||
| PYGMENTIZE_STYLE=${PYGMENTIZE_STYLE:-autumn} | ||||
| OPENSCAD_IMGSIZE=${RNGR_OPENSCAD_IMGSIZE:-1000,1000} | ||||
| OPENSCAD_COLORSCHEME=${RNGR_OPENSCAD_COLORSCHEME:-Tomorrow Night} | ||||
| HIGHLIGHT_TABWIDTH=8 | ||||
| HIGHLIGHT_STYLE='pablo' | ||||
| PYGMENTIZE_STYLE='autumn' | ||||
| 
 | ||||
| 
 | ||||
| handle_extension() { | ||||
|     case "${FILE_EXTENSION_LOWER}" in | ||||
|         ## Archive | ||||
|         # Archive | ||||
|         a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|\ | ||||
|         rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip) | ||||
|             atool --list -- "${FILE_PATH}" && exit 5 | ||||
|             bsdtar --list --file "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
|         rar) | ||||
|             ## Avoid password prompt by providing empty password | ||||
|             # Avoid password prompt by providing empty password | ||||
|             unrar lt -p- -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
|         7z) | ||||
|             ## Avoid password prompt by providing empty password | ||||
|             # Avoid password prompt by providing empty password | ||||
|             7z l -p -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## PDF | ||||
|         # PDF | ||||
|         pdf) | ||||
|             ## Preview as text conversion | ||||
|             pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - | \ | ||||
|               fmt -w "${PV_WIDTH}" && exit 5 | ||||
|             mutool draw -F txt -i -- "${FILE_PATH}" 1-10 | \ | ||||
|               fmt -w "${PV_WIDTH}" && exit 5 | ||||
|             # Preview as text conversion | ||||
|             pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - | fmt -w ${PV_WIDTH} && exit 5 | ||||
|             mutool draw -F txt -i -- "${FILE_PATH}" 1-10 | fmt -w ${PV_WIDTH} && exit 5 | ||||
|             exiftool "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## BitTorrent | ||||
|         # BitTorrent | ||||
|         torrent) | ||||
|             transmission-show -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## OpenDocument | ||||
|         # OpenDocument | ||||
|         odt|ods|odp|sxw) | ||||
|             ## Preview as text conversion | ||||
|             # Preview as text conversion | ||||
|             odt2txt "${FILE_PATH}" && exit 5 | ||||
|             ## Preview as markdown conversion | ||||
|             pandoc -s -t markdown -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## XLSX | ||||
|         xlsx) | ||||
|             ## Preview as csv conversion | ||||
|             ## Uses: https://github.com/dilshod/xlsx2csv | ||||
|             xlsx2csv -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## HTML | ||||
|         # HTML | ||||
|         htm|html|xhtml) | ||||
|             ## Preview as text conversion | ||||
|             # Preview as text conversion | ||||
|             w3m -dump "${FILE_PATH}" && exit 5 | ||||
|             lynx -dump -- "${FILE_PATH}" && exit 5 | ||||
|             elinks -dump "${FILE_PATH}" && exit 5 | ||||
|             pandoc -s -t markdown -- "${FILE_PATH}" && exit 5 | ||||
|             ;; | ||||
| 
 | ||||
|         ## JSON | ||||
|         json) | ||||
|             jq --color-output . "${FILE_PATH}" && exit 5 | ||||
|             python -m json.tool -- "${FILE_PATH}" && exit 5 | ||||
|             ;; | ||||
| 
 | ||||
|         ## Direct Stream Digital/Transfer (DSDIFF) and wavpack aren't detected | ||||
|         ## by file(1). | ||||
|         dff|dsf|wv|wvc) | ||||
|             mediainfo "${FILE_PATH}" && exit 5 | ||||
|             exiftool "${FILE_PATH}" && exit 5 | ||||
|             ;; # Continue with next handler on failure | ||||
|     esac | ||||
| } | ||||
| 
 | ||||
| handle_image() { | ||||
|     ## Size of the preview if there are multiple options or it has to be | ||||
|     ## rendered from vector graphics. If the conversion program allows | ||||
|     ## specifying only one dimension while keeping the aspect ratio, the width | ||||
|     ## will be used. | ||||
|     local DEFAULT_SIZE="1920x1080" | ||||
| 
 | ||||
|     local mimetype="${1}" | ||||
|     case "${mimetype}" in | ||||
|         ## SVG | ||||
|         # image/svg+xml|image/svg) | ||||
|         #     convert -- "${FILE_PATH}" "${IMAGE_CACHE_PATH}" && exit 6 | ||||
|         # SVG | ||||
|         # image/svg+xml) | ||||
|         #     convert "${FILE_PATH}" "${IMAGE_CACHE_PATH}" && exit 6 | ||||
|         #     exit 1;; | ||||
| 
 | ||||
|         ## DjVu | ||||
|         # image/vnd.djvu) | ||||
|         #     ddjvu -format=tiff -quality=90 -page=1 -size="${DEFAULT_SIZE}" \ | ||||
|         #           - "${IMAGE_CACHE_PATH}" < "${FILE_PATH}" \ | ||||
|         #           && exit 6 || exit 1;; | ||||
| 
 | ||||
|         ## Image | ||||
|         # Image | ||||
|         image/*) | ||||
|             local orientation | ||||
|             orientation="$( identify -format '%[EXIF:Orientation]\n' -- "${FILE_PATH}" )" | ||||
|             ## If orientation data is present and the image actually | ||||
|             ## needs rotating ("1" means no rotation)... | ||||
|             # If orientation data is present and the image actually | ||||
|             # needs rotating ("1" means no rotation)... | ||||
|             if [[ -n "$orientation" && "$orientation" != 1 ]]; then | ||||
|                 ## ...auto-rotate the image according to the EXIF data. | ||||
|                 # ...auto-rotate the image according to the EXIF data. | ||||
|                 convert -- "${FILE_PATH}" -auto-orient "${IMAGE_CACHE_PATH}" && exit 6 | ||||
|             fi | ||||
| 
 | ||||
|             ## `w3mimgdisplay` will be called for all images (unless overriden | ||||
|             ## as above), but might fail for unsupported types. | ||||
|             # `w3mimgdisplay` will be called for all images (unless overriden as above), | ||||
|             # but might fail for unsupported types. | ||||
|             exit 7;; | ||||
| 
 | ||||
|         ## Video | ||||
|         # Video | ||||
|         # video/*) | ||||
|         #     # Thumbnail | ||||
|         #     ffmpegthumbnailer -i "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" -s 0 && exit 6 | ||||
|         #     exit 1;; | ||||
| 
 | ||||
|         ## PDF | ||||
|         # PDF | ||||
|         # application/pdf) | ||||
|         #     pdftoppm -f 1 -l 1 \ | ||||
|         #              -scale-to-x "${DEFAULT_SIZE%x*}" \ | ||||
|         #              -scale-to-x 1920 \ | ||||
|         #              -scale-to-y -1 \ | ||||
|         #              -singlefile \ | ||||
|         #              -jpeg -tiffcompression jpeg \ | ||||
|         #              -- "${FILE_PATH}" "${IMAGE_CACHE_PATH%.*}" \ | ||||
|         #         && exit 6 || exit 1;; | ||||
| 
 | ||||
| 
 | ||||
|         ## ePub, MOBI, FB2 (using Calibre) | ||||
|         # application/epub+zip|application/x-mobipocket-ebook|\ | ||||
|         # application/x-fictionbook+xml) | ||||
|         #     # ePub (using https://github.com/marianosimone/epub-thumbnailer) | ||||
|         #     epub-thumbnailer "${FILE_PATH}" "${IMAGE_CACHE_PATH}" \ | ||||
|         #         "${DEFAULT_SIZE%x*}" && exit 6 | ||||
|         #     ebook-meta --get-cover="${IMAGE_CACHE_PATH}" -- "${FILE_PATH}" \ | ||||
|         #         >/dev/null && exit 6 | ||||
|         #     exit 1;; | ||||
| 
 | ||||
|         ## Font | ||||
|         application/font*|application/*opentype) | ||||
|             preview_png="/tmp/$(basename "${IMAGE_CACHE_PATH%.*}").png" | ||||
|             if fontimage -o "${preview_png}" \ | ||||
|                          --pixelsize "120" \ | ||||
|                          --fontname \ | ||||
|                          --pixelsize "80" \ | ||||
|                          --text "  ABCDEFGHIJKLMNOPQRSTUVWXYZ  " \ | ||||
|                          --text "  abcdefghijklmnopqrstuvwxyz  " \ | ||||
|                          --text "  0123456789.:,;(*!?') ff fl fi ffi ffl  " \ | ||||
|                          --text "  The quick brown fox jumps over the lazy dog.  " \ | ||||
|                          "${FILE_PATH}"; | ||||
|             then | ||||
|                 convert -- "${preview_png}" "${IMAGE_CACHE_PATH}" \ | ||||
|                     && rm "${preview_png}" \ | ||||
|                     && exit 6 | ||||
|             else | ||||
|                 exit 1 | ||||
|             fi | ||||
|             ;; | ||||
| 
 | ||||
|         ## Preview archives using the first image inside. | ||||
|         ## (Very useful for comic book collections for example.) | ||||
|         # Preview archives using the first image inside. | ||||
|         # (Very useful for comic book collections for example.) | ||||
|         # application/zip|application/x-rar|application/x-7z-compressed|\ | ||||
|         #     application/x-xz|application/x-bzip2|application/x-gzip|application/x-tar) | ||||
|         #     local fn=""; local fe="" | ||||
| @ -238,60 +161,14 @@ handle_image() { | ||||
|         #     [ "$rar" ] || [ "$zip" ] && rm -- "${IMAGE_CACHE_PATH}" | ||||
|         #     ;; | ||||
|     esac | ||||
| 
 | ||||
|     # openscad_image() { | ||||
|     #     TMPPNG="$(mktemp -t XXXXXX.png)" | ||||
|     #     openscad --colorscheme="${OPENSCAD_COLORSCHEME}" \ | ||||
|     #         --imgsize="${OPENSCAD_IMGSIZE/x/,}" \ | ||||
|     #         -o "${TMPPNG}" "${1}" | ||||
|     #     mv "${TMPPNG}" "${IMAGE_CACHE_PATH}" | ||||
|     # } | ||||
| 
 | ||||
|     # case "${FILE_EXTENSION_LOWER}" in | ||||
|     #     ## 3D models | ||||
|     #     ## OpenSCAD only supports png image output, and ${IMAGE_CACHE_PATH} | ||||
|     #     ## is hardcoded as jpeg. So we make a tempfile.png and just | ||||
|     #     ## move/rename it to jpg. This works because image libraries are | ||||
|     #     ## smart enough to handle it. | ||||
|     #     csg|scad) | ||||
|     #         openscad_image "${FILE_PATH}" && exit 6 | ||||
|     #         ;; | ||||
|     #     3mf|amf|dxf|off|stl) | ||||
|     #         openscad_image <(echo "import(\"${FILE_PATH}\");") && exit 6 | ||||
|     #         ;; | ||||
|     # esac | ||||
| } | ||||
| 
 | ||||
| handle_mime() { | ||||
|     local mimetype="${1}" | ||||
|     case "${mimetype}" in | ||||
|         ## RTF and DOC | ||||
|         text/rtf|*msword) | ||||
|             ## Preview as text conversion | ||||
|             ## note: catdoc does not always work for .doc files | ||||
|             ## catdoc: http://www.wagner.pp.ru/~vitus/software/catdoc/ | ||||
|             catdoc -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## DOCX, ePub, FB2 (using markdown) | ||||
|         ## You might want to remove "|epub" and/or "|fb2" below if you have | ||||
|         ## uncommented other methods to preview those formats | ||||
|         *wordprocessingml.document|*/epub+zip|*/x-fictionbook+xml) | ||||
|             ## Preview as markdown conversion | ||||
|             pandoc -s -t markdown -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## XLS | ||||
|         *ms-excel) | ||||
|             ## Preview as csv conversion | ||||
|             ## xls2csv comes with catdoc: | ||||
|             ##   http://www.wagner.pp.ru/~vitus/software/catdoc/ | ||||
|             xls2csv -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## Text | ||||
|         # Text | ||||
|         text/* | */xml) | ||||
|             ## Syntax highlight | ||||
|             # Syntax highlight | ||||
|             if [[ "$( stat --printf='%s' -- "${FILE_PATH}" )" -gt "${HIGHLIGHT_SIZE_MAX}" ]]; then | ||||
|                 exit 2 | ||||
|             fi | ||||
| @ -302,30 +179,19 @@ handle_mime() { | ||||
|                 local pygmentize_format='terminal' | ||||
|                 local highlight_format='ansi' | ||||
|             fi | ||||
|             env HIGHLIGHT_OPTIONS="${HIGHLIGHT_OPTIONS}" highlight \ | ||||
|                 --out-format="${highlight_format}" \ | ||||
|                 --force -- "${FILE_PATH}" && exit 5 | ||||
|             env COLORTERM=8bit bat --color=always --style="plain" \ | ||||
|                 -- "${FILE_PATH}" && exit 5 | ||||
|             pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}"\ | ||||
|                 -- "${FILE_PATH}" && exit 5 | ||||
|             highlight --replace-tabs="${HIGHLIGHT_TABWIDTH}" --out-format="${highlight_format}" \ | ||||
|                 --style="${HIGHLIGHT_STYLE}" --force -- "${FILE_PATH}" && exit 5 | ||||
|             # pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}" -- "${FILE_PATH}" && exit 5 | ||||
|             exit 2;; | ||||
| 
 | ||||
|         ## DjVu | ||||
|         image/vnd.djvu) | ||||
|             ## Preview as text conversion (requires djvulibre) | ||||
|             djvutxt "${FILE_PATH}" | fmt -w "${PV_WIDTH}" && exit 5 | ||||
|             exiftool "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## Image | ||||
|         # Image | ||||
|         image/*) | ||||
|             ## Preview as text conversion | ||||
|             # Preview as text conversion | ||||
|             # img2txt --gamma=0.6 --width="${PV_WIDTH}" -- "${FILE_PATH}" && exit 4 | ||||
|             exiftool "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## Video and audio | ||||
|         # Video and audio | ||||
|         video/* | audio/*) | ||||
|             mediainfo "${FILE_PATH}" && exit 5 | ||||
|             exiftool "${FILE_PATH}" && exit 5 | ||||
|  | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/apps
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/apps
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/apps.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/appsmenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/appsmenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_apps.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/backlight
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/backlight
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/backlight.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/backlightmenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/backlightmenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_backlight.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/battery
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/battery
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/battery.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/batterymenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/batterymenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_battery.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/mpd
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/mpd
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/mpd.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/mpdmenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/mpdmenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_mpd.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/network
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/network
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/network.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/networkmenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/networkmenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_network.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/power
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/power
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/powermenu.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/powermenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/powermenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_powermenu.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/quicklinks
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/quicklinks
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/quicklinks.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/quicklinksmenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/quicklinksmenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_quicklinks.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/screenshot
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/screenshot
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/screenshot.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/screenshotmenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/screenshotmenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_screenshot.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/time
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/time
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/time.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/timemenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/timemenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_time.sh | ||||
							
								
								
									
										53
									
								
								.config/rofi/bin/usedcpu
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										53
									
								
								.config/rofi/bin/usedcpu
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,53 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| # Source: http://askubuntu.com/a/450136 | ||||
| 
 | ||||
| # I only slightly modify this script to add an option to show icon, useful for my tint2 executor | ||||
| # Also useful for polybar custom script, dzen2 feeder, conkybar, lemonbar feeder, dunst notify, etc. | ||||
| # 'usedcpu -i' = with icon, 'usedcpu' = text only | ||||
| # Cheers! | ||||
| # Addy | ||||
| 
 | ||||
| PREV_TOTAL=0 | ||||
| PREV_IDLE=0 | ||||
| 
 | ||||
| cpuFile="/tmp/.cpu" | ||||
| 
 | ||||
| if [[ -f "${cpuFile}" ]]; then | ||||
|   fileCont=$(cat "${cpuFile}") | ||||
|   PREV_TOTAL=$(echo "${fileCont}" | head -n 1) | ||||
|   PREV_IDLE=$(echo "${fileCont}" | tail -n 1) | ||||
| fi | ||||
| 
 | ||||
| CPU=(`cat /proc/stat | grep '^cpu '`) # Get the total CPU statistics. | ||||
| unset CPU[0]                          # Discard the "cpu" prefix. | ||||
| IDLE=${CPU[4]}                        # Get the idle CPU time. | ||||
| 
 | ||||
| # Calculate the total CPU time. | ||||
| TOTAL=0 | ||||
| 
 | ||||
| for VALUE in "${CPU[@]:0:4}"; do | ||||
|   let "TOTAL=$TOTAL+$VALUE" | ||||
| done | ||||
| 
 | ||||
| if [[ "${PREV_TOTAL}" != "" ]] && [[ "${PREV_IDLE}" != "" ]]; then | ||||
|   # Calculate the CPU usage since we last checked. | ||||
|   let "DIFF_IDLE=$IDLE-$PREV_IDLE" | ||||
|   let "DIFF_TOTAL=$TOTAL-$PREV_TOTAL" | ||||
|   let "DIFF_USAGE=(1000*($DIFF_TOTAL-$DIFF_IDLE)/$DIFF_TOTAL+5)/10" | ||||
|   	if  [[ $1 = "-i" ]]; then | ||||
|     echo "  ${DIFF_USAGE}%" | ||||
| 	else | ||||
|     echo "${DIFF_USAGE}%" | ||||
| 	fi | ||||
| else | ||||
|   	if  [[ $1 = "-i" ]]; then | ||||
|     echo "  ?" | ||||
| 	else | ||||
|     echo "?" | ||||
| 	fi | ||||
| fi | ||||
| 
 | ||||
| # Remember the total and idle CPU times for the next check. | ||||
| echo "${TOTAL}" > "${cpuFile}" | ||||
| echo "${IDLE}" >> "${cpuFile}" | ||||
							
								
								
									
										34
									
								
								.config/rofi/bin/usedram
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										34
									
								
								.config/rofi/bin/usedram
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,34 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| # this script is taken from screenfetch | ||||
| # I only slightly modify this script to add an option to show icon, useful for my tint2 executor | ||||
| # 'usedram -i' = with icon, 'usedram' = text only | ||||
| # 'usedram -fi' = full summary with icon, 'usedram' = full summary text only | ||||
| # Cheers! | ||||
| # Addy | ||||
| 
 | ||||
| mem_info=$(</proc/meminfo) | ||||
| 		mem_info=$(echo $(echo $(mem_info=${mem_info// /}; echo ${mem_info//kB/}))) | ||||
| 		for m in $mem_info; do | ||||
| 			case ${m//:*} in | ||||
| 				"MemTotal") usedmem=$((usedmem+=${m//*:})); totalmem=${m//*:} ;; | ||||
| 				"ShMem") usedmem=$((usedmem+=${m//*:})) ;; | ||||
| 				"MemFree"|"Buffers"|"Cached"|"SReclaimable") usedmem=$((usedmem-=${m//*:})) ;; | ||||
| 			esac | ||||
| 		done | ||||
| 		usedmem=$((usedmem / 1024)) | ||||
| 		totalmem=$((totalmem / 1024)) | ||||
| 		mem="${usedmem}MB / ${totalmem}MB" | ||||
| 
 | ||||
| ## Complete summary | ||||
| 	if  [[ $1 = "-fi" ]]; then | ||||
|     echo "  $mem" | ||||
| 	elif [[ $1 = "-f" ]]; then | ||||
|     echo "$mem" | ||||
|      | ||||
| ## Only used RAM | ||||
| 	elif  [[ $1 = "-i" ]]; then | ||||
|     echo "  $usedmem MB" | ||||
| 	else | ||||
|     echo "$usedmem MB" | ||||
| 	fi | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/volume
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/volume
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/volume.sh | ||||
							
								
								
									
										1
									
								
								.config/rofi/bin/volumemenu
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								.config/rofi/bin/volumemenu
									
									
									
									
									
										Symbolic link
									
								
							| @ -0,0 +1 @@ | ||||
| /home/aditya/.config/rofi/scripts/menu_volume.sh | ||||
							
								
								
									
										150
									
								
								.config/rofi/config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										150
									
								
								.config/rofi/config
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,150 @@ | ||||
| /** | ||||
|  * User: simonvic | ||||
|  * Copyright: simonvic | ||||
|  * | ||||
|  */ | ||||
| 
 | ||||
| configuration { | ||||
| 	display-drun: "§"; | ||||
| 	display-run: "$"; | ||||
| 	display-window: "缾"; | ||||
| 	display-ssh: "~#"; | ||||
| 	show-icons: true; | ||||
| 	sidebar-mode: false; | ||||
| 	font: "NotoSans Regular 16"; | ||||
| } | ||||
| 
 | ||||
| * { | ||||
| 	text-color: @foreground; | ||||
| 	active-background: rgb(100,50,50); | ||||
| 	active-foreground: @foreground; | ||||
| 	normal-background: @background; | ||||
| 	normal-foreground: @foreground; | ||||
| 	urgent-background: #9E2A5E; | ||||
| 	urgent-foreground: @foreground; | ||||
| 	alternate-active-background: @background; | ||||
| 	alternate-active-foreground: @foreground; | ||||
| 	alternate-normal-background: @background; | ||||
| 	alternate-normal-foreground: @foreground; | ||||
| 	alternate-urgent-background: @background; | ||||
| 	alternate-urgent-foreground: @foreground; | ||||
| 	selected-active-background: rgb(200,10,10); | ||||
| 	selected-active-foreground: #FFFFFF; | ||||
| 	selected-normal-background: rgb(200,50,50); | ||||
| 	selected-normal-foreground: #FFFFFF; | ||||
| 	selected-urgent-background: #9D596B; | ||||
| 	selected-urgent-foreground: @foreground; | ||||
| 	background-color: transparent; | ||||
| 	background: rgba(33,33,33 ,0.6); | ||||
| 	foreground: rgb(200,200,200); | ||||
| 	spacing: 0; | ||||
| 	 | ||||
| } | ||||
| 
 | ||||
| window { | ||||
| 	location: center; | ||||
| 	anchor: center; | ||||
| 	height: 100%; | ||||
| 	width: 100%; | ||||
| 	orientation: vertical; | ||||
| 	children: [mainbox]; | ||||
| 	hide-scrollbar: true; | ||||
| 	padding: 20% 35% 20% 35%; | ||||
| 	background-color: #00000000; | ||||
| } | ||||
| 
 | ||||
| mainbox { | ||||
| 	children: [inputbar, listview]; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| listview { | ||||
| 	spacing: 0.6em; | ||||
| 	dynamic: false; | ||||
| 	cycle: false; | ||||
| 	padding: 5px 5px 5px 5px; | ||||
| } | ||||
| 
 | ||||
| inputbar { | ||||
| 	border-radius: 50%; | ||||
| 	padding: 10px; | ||||
| 	border-spacing: 5px 0 0 0; | ||||
| 	border: 0px; | ||||
| 	spacing: 0px; | ||||
| 	margin: 10px; | ||||
| 	border-color: rgb(200,50,50); | ||||
| 	background-color: @background; | ||||
| 	text-color: #FFFFFF; | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
| entry{ | ||||
| 	padding: 5px; | ||||
| 	border: 0px 0px 2px 0px; | ||||
| 	border-color: rgb(250,50,50); | ||||
| 	background-color: rgba(0,0,0,0); | ||||
| 	text-color: #FFFFFF; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| prompt{ | ||||
| 	padding: 5px; | ||||
| 	background-color: #00000000; | ||||
| 	text-color: #FFFFFF; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| element { | ||||
| 	padding: 10px; | ||||
| 	border-radius: 50%; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| element normal.normal { | ||||
| 	background-color: @normal-background; | ||||
| 	text-color: @normal-foreground; | ||||
| } | ||||
| 
 | ||||
| element normal.urgent { | ||||
| 	background-color: @urgent-background; | ||||
| 	text-color: @urgent-foreground; | ||||
| } | ||||
| 
 | ||||
| element normal.active { | ||||
| 	background-color: @active-background; | ||||
| 	text-color: @active-foreground; | ||||
| } | ||||
| 
 | ||||
| element selected.normal { | ||||
| 	background-color: @selected-normal-background; | ||||
| 	text-color: @selected-normal-foreground; | ||||
| 	border-color: @active-background; | ||||
| } | ||||
| 
 | ||||
| element selected.urgent { | ||||
| 	background-color: @selected-urgent-background; | ||||
| 	text-color: @selected-urgent-foreground; | ||||
| } | ||||
| 
 | ||||
| element selected.active { | ||||
| 	background-color: @selected-active-background; | ||||
| 	text-color: @selected-active-foreground; | ||||
| } | ||||
| 
 | ||||
| element alternate.normal { | ||||
| 	background-color: @normal-background; | ||||
| 	text-color: @normal-foreground; | ||||
| } | ||||
| 
 | ||||
| element alternate.urgent { | ||||
| 	background-color: @urgent-background; | ||||
| 	text-color: @urgent-foreground; | ||||
| } | ||||
| 
 | ||||
| element alternate.active { | ||||
| 	background-color: @active-background; | ||||
| 	text-color: @active-foreground; | ||||
| } | ||||
| 
 | ||||
| rofi.theme: /home/kapper/.config/rofi/themes/onedark.rasi | ||||
							
								
								
									
										42
									
								
								.config/rofi/scripts/apps.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										42
									
								
								.config/rofi/scripts/apps.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,42 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## browser : @adi1090x | ||||
| ## music : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/apps.rasi" | ||||
| 
 | ||||
| # Links | ||||
| terminal="" | ||||
| files="ﱮ" | ||||
| editor="" | ||||
| browser="" | ||||
| music="" | ||||
| settings="漣" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$terminal\n$files\n$editor\n$browser\n$music\n$settings" | ||||
| 
 | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "Most Used" -dmenu -selected-row 0)" | ||||
| case $chosen in | ||||
|     $terminal) | ||||
|         termite & | ||||
|         ;; | ||||
|     $files) | ||||
|         thunar & | ||||
|         ;; | ||||
|     $editor) | ||||
|         geany & | ||||
|         ;; | ||||
|     $browser) | ||||
|         firefox & | ||||
|         ;; | ||||
|     $music) | ||||
|         lxmusic & | ||||
|         ;; | ||||
|     $settings) | ||||
|         xfce4-settings-manager & | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										44
									
								
								.config/rofi/scripts/backlight.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										44
									
								
								.config/rofi/scripts/backlight.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,44 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/backlight.rasi" | ||||
| 
 | ||||
| ## Get Brightness | ||||
| VAR="$(xbacklight -get)" | ||||
| BLIGHT="$(printf "%.0f\n" "$VAR")" | ||||
| 
 | ||||
| if [[ $BLIGHT -ge 1 ]] && [[ $BLIGHT -le 29 ]]; then | ||||
|     MSG="Low" | ||||
| elif [[ $BLIGHT -ge 30 ]] && [[ $BLIGHT -le 49 ]]; then | ||||
|     MSG="Optimal" | ||||
| elif [[ $BLIGHT -ge 50 ]] && [[ $BLIGHT -le 69 ]]; then | ||||
|     MSG="High" | ||||
| elif [[ $BLIGHT -ge 70 ]] && [[ $BLIGHT -le 99 ]]; then | ||||
|     MSG="Too Much" | ||||
| fi | ||||
| 
 | ||||
| ## Icons | ||||
| ICON_UP="" | ||||
| ICON_DOWN="" | ||||
| ICON_OPT="" | ||||
| 
 | ||||
| options="$ICON_UP\n$ICON_OPT\n$ICON_DOWN" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "$BLIGHT%" -dmenu -selected-row 1)" | ||||
| case $chosen in | ||||
|     $ICON_UP) | ||||
|         xbacklight -inc 10 && notify-send -u low -t 1500 "Brightness Up $ICON_UP" | ||||
|         ;; | ||||
|     $ICON_DOWN) | ||||
|         xbacklight -dec 10 && notify-send -u low -t 1500 "Brightness Down $ICON_DOWN" | ||||
|         ;; | ||||
|     $ICON_OPT) | ||||
|         xbacklight -set 35 && notify-send -u low -t 1500 "Optimal Brightness $ICON_OPT" | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										59
									
								
								.config/rofi/scripts/battery.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										59
									
								
								.config/rofi/scripts/battery.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,59 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/battery.rasi" | ||||
| 
 | ||||
| ## Get data | ||||
| 
 | ||||
| BATTERY="$(acpi | awk -F ' ' '{print $4}' | tr -d \%,)" | ||||
| CHARGE="$(acpi | awk -F ' ' '{print $3}' | tr -d \,)" | ||||
| 
 | ||||
| active="" | ||||
| urgent="" | ||||
| 
 | ||||
| if [[ $CHARGE = *"Charging"* ]]; then | ||||
|     active="-a 1" | ||||
|     ICON_CHRG="" | ||||
|     MSG=$CHARGE | ||||
| else | ||||
|     urgent="-u 1" | ||||
|     ICON_CHRG="ﮤ" | ||||
|     MSG="Discharging" | ||||
| fi | ||||
| 
 | ||||
| # Discharging | ||||
| #if [[ $CHARGE -eq 1 ]] && [[ $BATTERY -eq 100 ]]; then | ||||
| #    ICON_DISCHRG="" | ||||
| if [[ $BATTERY -ge 5 ]] && [[ $BATTERY -le 19 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| elif [[ $BATTERY -ge 20 ]] && [[ $BATTERY -le 39 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| elif [[ $BATTERY -ge 40 ]] && [[ $BATTERY -le 59 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| elif [[ $BATTERY -ge 60 ]] && [[ $BATTERY -le 79 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| elif [[ $BATTERY -ge 80 ]] && [[ $BATTERY -le 100 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| fi | ||||
| 
 | ||||
| ## Icons | ||||
| ICON_PMGR="" | ||||
| 
 | ||||
| options="$ICON_DISCHRG\n$ICON_CHRG\n$ICON_PMGR" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "$BATTERY%" -dmenu $active $urgent -selected-row 0)" | ||||
| case $chosen in | ||||
|     $ICON_CHRG) | ||||
|         ;; | ||||
|     $ICON_DISCHRG) | ||||
|         ;; | ||||
|     $ICON_PMGR) | ||||
|         xfce4-power-manager-settings | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										42
									
								
								.config/rofi/scripts/menu_apps.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										42
									
								
								.config/rofi/scripts/menu_apps.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,42 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## browser : @adi1090x | ||||
| ## music : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/apps.rasi" | ||||
| 
 | ||||
| # Links | ||||
| terminal="" | ||||
| files="ﱮ" | ||||
| editor="" | ||||
| browser="" | ||||
| music="" | ||||
| settings="漣" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$terminal\n$files\n$editor\n$browser\n$music\n$settings" | ||||
| 
 | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "Most Used" -dmenu -selected-row 0)" | ||||
| case $chosen in | ||||
|     $terminal) | ||||
|         termite & | ||||
|         ;; | ||||
|     $files) | ||||
|         thunar & | ||||
|         ;; | ||||
|     $editor) | ||||
|         geany & | ||||
|         ;; | ||||
|     $browser) | ||||
|         firefox & | ||||
|         ;; | ||||
|     $music) | ||||
|         lxmusic & | ||||
|         ;; | ||||
|     $settings) | ||||
|         xfce4-settings-manager & | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										44
									
								
								.config/rofi/scripts/menu_backlight.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										44
									
								
								.config/rofi/scripts/menu_backlight.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,44 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/backlight.rasi" | ||||
| 
 | ||||
| ## Get Brightness | ||||
| VAR="$(xbacklight -get)" | ||||
| BLIGHT="$(printf "%.0f\n" "$VAR")" | ||||
| 
 | ||||
| if [[ $BLIGHT -ge 1 ]] && [[ $BLIGHT -le 29 ]]; then | ||||
|     MSG="Low" | ||||
| elif [[ $BLIGHT -ge 30 ]] && [[ $BLIGHT -le 49 ]]; then | ||||
|     MSG="Optimal" | ||||
| elif [[ $BLIGHT -ge 50 ]] && [[ $BLIGHT -le 69 ]]; then | ||||
|     MSG="High" | ||||
| elif [[ $BLIGHT -ge 70 ]] && [[ $BLIGHT -le 99 ]]; then | ||||
|     MSG="Too Much" | ||||
| fi | ||||
| 
 | ||||
| ## Icons | ||||
| ICON_UP="" | ||||
| ICON_DOWN="" | ||||
| ICON_OPT="" | ||||
| 
 | ||||
| options="$ICON_UP\n$ICON_OPT\n$ICON_DOWN" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "$BLIGHT%  :  $MSG" -dmenu -selected-row 1)" | ||||
| case $chosen in | ||||
|     $ICON_UP) | ||||
|         xbacklight -inc 10 && notify-send -u low -t 1500 "Brightness Up $ICON_UP" | ||||
|         ;; | ||||
|     $ICON_DOWN) | ||||
|         xbacklight -dec 10 && notify-send -u low -t 1500 "Brightness Down $ICON_DOWN" | ||||
|         ;; | ||||
|     $ICON_OPT) | ||||
|         xbacklight -set 35 && notify-send -u low -t 1500 "Optimal Brightness $ICON_OPT" | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										58
									
								
								.config/rofi/scripts/menu_battery.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										58
									
								
								.config/rofi/scripts/menu_battery.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,58 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/battery.rasi" | ||||
| 
 | ||||
| ## Get data | ||||
| BATTERY="$(acpi | awk -F ' ' '{print $4}' | tr -d \%,)" | ||||
| CHARGE="$(acpi | awk -F ' ' '{print $3}' | tr -d \,)" | ||||
| 
 | ||||
| active="" | ||||
| urgent="" | ||||
| 
 | ||||
| if [[ $CHARGE = *"Charging"* ]]; then | ||||
|     active="-a 1" | ||||
|     ICON_CHRG="" | ||||
|     MSG=$CHARGE | ||||
| else | ||||
|     urgent="-u 1" | ||||
|     ICON_CHRG="ﮤ" | ||||
|     MSG="Discharging" | ||||
| fi | ||||
| 
 | ||||
| # Discharging | ||||
| #if [[ $CHARGE -eq 1 ]] && [[ $BATTERY -eq 100 ]]; then | ||||
| #    ICON_DISCHRG="" | ||||
| if [[ $BATTERY -ge 5 ]] && [[ $BATTERY -le 19 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| elif [[ $BATTERY -ge 20 ]] && [[ $BATTERY -le 39 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| elif [[ $BATTERY -ge 40 ]] && [[ $BATTERY -le 59 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| elif [[ $BATTERY -ge 60 ]] && [[ $BATTERY -le 79 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| elif [[ $BATTERY -ge 80 ]] && [[ $BATTERY -le 100 ]]; then | ||||
|     ICON_DISCHRG="" | ||||
| fi | ||||
| 
 | ||||
| ## Icons | ||||
| ICON_PMGR="" | ||||
| 
 | ||||
| options="$ICON_DISCHRG\n$ICON_CHRG\n$ICON_PMGR" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "$MSG : $BATTERY%" -dmenu $active $urgent -selected-row 0)" | ||||
| case $chosen in | ||||
|     $ICON_CHRG) | ||||
|         ;; | ||||
|     $ICON_DISCHRG) | ||||
|         ;; | ||||
|     $ICON_PMGR) | ||||
|         xfce4-power-manager-settings | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										70
									
								
								.config/rofi/scripts/menu_mpd.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										70
									
								
								.config/rofi/scripts/menu_mpd.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,70 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/mpd.rasi" | ||||
| 
 | ||||
| # Gets the current status of mpd (for us to parse it later on) | ||||
| status="$(mpc status)" | ||||
| # Defines the Play / Pause option content | ||||
| if [[ $status == *"[playing]"* ]]; then | ||||
|     play_pause="" | ||||
| else | ||||
|     play_pause="" | ||||
| fi | ||||
| active="" | ||||
| urgent="" | ||||
| 
 | ||||
| # Display if repeat mode is on / off | ||||
| tog_repeat="凌" | ||||
| if [[ $status == *"repeat: on"* ]]; then | ||||
|     active="-a 4" | ||||
| elif [[ $status == *"repeat: off"* ]]; then | ||||
|     urgent="-u 4" | ||||
| else | ||||
|     tog_repeat=" Parsing error" | ||||
| fi | ||||
| 
 | ||||
| # Display if random mode is on / off | ||||
| tog_random="" | ||||
| if [[ $status == *"random: on"* ]]; then | ||||
|     [ -n "$active" ] && active+=",5" || active="-a 5" | ||||
| elif [[ $status == *"random: off"* ]]; then | ||||
|     [ -n "$urgent" ] && urgent+=",5" || urgent="-u 5" | ||||
| else | ||||
|     tog_random=" Parsing error" | ||||
| fi | ||||
| stop="" | ||||
| next="" | ||||
| previous="" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$previous\n$play_pause\n$stop\n$next\n$tog_repeat\n$tog_random" | ||||
| 
 | ||||
| # Get the current playing song | ||||
| current=$(mpc current) | ||||
| # If mpd isn't running it will return an empty string, we don't want to display that | ||||
| if [[ -z "$current" ]]; then | ||||
|     current="-" | ||||
| fi | ||||
| 
 | ||||
| # Spawn the mpd menu with the "Play / Pause" entry selected by default | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "  $current" -dmenu $active $urgent -selected-row 1)" | ||||
| case $chosen in | ||||
|     $previous) | ||||
|         mpc -q prev && notify-send -u low -t 1800 " $(mpc current)" | ||||
|         ;; | ||||
|     $play_pause) | ||||
|         mpc -q toggle && notify-send -u low -t 1800 " $(mpc current)" | ||||
|         ;; | ||||
|     $stop) | ||||
|         mpc -q stop | ||||
|         ;; | ||||
|     $next) | ||||
|         mpc -q next && notify-send -u low -t 1800 " $(mpc current)" | ||||
|         ;; | ||||
|     $tog_repeat) | ||||
|         mpc -q repeat | ||||
|         ;; | ||||
|     $tog_random) | ||||
|         mpc -q random | ||||
|         ;; | ||||
| esac | ||||
							
								
								
									
										65
									
								
								.config/rofi/scripts/menu_network.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										65
									
								
								.config/rofi/scripts/menu_network.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,65 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/network.rasi" | ||||
| 
 | ||||
| ## Get info | ||||
| IFACE="$(nmcli | grep -i interface | awk '/interface/ {print $2}')" | ||||
| #SSID="$(iwgetid -r)" | ||||
| #LIP="$(nmcli | grep -i server | awk '/server/ {print $2}')" | ||||
| #PIP="$(dig +short myip.opendns.com @resolver1.opendns.com )" | ||||
| STATUS="$(nmcli radio wifi)" | ||||
| 
 | ||||
| active="" | ||||
| urgent="" | ||||
| 
 | ||||
| if (ping -c 1 archlinux.org || ping -c 1 google.com || ping -c 1 bitbucket.org || ping -c 1 github.com || ping -c 1 sourceforge.net) &>/dev/null; then | ||||
| 	if [[ $STATUS == *"enable"* ]]; then | ||||
|         if [[ $IFACE == e* ]]; then | ||||
|             connected="" | ||||
|         else | ||||
|             connected="直" | ||||
|         fi | ||||
| 	active="-a 0" | ||||
| 	SSID=" $(iwgetid -r)" | ||||
| 	PIP="$(dig +short myip.opendns.com @resolver1.opendns.com )" | ||||
| 	fi | ||||
| else | ||||
|     urgent="-u 0" | ||||
|     SSID="Disconnected" | ||||
|     PIP="Not Available" | ||||
|     connected="睊" | ||||
| fi | ||||
| 
 | ||||
| ## Icons | ||||
| bmon="龍" | ||||
| launch_cli="" | ||||
| launch="歷" | ||||
| 
 | ||||
| options="$connected\n$bmon\n$launch_cli\n$launch" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "$SSID  :  $PIP" -dmenu $active $urgent -selected-row 1)" | ||||
| case $chosen in | ||||
|     $connected) | ||||
| 		if [[ $STATUS == *"enable"* ]]; then | ||||
| 			nmcli radio wifi off | ||||
| 		else | ||||
| 			nmcli radio wifi on | ||||
| 		fi  | ||||
|         ;; | ||||
|     $bmon) | ||||
|         termite -e bmon | ||||
|         ;; | ||||
|     $launch_cli) | ||||
|         termite -e nmtui | ||||
|         ;; | ||||
|     $launch) | ||||
|         nm-connection-editor | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										44
									
								
								.config/rofi/scripts/menu_powermenu.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										44
									
								
								.config/rofi/scripts/menu_powermenu.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,44 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/powermenu.rasi" | ||||
| uptime=$(uptime -p | sed -e 's/up //g') | ||||
| #mem=$( free -h | grep -i mem | awk -F ' ' '{print $3}') | ||||
| cpu=$(sh ~/.config/rofi/bin/usedcpu) | ||||
| memory=$(sh ~/.config/rofi/bin/usedram) | ||||
| 
 | ||||
| # Options | ||||
| shutdown="襤" | ||||
| reboot="ﰇ" | ||||
| lock="" | ||||
| suspend="鈴" | ||||
| logout="" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$shutdown\n$reboot\n$lock\n$suspend\n$logout" | ||||
| 
 | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "祥  $uptime    $cpu    $memory " -dmenu -selected-row 2)" | ||||
| case $chosen in | ||||
|     $shutdown) | ||||
|         systemctl poweroff | ||||
|         ;; | ||||
|     $reboot) | ||||
|         systemctl reboot | ||||
|         ;; | ||||
|     $lock) | ||||
|         i3lock | ||||
|         ;; | ||||
|     $suspend) | ||||
|         mpc -q pause | ||||
|         amixer set Master mute | ||||
|         systemctl suspend | ||||
|         ;; | ||||
|     $logout) | ||||
|         openbox --exit | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										42
									
								
								.config/rofi/scripts/menu_quicklinks.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										42
									
								
								.config/rofi/scripts/menu_quicklinks.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,42 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/quicklinks.rasi" | ||||
| 
 | ||||
| # Links | ||||
| google="" | ||||
| facebook="" | ||||
| twitter="" | ||||
| github="" | ||||
| reddit="" | ||||
| youtube="" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$google\n$facebook\n$twitter\n$github\n$reddit\n$youtube" | ||||
| 
 | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "Open In : Firefox" -dmenu -selected-row 0)" | ||||
| case $chosen in | ||||
|     $google) | ||||
|         firefox --new-tab https://www.google.com | ||||
|         ;; | ||||
|     $facebook) | ||||
|         firefox --new-tab https://www.facebook.com | ||||
|         ;; | ||||
|     $twitter) | ||||
|         firefox --new-tab https://www.twitter.com | ||||
|         ;; | ||||
|     $github) | ||||
|         firefox --new-tab https://www.github.com | ||||
|         ;; | ||||
|     $reddit) | ||||
|         firefox --new-tab https://www.reddit.com | ||||
|         ;; | ||||
|     $youtube) | ||||
|         firefox --new-tab https://www.youtube.com | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										30
									
								
								.config/rofi/scripts/menu_screenshot.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										30
									
								
								.config/rofi/scripts/menu_screenshot.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,30 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/screenshot.rasi" | ||||
| 
 | ||||
| # Options | ||||
| screen="" | ||||
| area="" | ||||
| window="" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$screen\n$area\n$window" | ||||
| 
 | ||||
| chosen="$(echo -e "$options" | $rofi_command -p 'scrot' -dmenu -selected-row 1)" | ||||
| case $chosen in | ||||
|     $screen) | ||||
|         sleep 1; scrot 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f' | ||||
|         ;; | ||||
|     $area) | ||||
|         scrot -s 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f' | ||||
|         ;; | ||||
|     $window) | ||||
|         sleep 1; scrot -u 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f' | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										21
									
								
								.config/rofi/scripts/menu_time.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										21
									
								
								.config/rofi/scripts/menu_time.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,21 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/time.rasi" | ||||
| 
 | ||||
| ## Get time and date | ||||
| TIME="$(date +"%I:%M %p")" | ||||
| DN=$(date +"%A") | ||||
| MN=$(date +"%B") | ||||
| DAY="$(date +"%d")" | ||||
| MONTH="$(date +"%m")" | ||||
| YEAR="$(date +"%Y")" | ||||
| 
 | ||||
| options="$DAY\n$MONTH\n$YEAR" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "  at $TIME on $DN in $MN" -dmenu -selected-row 1)" | ||||
							
								
								
									
										49
									
								
								.config/rofi/scripts/menu_volume.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										49
									
								
								.config/rofi/scripts/menu_volume.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,49 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/menu/volume.rasi" | ||||
| 
 | ||||
| ## Get Volume | ||||
| #VOLUME=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%') | ||||
| MUTE=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $6}' | tr -d '[]%') | ||||
| 
 | ||||
| active="" | ||||
| urgent="" | ||||
| 
 | ||||
| if [[ $MUTE == *"off"* ]]; then | ||||
|     active="-a 1" | ||||
| else | ||||
|     urgent="-u 1" | ||||
| fi | ||||
| 
 | ||||
| if [[ $MUTE == *"on"* ]]; then | ||||
|     VOLUME="$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%')%" | ||||
| else | ||||
|     VOLUME="Muted" | ||||
| fi | ||||
| 
 | ||||
| ## Icons | ||||
| ICON_UP="ﱛ" | ||||
| ICON_DOWN="ﱜ" | ||||
| ICON_MUTED="ﱝ" | ||||
| 
 | ||||
| options="$ICON_UP\n$ICON_MUTED\n$ICON_DOWN" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "$VOLUME" -dmenu $active $urgent -selected-row 0)" | ||||
| case $chosen in | ||||
|     $ICON_UP) | ||||
|         amixer -Mq set Master,0 5%+ unmute && notify-send -u low -t 1500 "Volume Up $ICON_UP" | ||||
|         ;; | ||||
|     $ICON_DOWN) | ||||
|         amixer -Mq set Master,0 5%- unmute && notify-send -u low -t 1500 "Volume Down $ICON_DOWN" | ||||
|         ;; | ||||
|     $ICON_MUTED) | ||||
|         amixer -q set Master toggle | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										70
									
								
								.config/rofi/scripts/mpd.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										70
									
								
								.config/rofi/scripts/mpd.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,70 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/mpd.rasi" | ||||
| 
 | ||||
| # Gets the current status of mpd (for us to parse it later on) | ||||
| status="$(mpc status)" | ||||
| # Defines the Play / Pause option content | ||||
| if [[ $status == *"[playing]"* ]]; then | ||||
|     play_pause="" | ||||
| else | ||||
|     play_pause="" | ||||
| fi | ||||
| active="" | ||||
| urgent="" | ||||
| 
 | ||||
| # Display if repeat mode is on / off | ||||
| tog_repeat="凌" | ||||
| if [[ $status == *"repeat: on"* ]]; then | ||||
|     active="-a 4" | ||||
| elif [[ $status == *"repeat: off"* ]]; then | ||||
|     urgent="-u 4" | ||||
| else | ||||
|     tog_repeat=" Parsing error" | ||||
| fi | ||||
| 
 | ||||
| # Display if random mode is on / off | ||||
| tog_random="" | ||||
| if [[ $status == *"random: on"* ]]; then | ||||
|     [ -n "$active" ] && active+=",5" || active="-a 5" | ||||
| elif [[ $status == *"random: off"* ]]; then | ||||
|     [ -n "$urgent" ] && urgent+=",5" || urgent="-u 5" | ||||
| else | ||||
|     tog_random=" Parsing error" | ||||
| fi | ||||
| stop="" | ||||
| next="" | ||||
| previous="" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$previous\n$play_pause\n$stop\n$next\n$tog_repeat\n$tog_random" | ||||
| 
 | ||||
| # Get the current playing song | ||||
| current=$(mpc -f %title% current) | ||||
| # If mpd isn't running it will return an empty string, we don't want to display that | ||||
| if [[ -z "$current" ]]; then | ||||
|     current="-" | ||||
| fi | ||||
| 
 | ||||
| # Spawn the mpd menu with the "Play / Pause" entry selected by default | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "  $current" -dmenu $active $urgent -selected-row 1)" | ||||
| case $chosen in | ||||
|     $previous) | ||||
|         mpc -q prev && notify-send -u low -t 1800 " $(mpc current)" | ||||
|         ;; | ||||
|     $play_pause) | ||||
|         mpc -q toggle && notify-send -u low -t 1800 " $(mpc current)" | ||||
|         ;; | ||||
|     $stop) | ||||
|         mpc -q stop | ||||
|         ;; | ||||
|     $next) | ||||
|         mpc -q next && notify-send -u low -t 1800 " $(mpc current)" | ||||
|         ;; | ||||
|     $tog_repeat) | ||||
|         mpc -q repeat | ||||
|         ;; | ||||
|     $tog_random) | ||||
|         mpc -q random | ||||
|         ;; | ||||
| esac | ||||
							
								
								
									
										65
									
								
								.config/rofi/scripts/network.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										65
									
								
								.config/rofi/scripts/network.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,65 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/network.rasi" | ||||
| 
 | ||||
| ## Get info | ||||
| IFACE="$(nmcli | grep -i interface | awk '/interface/ {print $2}')" | ||||
| #SSID="$(iwgetid -r)" | ||||
| #LIP="$(nmcli | grep -i server | awk '/server/ {print $2}')" | ||||
| #PIP="$(dig +short myip.opendns.com @resolver1.opendns.com )" | ||||
| STATUS="$(nmcli radio wifi)" | ||||
| 
 | ||||
| active="" | ||||
| urgent="" | ||||
| 
 | ||||
| if (ping -c 1 archlinux.org || ping -c 1 google.com || ping -c 1 bitbucket.org || ping -c 1 github.com || ping -c 1 sourceforge.net) &>/dev/null; then | ||||
| 	if [[ $STATUS == *"enable"* ]]; then | ||||
|         if [[ $IFACE == e* ]]; then | ||||
|             connected="" | ||||
|         else | ||||
|             connected="直" | ||||
|         fi | ||||
| 	active="-a 0" | ||||
| 	MSG=" Online" | ||||
| 	PIP="$(dig +short myip.opendns.com @resolver1.opendns.com )" | ||||
| 	fi | ||||
| else | ||||
|     urgent="-u 0" | ||||
|     MSG="Offline" | ||||
|     PIP="Not Available" | ||||
|     connected="睊" | ||||
| fi | ||||
| 
 | ||||
| ## Icons | ||||
| bmon="龍" | ||||
| launch_cli="" | ||||
| launch="歷" | ||||
| 
 | ||||
| options="$connected\n$bmon\n$launch_cli\n$launch" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "$MSG" -dmenu $active $urgent -selected-row 1)" | ||||
| case $chosen in | ||||
|     $connected) | ||||
| 		if [[ $STATUS == *"enable"* ]]; then | ||||
| 			nmcli radio wifi off | ||||
| 		else | ||||
| 			nmcli radio wifi on | ||||
| 		fi  | ||||
|         ;; | ||||
|     $bmon) | ||||
|         termite -e bmon | ||||
|         ;; | ||||
|     $launch_cli) | ||||
|         termite -e nmtui | ||||
|         ;; | ||||
|     $launch) | ||||
|         nm-connection-editor | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										41
									
								
								.config/rofi/scripts/powermenu.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										41
									
								
								.config/rofi/scripts/powermenu.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,41 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/powermenu.rasi" | ||||
| uptime=$(uptime -p | sed -e 's/up //g') | ||||
| 
 | ||||
| # Options | ||||
| shutdown="襤" | ||||
| reboot="ﰇ" | ||||
| lock="" | ||||
| suspend="鈴" | ||||
| logout="" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$shutdown\n$reboot\n$lock\n$suspend\n$logout" | ||||
| 
 | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "UP - $uptime" -dmenu -selected-row 2)" | ||||
| case $chosen in | ||||
|     $shutdown) | ||||
|         systemctl poweroff | ||||
|         ;; | ||||
|     $reboot) | ||||
|         systemctl reboot | ||||
|         ;; | ||||
|     $lock) | ||||
|         i3lock | ||||
|         ;; | ||||
|     $suspend) | ||||
|         mpc -q pause | ||||
|         amixer set Master mute | ||||
|         systemctl suspend | ||||
|         ;; | ||||
|     $logout) | ||||
|         openbox --exit | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										42
									
								
								.config/rofi/scripts/quicklinks.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										42
									
								
								.config/rofi/scripts/quicklinks.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,42 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/quicklinks.rasi" | ||||
| 
 | ||||
| # Links | ||||
| google="" | ||||
| facebook="" | ||||
| twitter="" | ||||
| github="" | ||||
| reddit="" | ||||
| youtube="" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$google\n$facebook\n$twitter\n$github\n$reddit\n$youtube" | ||||
| 
 | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "Open In  :  Firefox" -dmenu -selected-row 0)" | ||||
| case $chosen in | ||||
|     $google) | ||||
|         firefox --new-tab https://www.google.com | ||||
|         ;; | ||||
|     $facebook) | ||||
|         firefox --new-tab https://www.facebook.com | ||||
|         ;; | ||||
|     $twitter) | ||||
|         firefox --new-tab https://www.twitter.com | ||||
|         ;; | ||||
|     $github) | ||||
|         firefox --new-tab https://www.github.com | ||||
|         ;; | ||||
|     $reddit) | ||||
|         firefox --new-tab https://www.reddit.com | ||||
|         ;; | ||||
|     $youtube) | ||||
|         firefox --new-tab https://www.youtube.com | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										30
									
								
								.config/rofi/scripts/screenshot.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										30
									
								
								.config/rofi/scripts/screenshot.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,30 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/screenshot.rasi" | ||||
| 
 | ||||
| # Options | ||||
| screen="" | ||||
| area="" | ||||
| window="" | ||||
| 
 | ||||
| # Variable passed to rofi | ||||
| options="$screen\n$area\n$window" | ||||
| 
 | ||||
| chosen="$(echo -e "$options" | $rofi_command -p '' -dmenu -selected-row 1)" | ||||
| case $chosen in | ||||
|     $screen) | ||||
|         sleep 1; scrot 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f' | ||||
|         ;; | ||||
|     $area) | ||||
|         scrot -s 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f' | ||||
|         ;; | ||||
|     $window) | ||||
|         sleep 1; scrot -u 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f' | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										19
									
								
								.config/rofi/scripts/time.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										19
									
								
								.config/rofi/scripts/time.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,19 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/time.rasi" | ||||
| 
 | ||||
| ## Get time and date | ||||
| TIME="$(date +"%A, %I:%M %p")" | ||||
| DAY="$(date +"%d")" | ||||
| MONTH="$(date +"%m")" | ||||
| YEAR="$(date +"%Y")" | ||||
| 
 | ||||
| options="$DAY\n$MONTH\n$YEAR" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "  $TIME" -dmenu -selected-row 1)" | ||||
							
								
								
									
										55
									
								
								.config/rofi/scripts/volume.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										55
									
								
								.config/rofi/scripts/volume.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,55 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| ## Author : Aditya Shakya (adi1090x) | ||||
| ## Mail : adi1090x@gmail.com | ||||
| ## Github : @adi1090x | ||||
| ## Reddit : @adi1090x | ||||
| 
 | ||||
| rofi_command="rofi -theme themes/volume.rasi" | ||||
| 
 | ||||
| ## Get Volume | ||||
| #VOLUME=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%') | ||||
| MUTE=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $6}' | tr -d '[]%') | ||||
| 
 | ||||
| active="" | ||||
| urgent="" | ||||
| 
 | ||||
| if [[ $MUTE == *"off"* ]]; then | ||||
|     active="-a 1" | ||||
| else | ||||
|     urgent="-u 1" | ||||
| fi | ||||
| 
 | ||||
| if [[ $MUTE == *"off"* ]]; then | ||||
|     active="-a 1" | ||||
| else | ||||
|     urgent="-u 1" | ||||
| fi | ||||
| 
 | ||||
| if [[ $MUTE == *"on"* ]]; then | ||||
|     VOLUME="$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%')%" | ||||
| else | ||||
|     VOLUME="Mu..." | ||||
| fi | ||||
| 
 | ||||
| ## Icons | ||||
| ICON_UP="ﱛ" | ||||
| ICON_DOWN="ﱜ" | ||||
| ICON_MUTED="ﱝ" | ||||
| 
 | ||||
| options="$ICON_UP\n$ICON_MUTED\n$ICON_DOWN" | ||||
| 
 | ||||
| ## Main | ||||
| chosen="$(echo -e "$options" | $rofi_command -p "$VOLUME" -dmenu $active $urgent -selected-row 0)" | ||||
| case $chosen in | ||||
|     $ICON_UP) | ||||
|         amixer -Mq set Master,0 5%+ unmute && notify-send -u low -t 1500 "Volume Up $ICON_UP" | ||||
|         ;; | ||||
|     $ICON_DOWN) | ||||
|         amixer -Mq set Master,0 5%- unmute && notify-send -u low -t 1500 "Volume Down $ICON_DOWN" | ||||
|         ;; | ||||
|     $ICON_MUTED) | ||||
|         amixer -q set Master toggle | ||||
|         ;; | ||||
| esac | ||||
| 
 | ||||
							
								
								
									
										35
									
								
								.config/rofi/themes/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								.config/rofi/themes/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | ||||
| #### fancy | ||||
|  | ||||
| 
 | ||||
| #### flat-orange | ||||
|  | ||||
| 
 | ||||
| #### oxide | ||||
|  | ||||
| 
 | ||||
| #### solarized-darker | ||||
|  | ||||
| 
 | ||||
| #### sidetab | ||||
|  | ||||
| 
 | ||||
| #### material | ||||
|  | ||||
| 
 | ||||
| #### arc-red-dark | ||||
|  | ||||
| 
 | ||||
| #### onedark | ||||
|  | ||||
| 
 | ||||
| #### ribbon | ||||
|  | ||||
| 
 | ||||
| #### rezlooks | ||||
|  | ||||
| 
 | ||||
| #### slate | ||||
|  | ||||
| 
 | ||||
| #### flamingo | ||||
|  | ||||
							
								
								
									
										124
									
								
								.config/rofi/themes/apps.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										124
									
								
								.config/rofi/themes/apps.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,124 @@ | ||||
| /* | ||||
|  * | ||||
|  * Author : Aditya Shakya (adi1090x) | ||||
|  * Mail : adi1090x@gmail.com | ||||
|  * Github : @adi1090x | ||||
|  * Reddit : @adi1090x | ||||
|  * | ||||
|  */ | ||||
| 
 | ||||
| @import "colors.rasi" | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| * { | ||||
|   /* General */ | ||||
|   text-font:                            "Comfortaa 12"; | ||||
|   icon-font:                            "Hurmit Nerd Font Mono 32"; | ||||
|   icon-font-small:                      "Hurmit Nerd Font Mono 24"; | ||||
| 
 | ||||
|   option-6-listview-spacing:            10px; | ||||
| 
 | ||||
|   menu-window-padding:                   5px 15px; | ||||
|   menu-inputbar-margin:                  10px 0px; | ||||
|   menu-prompt-padding:                   10px 20px 10px 20px; | ||||
|   menu-prompt-margin:                    0px 0px 0px -2px; | ||||
|   menu-element-border:                   10px; | ||||
|   menu-element-padding:                  3px 8px -1px -40px; | ||||
| } | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| #window { | ||||
|   width: 34.5%; | ||||
|   height: 20%; | ||||
| } | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| * { | ||||
|   background-color: @background; | ||||
|   text-color: @foreground; | ||||
|   font: @icon-font; | ||||
| } | ||||
| 
 | ||||
| #horibox { | ||||
|   children: [ listview ]; | ||||
| } | ||||
| #listview { | ||||
|   layout: horizontal; | ||||
| } | ||||
| #element { | ||||
|   padding: @option-element-padding; | ||||
|   background-color: @background-light; | ||||
| } | ||||
| #element.selected { | ||||
|   background-color: @accent; | ||||
|   text-color: @background; | ||||
| } | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| * { | ||||
|   font: @text-font; | ||||
| } | ||||
| #window { | ||||
|   padding: @menu-window-padding; | ||||
|   children: [ inputbar, horibox ]; | ||||
| } | ||||
| #inputbar { | ||||
|   children: [ textbox-prompt-colon, prompt ]; | ||||
|   margin: @menu-inputbar-margin; | ||||
| } | ||||
| prompt, | ||||
| textbox-prompt-colon { | ||||
|   padding: @menu-prompt-padding; | ||||
|   border: 2px; | ||||
|   border-color: @accent; | ||||
| } | ||||
| #prompt { | ||||
|   margin: @menu-prompt-margin; | ||||
|   background-color: @background-light; | ||||
|   text-color: @accent; | ||||
| } | ||||
| #textbox-prompt-colon { | ||||
|   expand: false; | ||||
|   str: "Apps"; | ||||
|   background-color: @accent; | ||||
|   text-color: @background; | ||||
| } | ||||
| #horibox { | ||||
|   padding: 0px; | ||||
| } | ||||
| #listview { | ||||
|   spacing: @option-6-listview-spacing; | ||||
|   lines: 6; | ||||
| } | ||||
| #element { | ||||
|   font: @icon-font; | ||||
|   border: @menu-element-border; | ||||
|   padding: @menu-element-padding; | ||||
|   border-color: @background-light; | ||||
| } | ||||
| #element.selected { | ||||
|   border-color: @accent; | ||||
| } | ||||
| element.active, | ||||
| element.selected.urgent { | ||||
|   background-color: @on; | ||||
|   text-color: @background; | ||||
|   border-color: @on; | ||||
| } | ||||
| element.selected.urgent { | ||||
|   border-color: @accent; | ||||
| } | ||||
| element.urgent, | ||||
| element.selected.active { | ||||
|   background-color: @off; | ||||
|   text-color: @background; | ||||
|   border-color: @off; | ||||
| } | ||||
| element.selected.active { | ||||
|   border-color: @accent; | ||||
| } | ||||
| 
 | ||||
							
								
								
									
										137
									
								
								.config/rofi/themes/arc-red-dark.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										137
									
								
								.config/rofi/themes/arc-red-dark.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,137 @@ | ||||
| /* | ||||
|  * ROFI Color theme | ||||
|  * A red variation of Arc-Dark theme by leofa, based on arc-theme-Red (https://github.com/mclmza/arc-theme-Red) | ||||
|  * User: wikwg9 | ||||
|  */ | ||||
| * { | ||||
|     selected-normal-foreground:  rgba ( 249, 249, 249, 100 % ); | ||||
|     foreground:                  rgba ( 196, 203, 212, 100 % ); | ||||
|     normal-foreground:           @foreground; | ||||
|     alternate-normal-background: rgba ( 64, 69, 82, 59 % ); | ||||
|     red:                         rgba ( 220, 50, 47, 100 % ); | ||||
|     selected-urgent-foreground:  rgba ( 249, 249, 249, 100 % ); | ||||
|     blue:                        rgba ( 38, 139, 210, 100 % ); | ||||
|     urgent-foreground:           rgba ( 204, 102, 102, 100 % ); | ||||
|     alternate-urgent-background: rgba ( 75, 81, 96, 90 % ); | ||||
|     active-foreground:           rgba ( 220, 140, 160, 100 % ); | ||||
|     lightbg:                     rgba ( 238, 232, 213, 100 % ); | ||||
|     selected-active-foreground:  rgba ( 249, 249, 249, 100 % ); | ||||
|     alternate-active-background: rgba ( 75, 81, 96, 89 % ); | ||||
|     background:                  rgba ( 45, 48, 59, 95 % ); | ||||
|     alternate-normal-foreground: @foreground; | ||||
|     normal-background:           @background; | ||||
|     lightfg:                     rgba ( 88, 104, 117, 100 % ); | ||||
|     selected-normal-background:  rgba ( 204, 87, 93, 100 % ); | ||||
|     border-color:                rgba ( 137, 131, 124, 100 % ); | ||||
|     spacing:                     2; | ||||
|     separatorcolor:              rgba ( 29, 31, 33, 100 % ); | ||||
|     urgent-background:           rgba ( 29, 31, 33, 17 % ); | ||||
|     selected-urgent-background:  rgba ( 165, 66, 66, 100 % ); | ||||
|     alternate-urgent-foreground: @urgent-foreground; | ||||
|     background-color:            rgba ( 0, 0, 0, 0 % ); | ||||
|     alternate-active-foreground: @active-foreground; | ||||
|     active-background:           rgba ( 29, 31, 33, 17 % ); | ||||
|     selected-active-background:  rgba ( 204, 87, 93, 100 % ); | ||||
| } | ||||
| #window { | ||||
|     background-color: @background; | ||||
|     padding:          5; | ||||
| } | ||||
| #mainbox { | ||||
|     border:  0; | ||||
|     padding: 0; | ||||
| } | ||||
| #message { | ||||
|     border:       2px 0px 0px ; | ||||
|     border-color: @separatorcolor; | ||||
|     padding:      1px ; | ||||
| } | ||||
| #textbox { | ||||
|     text-color: @foreground; | ||||
| } | ||||
| #listview { | ||||
|     fixed-height: 0; | ||||
|     border:       2px 0px 0px ; | ||||
|     border-color: @separatorcolor; | ||||
|     spacing:      2px ; | ||||
|     scrollbar:    false; | ||||
|     padding:      2px 0px 0px ; | ||||
| } | ||||
| #element { | ||||
|     border:  0; | ||||
|     padding: 1px ; | ||||
| } | ||||
| #element.normal.normal { | ||||
|     background-color: @normal-background; | ||||
|     text-color:       @normal-foreground; | ||||
| } | ||||
| #element.normal.urgent { | ||||
|     background-color: @urgent-background; | ||||
|     text-color:       @urgent-foreground; | ||||
| } | ||||
| #element.normal.active { | ||||
|     background-color: @active-background; | ||||
|     text-color:       @active-foreground; | ||||
| } | ||||
| #element.selected.normal { | ||||
|     background-color: @selected-normal-background; | ||||
|     text-color:       @selected-normal-foreground; | ||||
| } | ||||
| #element.selected.urgent { | ||||
|     background-color: @selected-urgent-background; | ||||
|     text-color:       @selected-urgent-foreground; | ||||
| } | ||||
| #element.selected.active { | ||||
|     background-color: @selected-active-background; | ||||
|     text-color:       @selected-active-foreground; | ||||
| } | ||||
| #element.alternate.normal { | ||||
|     background-color: @alternate-normal-background; | ||||
|     text-color:       @alternate-normal-foreground; | ||||
| } | ||||
| #element.alternate.urgent { | ||||
|     background-color: @alternate-urgent-background; | ||||
|     text-color:       @alternate-urgent-foreground; | ||||
| } | ||||
| #element.alternate.active { | ||||
|     background-color: @alternate-active-background; | ||||
|     text-color:       @alternate-active-foreground; | ||||
| } | ||||
| #mode-switcher { | ||||
|     border:       2px 0px 0px ; | ||||
|     border-color: @separatorcolor; | ||||
| } | ||||
| #button { | ||||
|     spacing:    0; | ||||
|     text-color: @normal-foreground; | ||||
| } | ||||
| #button.selected { | ||||
|     background-color: @selected-normal-background; | ||||
|     text-color:       @selected-normal-foreground; | ||||
| } | ||||
| #inputbar { | ||||
|     spacing:    0; | ||||
|     text-color: @normal-foreground; | ||||
|     padding:    1px ; | ||||
| } | ||||
| #case-indicator { | ||||
|     spacing:    0; | ||||
|     text-color: @normal-foreground; | ||||
| } | ||||
| #entry { | ||||
|     spacing:    0; | ||||
|     text-color: @normal-foreground; | ||||
| } | ||||
| #prompt { | ||||
|     spacing:    0; | ||||
|     text-color: @normal-foreground; | ||||
| } | ||||
| #inputbar { | ||||
|     children:   [ prompt,textbox-prompt-colon,entry,case-indicator ]; | ||||
| } | ||||
| #textbox-prompt-colon { | ||||
|     expand:     false; | ||||
|     str:        ":"; | ||||
|     margin:     0px 0.3em 0em 0em ; | ||||
|     text-color: @normal-foreground; | ||||
| } | ||||
							
								
								
									
										124
									
								
								.config/rofi/themes/backlight.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										124
									
								
								.config/rofi/themes/backlight.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,124 @@ | ||||
| /* | ||||
|  * | ||||
|  * Author : Aditya Shakya (adi1090x) | ||||
|  * Mail : adi1090x@gmail.com | ||||
|  * Github : @adi1090x | ||||
|  * Reddit : @adi1090x | ||||
|  * | ||||
|  */ | ||||
| 
 | ||||
| @import "colors.rasi" | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| * { | ||||
|   /* General */ | ||||
|   text-font:                            "Comfortaa 12"; | ||||
|   icon-font:                            "Hurmit Nerd Font Mono 32"; | ||||
|   icon-font-small:                      "Hurmit Nerd Font Mono 24"; | ||||
| 
 | ||||
|   option-6-listview-spacing:            10px; | ||||
| 
 | ||||
|   menu-window-padding:                   5px 15px; | ||||
|   menu-inputbar-margin:                  10px 0px; | ||||
|   menu-prompt-padding:                   10px 20px 10px 20px; | ||||
|   menu-prompt-margin:                    0px 0px 0px -2px; | ||||
|   menu-element-border:                   10px; | ||||
|   menu-element-padding:                  3px 8px -1px -40px; | ||||
| } | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| #window { | ||||
|   width: 18%; | ||||
|   height: 20%; | ||||
| } | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| * { | ||||
|   background-color: @background; | ||||
|   text-color: @foreground; | ||||
|   font: @icon-font; | ||||
| } | ||||
| 
 | ||||
| #horibox { | ||||
|   children: [ listview ]; | ||||
| } | ||||
| #listview { | ||||
|   layout: horizontal; | ||||
| } | ||||
| #element { | ||||
|   padding: @option-element-padding; | ||||
|   background-color: @background-light; | ||||
| } | ||||
| #element.selected { | ||||
|   background-color: @accent; | ||||
|   text-color: @background; | ||||
| } | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| * { | ||||
|   font: @text-font; | ||||
| } | ||||
| #window { | ||||
|   padding: @menu-window-padding; | ||||
|   children: [ inputbar, horibox ]; | ||||
| } | ||||
| #inputbar { | ||||
|   children: [ textbox-prompt-colon, prompt ]; | ||||
|   margin: @menu-inputbar-margin; | ||||
| } | ||||
| prompt, | ||||
| textbox-prompt-colon { | ||||
|   padding: @menu-prompt-padding; | ||||
|   border: 2px; | ||||
|   border-color: @accent; | ||||
| } | ||||
| #prompt { | ||||
|   margin: @menu-prompt-margin; | ||||
|   background-color: @background-light; | ||||
|   text-color: @accent; | ||||
| } | ||||
| #textbox-prompt-colon { | ||||
|   expand: false; | ||||
|   str: "Brightness"; | ||||
|   background-color: @accent; | ||||
|   text-color: @background; | ||||
| } | ||||
| #horibox { | ||||
|   padding: 0px; | ||||
| } | ||||
| #listview { | ||||
|   spacing: @option-6-listview-spacing; | ||||
|   lines: 3; | ||||
| } | ||||
| #element { | ||||
|   font: @icon-font; | ||||
|   border: @menu-element-border; | ||||
|   padding: @menu-element-padding; | ||||
|   border-color: @background-light; | ||||
| } | ||||
| #element.selected { | ||||
|   border-color: @accent; | ||||
| } | ||||
| element.active, | ||||
| element.selected.urgent { | ||||
|   background-color: @on; | ||||
|   text-color: @background; | ||||
|   border-color: @on; | ||||
| } | ||||
| element.selected.urgent { | ||||
|   border-color: @accent; | ||||
| } | ||||
| element.urgent, | ||||
| element.selected.active { | ||||
|   background-color: @off; | ||||
|   text-color: @background; | ||||
|   border-color: @off; | ||||
| } | ||||
| element.selected.active { | ||||
|   border-color: @accent; | ||||
| } | ||||
| 
 | ||||
							
								
								
									
										127
									
								
								.config/rofi/themes/battery.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										127
									
								
								.config/rofi/themes/battery.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,127 @@ | ||||
| /* | ||||
|  * | ||||
|  * Author : Aditya Shakya (adi1090x) | ||||
|  * Mail : adi1090x@gmail.com | ||||
|  * Github : @adi1090x | ||||
|  * Reddit : @adi1090x | ||||
|  * | ||||
|  */ | ||||
| 
 | ||||
| @import "colors.rasi" | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| * { | ||||
|   /* General */ | ||||
|   text-font:                            "Comfortaa 12"; | ||||
|   icon-font:                            "Hurmit Nerd Font Mono 32"; | ||||
|   icon-font-small:                      "Hurmit Nerd Font Mono 24"; | ||||
| 
 | ||||
|   option-6-listview-spacing:            10px; | ||||
| 
 | ||||
|   menu-window-padding:                   5px 15px; | ||||
|   menu-inputbar-margin:                  10px 0px; | ||||
|   menu-prompt-padding:                   10px 20px 10px 20px; | ||||
|   menu-prompt-margin:                    0px 0px 0px -2px; | ||||
|   menu-element-border:                   0px; | ||||
|   menu-element-padding:                  10px 15px 5px -35px; | ||||
| } | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| #window { | ||||
|   width: 16.5%; | ||||
|   height: 19%; | ||||
| } | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| * { | ||||
|   background-color: @background; | ||||
|   text-color: @foreground; | ||||
|   font: @icon-font; | ||||
| } | ||||
| 
 | ||||
| #horibox { | ||||
|   children: [ listview ]; | ||||
| } | ||||
| #listview { | ||||
|   layout: horizontal; | ||||
| } | ||||
| #element { | ||||
|   padding: @option-element-padding; | ||||
|   background-color: @background-light; | ||||
| } | ||||
| #element.selected { | ||||
|   background-color: @accent; | ||||
|   text-color: @background; | ||||
| } | ||||
| 
 | ||||
| /* ########### */ | ||||
| 
 | ||||
| * { | ||||
|   font: @text-font; | ||||
| } | ||||
| #window { | ||||
|   padding: @menu-window-padding; | ||||
|   children: [ inputbar, horibox ]; | ||||
| } | ||||
| #inputbar { | ||||
|   children: [ textbox-prompt-colon, prompt ]; | ||||
|   margin: @menu-inputbar-margin; | ||||
| } | ||||
| prompt, | ||||
| textbox-prompt-colon { | ||||
|   padding: @menu-prompt-padding; | ||||
|   border: 2px; | ||||
|   border-color: @accent; | ||||
| } | ||||
| #prompt { | ||||
|   margin: @menu-prompt-margin; | ||||
|   background-color: @background-light; | ||||
|   text-color: @accent; | ||||
| } | ||||
| #textbox-prompt-colon { | ||||
|   expand: false; | ||||
|   str: "Battery"; | ||||
|   background-color: @accent; | ||||
|   text-color: @background; | ||||
| } | ||||
| #horibox { | ||||
|   padding: 0px; | ||||
| } | ||||
| #listview { | ||||
|   spacing: @option-6-listview-spacing; | ||||
|   lines: 3; | ||||
| } | ||||
| #element { | ||||
|   font: @icon-font; | ||||
|   border: @menu-element-border; | ||||
|   padding: @menu-element-padding; | ||||
|   border-color: @background-light; | ||||
| } | ||||
| #element.selected { | ||||
|   border-color: @accent; | ||||
| } | ||||
| element.active { | ||||
|   background-color: @on; | ||||
|   text-color: @background; | ||||
|   border-color: @on; | ||||
| } | ||||
| element.selected.urgent { | ||||
|   background-color: @off; | ||||
|   text-color: @background; | ||||
|   border-color: @accent; | ||||
| } | ||||
| element.urgent, | ||||
| element.selected.active { | ||||
|   background-color: @off; | ||||
|   text-color: @background; | ||||
|   border-color: @off; | ||||
| } | ||||
| element.selected.active { | ||||
|   background-color: @on; | ||||
|   text-color: @background; | ||||
|   border-color: @accent; | ||||
| } | ||||
| 
 | ||||
							
								
								
									
										22
									
								
								.config/rofi/themes/colors.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								.config/rofi/themes/colors.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,22 @@ | ||||
| /* | ||||
|  * Change the colorscheme for every menu simply by editing this file... | ||||
|  * | ||||
|  * Available Color Schemes | ||||
|  * // Dark | ||||
|  * material-dark/amber			material-dark/blue		material-dark/blue_grey		material-dark/brown		material-dark/cyan			material-dark/deep_orange | ||||
|  * material-dark/deep_purple	material-dark/green		material-dark/grey			material-dark/indigo	material-dark/light_blue	material-dark/light_green | ||||
|  * material-dark/lime			material-dark/orange	material-dark/pink			material-dark/purple	material-dark/red			material-dark/teal | ||||
|  * material-dark/yellow | ||||
|  * // Light | ||||
|  * material-light/amber			material-light/blue			material-light/blue_grey		material-light/brown		material-light/cyan			material-light/deep_orange | ||||
|  * material-light/deep_purple	material-light/green		material-light/grey				material-light/indigo		material-light/light_blue	material-light/light_green | ||||
|  * material-light/lime			material-light/orange		material-light/pink				material-light/purple		material-light/red			material-light/teal | ||||
|  * material-light/yellow | ||||
|  * | ||||
|  * // Other | ||||
|  * adapta, adapta-nokto, arc, arc-dark, adwaita, gruvbox, dark | ||||
|  * armchair, darkpink, fresh, inside, party, sirin | ||||
|  * | ||||
|  */ | ||||
| 
 | ||||
| @import "colorschemes/dark.rasi" | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/adapta-nokto.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/adapta-nokto.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #00BCD4; | ||||
|   background:       #263238; | ||||
|   background-light: #293840; | ||||
|   foreground:       #E7E8EB; | ||||
|   on:               #44ad4d; | ||||
|   off:              #e34039; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/adapta.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/adapta.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #00ADC2; | ||||
|   background:       #FFFFFF; | ||||
|   background-light: #E7E7E7; | ||||
|   foreground:       #535353; | ||||
|   on:               #44ad4d; | ||||
|   off:              #e34039; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/adwaita.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/adwaita.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #2E6BB6; | ||||
|   background:       #2D2D2D; | ||||
|   background-light: #353535; | ||||
|   foreground:       #E7E8EB; | ||||
|   on:               #44ad4d; | ||||
|   off:              #e34039; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/arc-dark.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/arc-dark.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #6BA0DE; | ||||
|   background:       #383C4A; | ||||
|   background-light: #404552; | ||||
|   foreground:       #E4E4E4; | ||||
|   on:               #44ad4d; | ||||
|   off:              #e34039; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/arc.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/arc.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #5294E2; | ||||
|   background:       #FFFFFF; | ||||
|   background-light: #E7E8EB; | ||||
|   foreground:       #333333; | ||||
|   on:               #44ad4d; | ||||
|   off:              #e34039; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/armchair.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/armchair.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #E85A50; | ||||
|   background:       #EAE8DC; | ||||
|   background-light: #E4D9C8; | ||||
|   foreground:       #8E8D89; | ||||
|   on:               #66bb6a; | ||||
|   off:              #F68887; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/dark.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/dark.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #A9C03F; | ||||
|   background:       #141c21; | ||||
|   background-light: #1C252A; | ||||
|   foreground:       #93a1a1; | ||||
|   on:               #5BB462; | ||||
|   off:              #DE635E; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/darkpink.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/darkpink.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #F75176; | ||||
|   background:       #414656; | ||||
|   background-light: #4B5060; | ||||
|   foreground:       #F2F7E3; | ||||
|   on:               #CDF0D9; | ||||
|   off:              #FF796A; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/fresh.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/fresh.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #043968; | ||||
|   background:       #5CDB94; | ||||
|   background-light: #59C78A; | ||||
|   foreground:       #303030; | ||||
|   on:               #2e7d32; | ||||
|   off:              #d32f2f; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/gruvbox.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/gruvbox.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #83a598; | ||||
|   background:       #282828; | ||||
|   background-light: #303030; | ||||
|   foreground:       #ebdbb2; | ||||
|   on:               #44ad4d; | ||||
|   off:              #fb4934; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/inside.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/inside.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #C7493A; | ||||
|   background:       #151515; | ||||
|   background-light: #202020; | ||||
|   foreground:       #AD8174; | ||||
|   on:               #689775; | ||||
|   off:              #A33327; | ||||
| } | ||||
| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #ffc107; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/material-dark/blue.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/material-dark/blue.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #1e88e5; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #607d8b; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #8d6e63; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/material-dark/cyan.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/material-dark/cyan.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #26c6da; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #ff5722; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #7e57c2; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #4caf50; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #a5d6a7; | ||||
|   off:              #ef5350; | ||||
| } | ||||
							
								
								
									
										8
									
								
								.config/rofi/themes/colorschemes/material-dark/grey.rasi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.config/rofi/themes/colorschemes/material-dark/grey.rasi
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #9e9e9e; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #5c6bc0; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #039be5; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #66bb6a; | ||||
|   off:              #ef5350; | ||||
| } | ||||
| @ -0,0 +1,8 @@ | ||||
| * { | ||||
|   accent:           #8bc34a; | ||||
|   background:       #212121; | ||||
|   background-light: #272727; | ||||
|   foreground:       #bdbdbd; | ||||
|   on:               #4caf50; | ||||
|   off:              #ef5350; | ||||
| } | ||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user