├── .config ├── mpd │ ├── pid │ ├── mpd.conf │ └── state ├── compton.conf ├── ncmpcpp │ └── error.log ├── mutt │ ├── .mailsynclastrun │ ├── mailcap │ ├── rangerpick │ ├── saveAttachement │ └── muttrc ├── ranger │ ├── plugins │ │ └── __init__.py │ └── rc.conf ├── nvim │ ├── .gitignore │ ├── after │ │ └── plugin │ │ │ ├── octo.lua │ │ │ ├── netrw.vim │ │ │ ├── todo.lua │ │ │ ├── commentry.vim │ │ │ ├── jdtls.vim │ │ │ ├── xresources.vim │ │ │ ├── setfiletype.vim │ │ │ ├── formatter.lua │ │ │ ├── on_yank.vim │ │ │ ├── git.vim │ │ │ ├── zen.lua │ │ │ ├── spectre.vim │ │ │ ├── qf.vim │ │ │ ├── vsnip.vim │ │ │ ├── telescope.vim │ │ │ ├── ts_config.lua │ │ │ ├── completion.lua │ │ │ ├── lsputils.lua │ │ │ └── harpoon.vim │ ├── plugin │ │ ├── commands.vim │ │ ├── keymaps.vim │ │ └── options.lua │ ├── snippets │ │ └── tex.json │ ├── lua │ │ └── rd │ │ │ ├── globals.lua │ │ │ ├── formatter.lua │ │ │ ├── packer_download.lua │ │ │ ├── telescope.lua │ │ │ ├── colors.lua │ │ │ ├── stylua.lua │ │ │ ├── plugins.lua │ │ │ └── jdtls_config.lua │ └── init.lua ├── systemd │ ├── timers │ │ └── stamp-mail_sync.timer │ └── user │ │ ├── timers.target.wants │ │ └── mail_sync.timer │ │ ├── default.target.wants │ │ └── mail_sync.service │ │ ├── mail_sync.service │ │ └── mail_sync.timer ├── awesome │ ├── lain │ │ ├── icons │ │ │ ├── openweathermap │ │ │ │ ├── 04n.png │ │ │ │ ├── 09n.png │ │ │ │ ├── 10n.png │ │ │ │ ├── 11n.png │ │ │ │ ├── 13n.png │ │ │ │ ├── 50n.png │ │ │ │ ├── 01d.png │ │ │ │ ├── 01n.png │ │ │ │ ├── 02d.png │ │ │ │ ├── 02n.png │ │ │ │ ├── 03d.png │ │ │ │ ├── 03n.png │ │ │ │ ├── 04d.png │ │ │ │ ├── 09d.png │ │ │ │ ├── 10d.png │ │ │ │ ├── 11d.png │ │ │ │ ├── 13d.png │ │ │ │ ├── 50d.png │ │ │ │ ├── na.png │ │ │ │ └── README.md │ │ │ ├── mail.png │ │ │ ├── no_net.png │ │ │ ├── cal │ │ │ │ ├── black │ │ │ │ │ ├── 1.png │ │ │ │ │ ├── 2.png │ │ │ │ │ ├── 3.png │ │ │ │ │ ├── 4.png │ │ │ │ │ ├── 5.png │ │ │ │ │ ├── 6.png │ │ │ │ │ ├── 7.png │ │ │ │ │ ├── 8.png │ │ │ │ │ ├── 9.png │ │ │ │ │ ├── 10.png │ │ │ │ │ ├── 11.png │ │ │ │ │ ├── 12.png │ │ │ │ │ ├── 13.png │ │ │ │ │ ├── 14.png │ │ │ │ │ ├── 15.png │ │ │ │ │ ├── 16.png │ │ │ │ │ ├── 17.png │ │ │ │ │ ├── 18.png │ │ │ │ │ ├── 19.png │ │ │ │ │ ├── 20.png │ │ │ │ │ ├── 21.png │ │ │ │ │ ├── 22.png │ │ │ │ │ ├── 23.png │ │ │ │ │ ├── 24.png │ │ │ │ │ ├── 25.png │ │ │ │ │ ├── 26.png │ │ │ │ │ ├── 27.png │ │ │ │ │ ├── 28.png │ │ │ │ │ ├── 29.png │ │ │ │ │ ├── 30.png │ │ │ │ │ └── 31.png │ │ │ │ └── white │ │ │ │ │ ├── 1.png │ │ │ │ │ ├── 2.png │ │ │ │ │ ├── 3.png │ │ │ │ │ ├── 4.png │ │ │ │ │ ├── 5.png │ │ │ │ │ ├── 6.png │ │ │ │ │ ├── 7.png │ │ │ │ │ ├── 8.png │ │ │ │ │ ├── 9.png │ │ │ │ │ ├── 10.png │ │ │ │ │ ├── 11.png │ │ │ │ │ ├── 12.png │ │ │ │ │ ├── 13.png │ │ │ │ │ ├── 14.png │ │ │ │ │ ├── 15.png │ │ │ │ │ ├── 16.png │ │ │ │ │ ├── 17.png │ │ │ │ │ ├── 18.png │ │ │ │ │ ├── 19.png │ │ │ │ │ ├── 20.png │ │ │ │ │ ├── 21.png │ │ │ │ │ ├── 22.png │ │ │ │ │ ├── 23.png │ │ │ │ │ ├── 24.png │ │ │ │ │ ├── 25.png │ │ │ │ │ ├── 26.png │ │ │ │ │ ├── 27.png │ │ │ │ │ ├── 28.png │ │ │ │ │ ├── 29.png │ │ │ │ │ ├── 30.png │ │ │ │ │ └── 31.png │ │ │ ├── taskwarrior.png │ │ │ └── layout │ │ │ │ ├── default │ │ │ │ ├── cascade.png │ │ │ │ ├── cascadew.png │ │ │ │ ├── termfair.png │ │ │ │ ├── cascadetile.png │ │ │ │ ├── centerfair.png │ │ │ │ ├── centerfairw.png │ │ │ │ ├── centerwork.png │ │ │ │ ├── centerworkh.png │ │ │ │ ├── centerworkw.png │ │ │ │ ├── termfairw.png │ │ │ │ ├── cascadetilew.png │ │ │ │ └── centerworkhw.png │ │ │ │ └── zenburn │ │ │ │ ├── cascade.png │ │ │ │ ├── termfair.png │ │ │ │ ├── cascadetile.png │ │ │ │ ├── centerfair.png │ │ │ │ ├── centerwork.png │ │ │ │ └── centerworkh.png │ │ ├── .gitmodules │ │ ├── init.lua │ │ ├── widget │ │ │ ├── contrib │ │ │ │ ├── init.lua │ │ │ │ └── redshift.lua │ │ │ ├── init.lua │ │ │ ├── sysload.lua │ │ │ ├── temp.lua │ │ │ ├── alsa.lua │ │ │ ├── pulse.lua │ │ │ ├── mem.lua │ │ │ └── cpu.lua │ │ ├── layout │ │ │ └── init.lua │ │ ├── lain-scm-1.rockspec │ │ └── util │ │ │ └── markup.lua │ ├── awesome-wm-widgets │ │ ├── .github │ │ │ ├── FUNDING.yml │ │ │ └── workflows │ │ │ │ └── build.yml │ │ ├── cpu-widget │ │ │ ├── cpu-png │ │ │ ├── cpu.gif │ │ │ ├── custom.png │ │ │ └── README.md │ │ ├── ram-widget │ │ │ ├── out.gif │ │ │ └── README.md │ │ ├── todo-widget │ │ │ ├── todo.gif │ │ │ ├── chevron-down.svg │ │ │ ├── chevron-up.svg │ │ │ └── README.md │ │ ├── calendar-widget │ │ │ ├── dark.png │ │ │ ├── nord.png │ │ │ ├── light.png │ │ │ ├── outrun.png │ │ │ ├── calendar_top.png │ │ │ ├── calendar_top_right.png │ │ │ ├── calendar_bottom_right.png │ │ │ └── README.md │ │ ├── fs-widget │ │ │ ├── screenshot.png │ │ │ └── README.md │ │ ├── weather-widget │ │ │ ├── both.png │ │ │ ├── example1.png │ │ │ ├── example2.png │ │ │ ├── negative.png │ │ │ ├── weather-widget.png │ │ │ ├── icons │ │ │ │ ├── weather-underground-icons │ │ │ │ │ ├── mist.png │ │ │ │ │ ├── rain.png │ │ │ │ │ ├── snow.png │ │ │ │ │ ├── clear-sky.png │ │ │ │ │ ├── few-clouds.png │ │ │ │ │ ├── mist-night.png │ │ │ │ │ ├── rain-night.png │ │ │ │ │ ├── shower-rain.png │ │ │ │ │ ├── snow-night.png │ │ │ │ │ ├── broken-clouds.png │ │ │ │ │ ├── thunderstorm.png │ │ │ │ │ ├── clear-sky-night.png │ │ │ │ │ ├── few-clouds-night.png │ │ │ │ │ ├── scattered-clouds.png │ │ │ │ │ ├── shower-rain-night.png │ │ │ │ │ ├── thunderstorm-night.png │ │ │ │ │ ├── broken-clouds-night.png │ │ │ │ │ └── scattered-clouds-night.png │ │ │ │ └── VitalyGorbachev │ │ │ │ │ ├── clear-sky.svg │ │ │ │ │ ├── shower-rain.svg │ │ │ │ │ └── shower-rain-night.svg │ │ │ └── locale │ │ │ │ ├── en.lua │ │ │ │ └── fr.lua │ │ ├── batteryarc-widget │ │ │ ├── 10_c.png │ │ │ ├── 10_d.png │ │ │ ├── 20_c.png │ │ │ ├── 20_d.png │ │ │ ├── 80_c.png │ │ │ ├── 80_d.png │ │ │ ├── warning.png │ │ │ └── spaceman.jpg │ │ ├── translate-widget │ │ │ ├── demo.gif │ │ │ ├── demo1.gif │ │ │ └── README.MD │ │ ├── brightness-widget │ │ │ └── br-wid-1.png │ │ ├── logout-menu-widget │ │ │ ├── logout-menu.gif │ │ │ ├── icons │ │ │ │ ├── moon.svg │ │ │ │ ├── power.svg │ │ │ │ ├── power_w.svg │ │ │ │ ├── lock.svg │ │ │ │ ├── log-out.svg │ │ │ │ └── refresh-cw.svg │ │ │ └── README.md │ │ ├── github-activity-widget │ │ │ ├── screenshot.png │ │ │ └── icons │ │ │ │ ├── github.png │ │ │ │ ├── message-square.svg │ │ │ │ ├── star.svg │ │ │ │ ├── alert-circle.svg │ │ │ │ ├── git-branch.svg │ │ │ │ ├── git-pull-request.svg │ │ │ │ └── repo.svg │ │ ├── volume-widget │ │ │ ├── screenshots │ │ │ │ ├── variations.png │ │ │ │ └── volume-sink-sources.png │ │ │ ├── volume-2.svg │ │ │ └── widgets │ │ │ │ ├── arc-widget.lua │ │ │ │ ├── icon-widget.lua │ │ │ │ ├── horizontal-bar-widget.lua │ │ │ │ ├── icon-and-text-widget.lua │ │ │ │ └── vertical-bar-widget.lua │ │ ├── github-contributions-widget │ │ │ ├── screenshots │ │ │ │ ├── pink.png │ │ │ │ ├── teal.png │ │ │ │ ├── classic.png │ │ │ │ ├── dracula.png │ │ │ │ ├── leftpad.png │ │ │ │ ├── standard.png │ │ │ │ ├── screenshot.jpg │ │ │ │ ├── screenshot1.jpg │ │ │ │ ├── screenshot2.jpg │ │ │ │ └── Thomashighbaugh.png │ │ │ ├── themes.lua │ │ │ └── README.md │ │ ├── .luacheckrc │ │ └── .gitignore │ ├── requirments.txt │ ├── notify.lua │ └── log.lua ├── plasma-workspace │ └── env │ │ └── set_window_manager.sh ├── X11 │ ├── xinitrc │ └── Xresources ├── lxc │ └── default.conf ├── qutebrowser │ ├── autoconfig.yml │ ├── quickmarks │ ├── qsettings │ │ └── QtProject.conf │ ├── bookmarks │ │ └── urls │ └── config.py ├── readline │ └── inputrc ├── mimeapps.list ├── zathura │ └── zathurarc ├── fontconfig │ └── fonts.conf ├── sxiv │ └── exec │ │ └── key-handler ├── lf │ └── preview ├── mpv │ └── restore-old-bindings.conf ├── zsh │ ├── .Xdefaults │ └── .zshenv └── tmux │ └── tmux.conf ├── .local ├── bin │ ├── scripts │ │ ├── delwal │ │ ├── build_compile │ │ ├── setwal │ │ ├── extractAudio │ │ ├── kdecon │ │ ├── copytext │ │ ├── replaceAudio │ │ ├── javadebug │ │ ├── gfmerge │ │ ├── copyvim │ │ ├── mpd_load.sh │ │ ├── turnOnCompton.sh │ │ ├── xcompile │ │ ├── setupKeyboard │ │ ├── wallpaper.sh │ │ ├── dotInstall │ │ ├── select.sh │ │ ├── bibcompile │ │ ├── fixaudio.sh │ │ ├── showtray.sh │ │ ├── add_playlist.sh │ │ ├── samedir │ │ ├── xinput.sh │ │ ├── convert-vim-snippets │ │ ├── musicmenu │ │ ├── playlistmenu │ │ ├── screenshot.sh │ │ ├── mpd_update │ │ ├── screenshot-rect.sh │ │ ├── volume.sh │ │ ├── getbib │ │ ├── texclear │ │ ├── youtube-download.sh │ │ ├── preview.sh │ │ ├── popfixDev.sh │ │ ├── dmenuemoji │ │ ├── bookmark.sh │ │ ├── launch_jdtls │ │ ├── printVim │ │ ├── tmux-urlview │ │ │ ├── urlview.tmux │ │ │ ├── LICENSE.md │ │ │ └── README.md │ │ ├── compiler │ │ ├── change_terminal_coloscheme.py │ │ ├── bibsearch │ │ ├── dmenuumount │ │ ├── albumsplit │ │ ├── tag │ │ ├── record │ │ └── dmenumount │ ├── statusbar │ │ ├── clock │ │ ├── brightness │ │ ├── caps.sh │ │ ├── showRecord.sh │ │ ├── volume │ │ ├── popupgrade │ │ ├── music │ │ ├── ip_addr.sh │ │ ├── mailbox │ │ ├── pacpackages │ │ └── battery │ └── cron │ │ └── checkup └── share │ ├── jumps │ ├── paths │ ├── copytext │ └── work-paths │ └── music │ └── directories ├── .gitignore ├── Templates ├── build.gradle ├── buildJar.gradle ├── build ├── present.tex ├── paper.tex ├── Makefile └── article.tex ├── .zprofile ├── .profile └── README.md /.config/mpd/pid: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/compton.conf: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/ncmpcpp/error.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/mutt/.mailsynclastrun: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/ranger/plugins/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/nvim/.gitignore: -------------------------------------------------------------------------------- 1 | packer_compiled.lua 2 | -------------------------------------------------------------------------------- /.config/systemd/timers/stamp-mail_sync.timer: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/04n.png: -------------------------------------------------------------------------------- 1 | 04d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/09n.png: -------------------------------------------------------------------------------- 1 | 09d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/10n.png: -------------------------------------------------------------------------------- 1 | 10d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/11n.png: -------------------------------------------------------------------------------- 1 | 11d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/13n.png: -------------------------------------------------------------------------------- 1 | 13d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/50n.png: -------------------------------------------------------------------------------- 1 | 50d.png -------------------------------------------------------------------------------- /.config/nvim/after/plugin/octo.lua: -------------------------------------------------------------------------------- 1 | require("octo").setup{} 2 | -------------------------------------------------------------------------------- /.local/bin/scripts/delwal: -------------------------------------------------------------------------------- 1 | cat ~/Pictures/.curwal | xargs rm 2 | -------------------------------------------------------------------------------- /.local/bin/scripts/build_compile: -------------------------------------------------------------------------------- 1 | b -vn clean update |& compiledb 2 | -------------------------------------------------------------------------------- /.local/bin/statusbar/clock: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | date '+%Y %b %d (%a) %I:%M%p' 3 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: streetturtle 2 | -------------------------------------------------------------------------------- /.config/plasma-workspace/env/set_window_manager.sh: -------------------------------------------------------------------------------- 1 | export KDEWM=/usr/bin/dwm 2 | -------------------------------------------------------------------------------- /.local/bin/scripts/setwal: -------------------------------------------------------------------------------- 1 | cat $HOME/Pictures/.curwal > $HOME/Pictures/.startWal 2 | -------------------------------------------------------------------------------- /.local/bin/scripts/extractAudio: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ffmpeg -i $1 -f mp3 -ab 192000 -vn $2 4 | -------------------------------------------------------------------------------- /.local/bin/scripts/kdecon: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | /usr/lib/kdeconnectd & 3 | indicator-kdeconnect & 4 | -------------------------------------------------------------------------------- /.config/awesome/requirments.txt: -------------------------------------------------------------------------------- 1 | acpi 2 | pacmd 3 | amixer 4 | brightnessctl 5 | light 6 | jq 7 | -------------------------------------------------------------------------------- /.config/nvim/plugin/commands.vim: -------------------------------------------------------------------------------- 1 | command W :execute ':silent w !sudo tee % > /dev/null' | :edit! 2 | -------------------------------------------------------------------------------- /.config/systemd/user/timers.target.wants/mail_sync.timer: -------------------------------------------------------------------------------- 1 | /home/rishabh/.config/systemd/user/mail_sync.timer -------------------------------------------------------------------------------- /.local/bin/scripts/copytext: -------------------------------------------------------------------------------- 1 | echo "$(xclip -out -selection clipboard)" >> $HOME/.local/share/i3/copytext 2 | -------------------------------------------------------------------------------- /.local/bin/scripts/replaceAudio: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ffmpeg -i $1 -i $2 -c:v copy -map 0:v:0 -map 1:a:0 $3 4 | -------------------------------------------------------------------------------- /.config/systemd/user/default.target.wants/mail_sync.service: -------------------------------------------------------------------------------- 1 | /home/rishabh/.config/systemd/user/mail_sync.service -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | tags 2 | .config/nvim/.netrwhist 3 | .config/nvim/spell/* 4 | .config/zsh/.zcompdump-rishabh-5.8 5 | -------------------------------------------------------------------------------- /.local/bin/scripts/javadebug: -------------------------------------------------------------------------------- 1 | java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=5005,suspend=y $* 2 | -------------------------------------------------------------------------------- /.local/bin/scripts/gfmerge: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | git fetch $1 && git checkout master && git rebase upstream/master 4 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/netrw.vim: -------------------------------------------------------------------------------- 1 | let g:netrw_banner=0 2 | let g:netrw_bufsettings='noma nomod nu nobl nowrap ro' 3 | -------------------------------------------------------------------------------- /.local/bin/scripts/copyvim: -------------------------------------------------------------------------------- 1 | cp ~/.config/nvim/* ~/git/archrice/.config/nvim/ 2 | cd ~/git/archrice/.config/nvim 3 | nvim 4 | -------------------------------------------------------------------------------- /.local/bin/scripts/mpd_load.sh: -------------------------------------------------------------------------------- 1 | mpc clear 2 | pl=`mpc lsplaylists | dmenu -p "Enter playlist name: "` 3 | mpc load $pl 4 | -------------------------------------------------------------------------------- /Templates/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | // Apply the java plugin to add support for Java 3 | id 'java' 4 | 5 | } 6 | -------------------------------------------------------------------------------- /.config/awesome/lain/.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "lain.wiki"] 2 | path = wiki 3 | url = https://github.com/lcpz/lain.wiki.git 4 | -------------------------------------------------------------------------------- /.config/awesome/lain/icons/mail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/mail.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/no_net.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/no_net.png -------------------------------------------------------------------------------- /.config/nvim/after/plugin/todo.lua: -------------------------------------------------------------------------------- 1 | require("todo-comments").setup { 2 | highlight = { 3 | keyword = "fg" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /.local/bin/statusbar/brightness: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | value=$(xbacklight) 3 | value=${value%.*} 4 | 5 | printf "%s%%\\n" "$value" 6 | -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/1.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/2.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/3.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/4.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/5.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/6.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/7.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/8.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/9.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/1.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/2.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/3.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/4.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/5.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/6.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/7.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/8.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/9.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/taskwarrior.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/taskwarrior.png -------------------------------------------------------------------------------- /.config/nvim/after/plugin/commentry.vim: -------------------------------------------------------------------------------- 1 | nnoremap / :Commentary 2 | vnoremap / :Commentary 3 | -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/10.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/11.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/12.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/13.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/14.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/15.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/16.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/17.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/18.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/19.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/20.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/21.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/22.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/23.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/24.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/25.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/26.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/27.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/28.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/29.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/30.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/black/31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/black/31.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/10.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/11.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/12.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/13.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/14.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/15.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/16.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/17.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/18.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/19.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/20.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/21.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/22.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/23.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/24.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/25.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/26.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/27.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/28.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/29.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/30.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/cal/white/31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/cal/white/31.png -------------------------------------------------------------------------------- /.config/nvim/after/plugin/jdtls.vim: -------------------------------------------------------------------------------- 1 | augroup lsp 2 | au! 3 | au FileType java lua require'rd.jdtls_config'.setup() 4 | augroup end 5 | 6 | -------------------------------------------------------------------------------- /Templates/buildJar.gradle: -------------------------------------------------------------------------------- 1 | version = 0.1.1 2 | plugins { 3 | // Apply the java plugin to add support for Java 4 | id 'java' 5 | } 6 | 7 | -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/01d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/01d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/01n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/01n.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/02d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/02d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/02n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/02n.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/03d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/03d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/03n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/03n.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/04d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/04d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/09d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/09d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/10d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/10d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/11d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/11d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/13d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/13d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/50d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/50d.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/na.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/openweathermap/na.png -------------------------------------------------------------------------------- /.local/bin/scripts/turnOnCompton.sh: -------------------------------------------------------------------------------- 1 | instance="$(pgrep 'compton')" 2 | if [ -z "$instance" ]; then 3 | compton 4 | else 5 | pkill compton 6 | fi 7 | -------------------------------------------------------------------------------- /.local/bin/statusbar/caps.sh: -------------------------------------------------------------------------------- 1 | sleep 0.25 2 | state="$(xset q | grep "Caps" | cut -c 22-24)" 3 | [ "$state" != "off" ] && printf "🔠 CAPS LOCK ON\n" 4 | -------------------------------------------------------------------------------- /.local/bin/statusbar/showRecord.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | if [[ -f /tmp/recordingpid ]]; then 3 | printf "🛑 Recording\n" 4 | else 5 | printf "\n" 6 | fi 7 | -------------------------------------------------------------------------------- /.local/bin/scripts/xcompile: -------------------------------------------------------------------------------- 1 | file=$(readlink -f "$1") 2 | dir=$(dirname "$file") 3 | base="${file%.*}" 4 | 5 | cd "$dir" || exit 6 | 7 | xelatex "$file" 8 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/cpu-widget/cpu-png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/cpu-widget/cpu-png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/cpu-widget/cpu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/cpu-widget/cpu.gif -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/ram-widget/out.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/ram-widget/out.gif -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/cascade.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/cascade.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/cascadew.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/cascadew.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/termfair.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/termfair.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/zenburn/cascade.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/zenburn/cascade.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/zenburn/termfair.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/zenburn/termfair.png -------------------------------------------------------------------------------- /.config/nvim/after/plugin/xresources.vim: -------------------------------------------------------------------------------- 1 | augroup xresources 2 | autocmd! 3 | autocmd BufWritePost *Xresources,*Xdefaults !xrdb -load % 4 | augroup END 5 | 6 | -------------------------------------------------------------------------------- /.local/share/jumps/paths: -------------------------------------------------------------------------------- 1 | /home/rishabh/.config/i3 2 | /home/rishabh/.config/i3blocks 3 | /home/rishabh/.local/bin/statusbar 4 | /home/rishabh/.local/bin/i3cmds 5 | -------------------------------------------------------------------------------- /.zprofile: -------------------------------------------------------------------------------- 1 | [[ -f ~/.config/zsh/.zshenv ]] && . ~/.config/zsh/.zshenv 2 | export PROMPT_COMMAND="pwd > /tmp/whereami" 3 | [[ -f ~/.profile ]] && . ~/.profile 4 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/cpu-widget/custom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/cpu-widget/custom.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/todo-widget/todo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/todo-widget/todo.gif -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/cascadetile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/cascadetile.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/centerfair.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/centerfair.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/centerfairw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/centerfairw.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/centerwork.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/centerwork.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/centerworkh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/centerworkh.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/centerworkw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/centerworkw.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/termfairw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/termfairw.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/zenburn/cascadetile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/zenburn/cascadetile.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/zenburn/centerfair.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/zenburn/centerfair.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/zenburn/centerwork.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/zenburn/centerwork.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/zenburn/centerworkh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/zenburn/centerworkh.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/calendar-widget/dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/calendar-widget/dark.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/calendar-widget/nord.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/calendar-widget/nord.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/fs-widget/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/fs-widget/screenshot.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/both.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/both.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/cascadetilew.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/cascadetilew.png -------------------------------------------------------------------------------- /.config/awesome/lain/icons/layout/default/centerworkhw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/lain/icons/layout/default/centerworkhw.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/batteryarc-widget/10_c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/batteryarc-widget/10_c.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/batteryarc-widget/10_d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/batteryarc-widget/10_d.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/batteryarc-widget/20_c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/batteryarc-widget/20_c.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/batteryarc-widget/20_d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/batteryarc-widget/20_d.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/batteryarc-widget/80_c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/batteryarc-widget/80_c.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/batteryarc-widget/80_d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/batteryarc-widget/80_d.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/calendar-widget/light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/calendar-widget/light.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/calendar-widget/outrun.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/calendar-widget/outrun.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/translate-widget/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/translate-widget/demo.gif -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/translate-widget/demo1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/translate-widget/demo1.gif -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/example1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/example1.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/example2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/example2.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/negative.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/negative.png -------------------------------------------------------------------------------- /.config/nvim/after/plugin/setfiletype.vim: -------------------------------------------------------------------------------- 1 | let g:tex_flavor="latex" 2 | 3 | augroup setfileype 4 | au! 5 | au! BufRead,BufNewFile *.mxx setfiletype cpp 6 | augroup end 7 | -------------------------------------------------------------------------------- /.local/bin/scripts/setupKeyboard: -------------------------------------------------------------------------------- 1 | setxkbmap -option ctrl:nocaps 2 | xcape -e 'Control_L=Escape' 3 | [[ -f $HOME/.config/X11/xmodmap ]] && xmodmap $HOME/.config/X11/xmodmap 4 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/batteryarc-widget/warning.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/batteryarc-widget/warning.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/batteryarc-widget/spaceman.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/batteryarc-widget/spaceman.jpg -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/brightness-widget/br-wid-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/brightness-widget/br-wid-1.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/calendar-widget/calendar_top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/calendar-widget/calendar_top.png -------------------------------------------------------------------------------- /.local/bin/scripts/wallpaper.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | pic=$(find ~/Pictures/background/ -not -path '*/\.*' -type f | shuf -n 1) 3 | echo $pic > ~/Pictures/.curwal 4 | feh --bg-fill "$pic" 5 | -------------------------------------------------------------------------------- /.config/X11/xinitrc: -------------------------------------------------------------------------------- 1 | xrandr --setprovideroutputsource modesetting NVIDIA-0 2 | xrandr --auto 3 | setupKeyboard 4 | xinput.sh 5 | xrdb -merge $XDG_CONFIG_HOME/X11/Xresources 6 | exec awesome 7 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/logout-menu-widget/logout-menu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/logout-menu-widget/logout-menu.gif -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/weather-widget.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/weather-widget.png -------------------------------------------------------------------------------- /.config/mutt/mailcap: -------------------------------------------------------------------------------- 1 | text/html; brave %s & 2 | text/*; nvim %s & 3 | image/*; sxiv %s & 4 | video/*; mpv %s & 5 | application/pdf; zathura %s & 6 | application/pgp; alacritty -e pgp -d & 7 | -------------------------------------------------------------------------------- /.config/nvim/snippets/tex.json: -------------------------------------------------------------------------------- 1 | { 2 | "section": { 3 | "prefix": ["sc"], 4 | "body": [ 5 | "\\section{}" 6 | ], 7 | "description": "Section" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /.local/bin/scripts/dotInstall: -------------------------------------------------------------------------------- 1 | find ~/.config/nvim/ -maxdepth 1 -mindepth 1 | grep -v "plugged" | grep -v ".netrwhist" | xargs rm -rf 2 | cp -r ~/git/archrice/.config/nvim/* ~/.config/nvim/ 3 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-activity-widget/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-activity-widget/screenshot.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/calendar-widget/calendar_top_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/calendar-widget/calendar_top_right.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-activity-widget/icons/github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-activity-widget/icons/github.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/calendar-widget/calendar_bottom_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/calendar-widget/calendar_bottom_right.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/volume-widget/screenshots/variations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/volume-widget/screenshots/variations.png -------------------------------------------------------------------------------- /.config/lxc/default.conf: -------------------------------------------------------------------------------- 1 | lxc.net.0.type = veth 2 | lxc.net.0.link = lxcbr0 3 | lxc.net.0.flags = up 4 | lxc.net.0.hwaddr = 00:16:3e:xx:xx:xx 5 | lxc.idmap = u 0 165536 65536 6 | lxc.idmap = g 0 165536 65536 7 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/formatter.lua: -------------------------------------------------------------------------------- 1 | local nnoremap = vim.keymap.nnoremap 2 | local formatter = require("rd.formatter") 3 | 4 | nnoremap {'=', function() 5 | formatter.format(vim.bo.filetype) 6 | end} 7 | -------------------------------------------------------------------------------- /.local/bin/scripts/select.sh: -------------------------------------------------------------------------------- 1 | NAME="$1" 2 | cmd="$(cat "$NAME" | dmenu -p "Select Text: " -fn 'Awesome-12' -nb '#000000' -nf '#A9D3DE' -sb '#3255f1' -sf '#000000' -l 10)" 3 | printf "$cmd" | xclip -sel clipboard 4 | -------------------------------------------------------------------------------- /.local/bin/statusbar/volume: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ "$(pulsemixer --get-mute)" = "1" ] && printf "🔇 muted\\n" && exit 4 | 5 | vol=$(pulsemixer --get-volume | awk '{print $1}') 6 | 7 | printf "🔉: %s%s\n" "$vol" "%" 8 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/pink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/pink.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/teal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/teal.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/volume-widget/screenshots/volume-sink-sources.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/volume-widget/screenshots/volume-sink-sources.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/classic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/classic.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/dracula.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/dracula.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/leftpad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/leftpad.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/standard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/standard.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/screenshot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/screenshot.jpg -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/screenshot1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/screenshot1.jpg -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/screenshot2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/screenshot2.jpg -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/mist.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/mist.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/rain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/rain.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/snow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/snow.png -------------------------------------------------------------------------------- /.config/systemd/user/mail_sync.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=A job to greet the world 3 | 4 | [Service] 5 | Type=simple 6 | ExecStart=/home/rishabh/.local/bin/scripts/mailsync 7 | 8 | [Install] 9 | WantedBy=default.target 10 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/Thomashighbaugh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/github-contributions-widget/screenshots/Thomashighbaugh.png -------------------------------------------------------------------------------- /.local/bin/statusbar/popupgrade: -------------------------------------------------------------------------------- 1 | 2 | #!/bin/sh 3 | 4 | printf "Beginning upgrade.\\n" 5 | 6 | pacman -Syu 7 | pkill -RTMIN+8 i3blocks 8 | 9 | printf "\\nUpgrade complete.\\nPress to exit window.\\n\\n" 10 | read -r 11 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/clear-sky.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/clear-sky.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/few-clouds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/few-clouds.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/mist-night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/mist-night.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/rain-night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/rain-night.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/shower-rain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/shower-rain.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/snow-night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/snow-night.png -------------------------------------------------------------------------------- /.local/share/music/directories: -------------------------------------------------------------------------------- 1 | /home/rishabh/Music/new 2 | /home/rishabh/Music/foreign 3 | /home/rishabh/Music/old 4 | /home/rishabh/Music/bhajan 5 | /home/rishabh/Music/bhojpuri 6 | /home/rishabh/Videos/youtube 7 | /home/rishabh/Music/lofi 8 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/broken-clouds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/broken-clouds.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/thunderstorm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/thunderstorm.png -------------------------------------------------------------------------------- /.config/nvim/after/plugin/on_yank.vim: -------------------------------------------------------------------------------- 1 | augroup LuaHighlight 2 | au! 3 | au TextYankPost * lua vim.highlight.on_yank { 4 | \ higroup = "Substitute", 5 | \ timeout = 150, 6 | \ on_macro = true 7 | \ } 8 | augroup END 9 | -------------------------------------------------------------------------------- /.local/bin/scripts/bibcompile: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | [ -z "$1" ] && exit 4 | 5 | filename=$(basename -- "$1") 6 | extension="${filename##*.}" 7 | filename="${filename%.*}" 8 | 9 | pdflatex "$1" 10 | biber "$filename" 11 | pdflatex "$1" 12 | 13 | -------------------------------------------------------------------------------- /.local/bin/scripts/fixaudio.sh: -------------------------------------------------------------------------------- 1 | base=$(basename $1) 2 | ext="${base##*.}" 3 | base="${base%.*}" 4 | 5 | ffmpeg -i "$1" -itsoffset 0.350 -i "$1" -c:v h264 -c:a aac -map 0:0 -map 1:1 "$base"_synced."$ext" && 6 | notify-send "Video Sync Done" "$base" 7 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/clear-sky-night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/clear-sky-night.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/few-clouds-night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/few-clouds-night.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/scattered-clouds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/scattered-clouds.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/shower-rain-night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/shower-rain-night.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/thunderstorm-night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/thunderstorm-night.png -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/broken-clouds-night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/broken-clouds-night.png -------------------------------------------------------------------------------- /.local/bin/scripts/showtray.sh: -------------------------------------------------------------------------------- 1 | pid=$(ps -ax | grep "[t]rayer ") 2 | if [ -z "$pid" ]; then 3 | trayer --widthtype request --heighttype request --align right --edge top --transparent true --alpha 50 --tint 0x000000 --padding 10 4 | else 5 | pkill trayer 6 | fi 7 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/scattered-clouds-night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RishabhRD/archrice/HEAD/.config/awesome/awesome-wm-widgets/weather-widget/icons/weather-underground-icons/scattered-clouds-night.png -------------------------------------------------------------------------------- /.config/qutebrowser/autoconfig.yml: -------------------------------------------------------------------------------- 1 | # DO NOT edit this file by hand, qutebrowser will overwrite it. 2 | # Instead, create a config.py - see :help for details. 3 | 4 | config_version: 2 5 | settings: 6 | content.notifications: 7 | https://mail.google.com: true 8 | -------------------------------------------------------------------------------- /.config/readline/inputrc: -------------------------------------------------------------------------------- 1 | set editing-mode vi 2 | $if mode=vi 3 | 4 | set keymap vi-command 5 | # these are for vi-command mode 6 | Control-l: clear-screen 7 | 8 | set keymap vi-insert 9 | # these are for vi-insert mode 10 | Control-l: clear-screen 11 | $endif 12 | -------------------------------------------------------------------------------- /.local/bin/statusbar/music: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | name="$(mpc current)" 3 | if [ ! -z "$name" ]; then 4 | status=$(mpc | sed '2q;d' | awk '{print $1}') 5 | if [ "$status" == "[playing]" ]; then 6 | icon="▶" 7 | else 8 | icon="" 9 | fi 10 | echo " $icon $name" 11 | fi 12 | -------------------------------------------------------------------------------- /.config/qutebrowser/quickmarks: -------------------------------------------------------------------------------- 1 | a https://www.computerhope.com/unix/utelnet.htm 2 | microsoft internship https://careers.microsoft.com/us/en/job/526585/Research-Intern-India-Bachelors-Masters 3 | apply internship https://careers.microsoft.com/students/us/en/induniversityinternship 4 | -------------------------------------------------------------------------------- /.config/nvim/lua/rd/globals.lua: -------------------------------------------------------------------------------- 1 | P = function(v) 2 | print(vim.inspect(v)) 3 | return v 4 | end 5 | 6 | RELOAD = function(...) 7 | return require("plenary.reload").reload_module(...) 8 | end 9 | 10 | R = function(name) 11 | RELOAD(name) 12 | return require(name) 13 | end 14 | -------------------------------------------------------------------------------- /.local/bin/scripts/add_playlist.sh: -------------------------------------------------------------------------------- 1 | name=$(echo "" | dmenu -p "Enter name: ") 2 | if [ -z $name ]; then 3 | echo "Playlist name empty" 4 | else 5 | touch ~/.config/mpd/playlists/$name.m3u 6 | echo $HOME/Music/$name >> ~/.local/share/music/directories 7 | mkdir -p "~/Music/$name" 8 | fi 9 | -------------------------------------------------------------------------------- /.profile: -------------------------------------------------------------------------------- 1 | o(){ 2 | fzf | xargs -r -o nvim 3 | } 4 | export PATH=$PATH:$HOME/.local/bin/scripts/ 5 | export EDITOR="nvim" 6 | export TERMINAL="st" 7 | if [[ "$(tty)" == "/dev/tty1" ]]; then 8 | echo "tty found" 9 | startx $HOME/.config/X11/xinitrc 10 | else 11 | echo "NO TTY" 12 | fi 13 | 14 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/git.vim: -------------------------------------------------------------------------------- 1 | nnoremap gs :G 2 | nnoremap gh :diffget //2 3 | nnoremap gl :diffget //3 4 | nnoremap gc :Git commit 5 | nnoremap gl :Gllog 6 | nnoremap gp :Git push 7 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/zen.lua: -------------------------------------------------------------------------------- 1 | require("zen-mode").setup { 2 | window = { 3 | backdrop = 0.999, 4 | height = 0.9, 5 | width = 140, 6 | options = { 7 | number = false, 8 | relativenumber = false, 9 | }, 10 | }, 11 | } 12 | 13 | require("twilight").setup {} 14 | -------------------------------------------------------------------------------- /.local/bin/statusbar/ip_addr.sh: -------------------------------------------------------------------------------- 1 | [ "$#" -ne 2 ] && exit 2 | if [ "$1" == "wifi" ];then 3 | icon=" " 4 | elif [ "$1" == "ethernet" ]; then 5 | icon="🚠" 6 | else 7 | exit 8 | fi 9 | t=$(/sbin/ifconfig $2 | grep 'inet ' | awk '{print $2}') 10 | [[ ! -z "${t// }" ]] && printf "\x06$icon\x01$t\n" 11 | -------------------------------------------------------------------------------- /.config/mutt/rangerpick: -------------------------------------------------------------------------------- 1 | tmpfile=/tmp/ranger_pick 2 | if \[ -z "$1" \]; then 3 | ranger --choosefiles $tmpfile && sed -i 's/^//' $tmpfile && sed -i 's/$//' $tmpfile && sed -i ':a;N;$!ba;s/\n//g' $tmpfile && sed -i 's/^/push /' $tmpfile 4 | elif \[ $1 == "clean" \]; then 5 | rm $tmpfile 6 | fi 7 | -------------------------------------------------------------------------------- /.local/bin/scripts/samedir: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | PID=$(xprop -id "$(xprop -root | awk '/_NET_ACTIVE_WINDOW\(WINDOW\)/{print $NF}')" | grep -m 1 PID | cut -d " " -f 3) 3 | PID=$(echo "$(pstree -lpA "$PID" | tail -n 1)" | awk -F'---' '{print $NF}' | sed -re 's/[^0-9]//g') 4 | cd "$(readlink /proc/"$PID"/cwd)" 5 | "$TERMINAL" 6 | -------------------------------------------------------------------------------- /.local/bin/statusbar/mailbox: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | # i3blocks mail module. 4 | # Displays number of unread mail and an loading icon if updating. 5 | # When clicked, brings up `neomutt`. 6 | 7 | echo "$(du -a ~/.local/share/mail/*/INBOX/new/* 2>/dev/null | sed -n '$=')$(cat /tmp/imapsyncicon_$USER 2>/dev/null)" 8 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/todo-widget/chevron-down.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/todo-widget/chevron-up.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/nvim/init.lua: -------------------------------------------------------------------------------- 1 | if require"rd.packer_download"() then 2 | return 3 | end 4 | 5 | vim.g.mapleader = " " 6 | 7 | -- some globals 8 | require("rd.globals") 9 | 10 | require("rd.plugins") 11 | -- force astronauta to load first 12 | vim.cmd [[runtime plugin/astronauta.vim]] 13 | 14 | require("rd.colors") 15 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/logout-menu-widget/icons/moon.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/notify.lua: -------------------------------------------------------------------------------- 1 | local naughty = require("naughty") 2 | 3 | local function notify(title, text) 4 | title = title or "" 5 | text = text or "" 6 | naughty.notify({ 7 | preset = naughty.config.presets.critical, 8 | title = title, 9 | text = text 10 | }) 11 | end 12 | 13 | return { 14 | notify = notify 15 | } 16 | -------------------------------------------------------------------------------- /.config/awesome/lain/icons/openweathermap/README.md: -------------------------------------------------------------------------------- 1 | [Plain Weather Icons](http://merlinthered.deviantart.com/art/plain-weather-icons-157162192), created by [MerlinTheRed](http://merlinthered.deviantart.com/). 2 | 3 | 4 | -------------------------------------------------------------------------------- /Templates/build: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | if [[ -z $1 ]]; then 4 | mkdir -p bin 5 | cd bin 6 | cmake .. 7 | make 8 | elif [[ "$1" == "install" ]]; then 9 | mkdir -p bin 10 | cd bin 11 | cmake .. 12 | sudo make install 13 | elif [[ "$1" == "debug" ]]; then 14 | mkdir -p debug 15 | cd debug 16 | cmake -DCMAKE_BUILD_TYPE=Debug .. 17 | make 18 | fi 19 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/logout-menu-widget/icons/power.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/logout-menu-widget/icons/power_w.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/lain/init.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Lain 4 | Layouts, widgets and utilities for Awesome WM 5 | 6 | Licensed under GNU General Public License v2 7 | * (c) 2013, Luca CPZ 8 | 9 | --]] 10 | 11 | return { 12 | layout = require("lain.layout"), 13 | util = require("lain.util"), 14 | widget = require("lain.widget") 15 | } 16 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/spectre.vim: -------------------------------------------------------------------------------- 1 | nnoremap S :lua require('spectre').open() 2 | 3 | "search current word 4 | nnoremap sw :lua require('spectre').open_visual({select_word=true}) 5 | vnoremap s :lua require('spectre').open_visual() 6 | " search in current file 7 | nnoremap sp viw:lua require('spectre').open_file_search() 8 | -------------------------------------------------------------------------------- /.local/share/jumps/copytext: -------------------------------------------------------------------------------- 1 | net.floodlightcontroller.sdn_arp_spoof_detection.ArpAuthenticator,\ 2 | sudo mn --custom ./host5.py --switch ovs,protocols=OpenFlow14 --topo hexa --controller=remote,ip=127.0.0.1,port=6653 3 | ovs-ofctl dump-flows -O OpenFlow14 s2 4 | net.floodlightcontroller.forwarding.Forwarding,\ 5 | ffmpeg -i encryption.mkv -f mp3 -ab 192000 -vn music.mp3 6 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-activity-widget/icons/message-square.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.local/bin/scripts/xinput.sh: -------------------------------------------------------------------------------- 1 | id=$(xinput list | grep Touchpad | awk '{print $6}' | sed 's/id=//') 2 | ns=`xinput list-props $id | grep "Natural Scrolling Enabled (" | awk '{print $5}' |sed 's/)://' | sed 's/(//'` 3 | tp=`xinput list-props $id | grep "Tapping Enabled (" | awk '{print $4}' |sed 's/)://' | sed 's/(//'` 4 | xinput set-prop $id $ns 1 5 | xinput set-prop $id $tp 1 6 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/logout-menu-widget/icons/lock.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.local/bin/scripts/convert-vim-snippets: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | files=$(ls /home/rishabh/.vim/plugged/vim-snippets/UltiSnips/) 3 | 4 | for file in $files; do 5 | filename=$(basename -- "$file") 6 | filename="${filename%.*}" 7 | convert-snippets /home/rishabh/.vim/plugged/vim-snippets/UltiSnips/$file /home/rishabh/.local/share/nvim/.snippets/$filename.json 8 | done 9 | 10 | -------------------------------------------------------------------------------- /.local/bin/scripts/musicmenu: -------------------------------------------------------------------------------- 1 | alias mpc='mpc -f "%file%\t[%artist% - ][%album% [#[##%track%#] ]- ][%title%|%file%]"' 2 | songs=$(mpc listall | sort -V) 3 | printf '%s\n' "$songs" \ 4 | | awk -F'\t' '{print $2}' \ 5 | | dmenu -i -l 10 \ 6 | | while read selection 7 | do 8 | printf '%s\n' "$songs" | awk -F'\t' "\$2==\"$selection\" {print \$1; exit}" 9 | done | mpc insert 10 | mpc next 11 | -------------------------------------------------------------------------------- /.local/bin/scripts/playlistmenu: -------------------------------------------------------------------------------- 1 | alias mpc='mpc -f "%file%\t[%artist% - ][%album% [#[##%track%#] ]- ][%title%|%file%]"' 2 | songs=$(mpc playlist | sort -V) 3 | printf '%s\n' "$songs" \ 4 | | awk -F'\t' '{print $2}' \ 5 | | dmenu -i -l 10 \ 6 | | while read selection 7 | do 8 | printf '%s\n' "$songs" | awk -F'\t' "\$2==\"$selection\" {print \$1; exit}" 9 | done | mpc insert 10 | mpc next 11 | -------------------------------------------------------------------------------- /.local/bin/scripts/screenshot.sh: -------------------------------------------------------------------------------- 1 | scrot '.tmp.png' 2 | NAME=$(printf "" | dmenu -p "Screenshot name: ") 3 | if [[ -z "${NAME// }" ]] 4 | then 5 | mv .tmp.png ~/Pictures/Screenshot/Screenshot$(date +%d-%m-%Y_%T).png 6 | else 7 | while [ -f ~/Pictures/Screenshot/$NAME.png ] 8 | do 9 | ADD="_1" 10 | NAME="$NAME$ADD" 11 | done 12 | mv .tmp.png ~/Pictures/Screenshot/$NAME.png 13 | fi 14 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-activity-widget/icons/star.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/log.lua: -------------------------------------------------------------------------------- 1 | local log = {} 2 | 3 | local function do_log(level, fmt, ...) 4 | local file = io.open('/tmp/awesome.log', 'a') 5 | 6 | file:write(string.format( 7 | "%s : %s\n", 8 | level, 9 | string.format(fmt, ...) 10 | )) 11 | 12 | file:close() 13 | end 14 | 15 | log.info = function(fmt, ...) 16 | do_log('info', fmt, ...) 17 | end 18 | 19 | return log 20 | -------------------------------------------------------------------------------- /.config/nvim/lua/rd/formatter.lua: -------------------------------------------------------------------------------- 1 | local formatter_table = { 2 | lua = require("rd.stylua").format, 3 | } 4 | 5 | local function format(lang) 6 | if formatter_table[lang] then 7 | formatter_table[lang]() 8 | else 9 | if #vim.lsp.buf_get_clients() ~= 0 then 10 | vim.lsp.buf.formatting() 11 | end 12 | end 13 | end 14 | 15 | return { 16 | format = format, 17 | } 18 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/volume-widget/volume-2.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Arch Rice 2 | 3 | ArchRice is deprecated now. See [rdconfig](https://github.com/RishabhRD/rdconfig) 4 | for my dots. 5 | 6 | ## Why? 7 | 8 | - Because I started to maintain it in my first year of undergrad. It has so much 9 | mess in git history. Now I am stopping to maintain it in my final year of 10 | undergrad. 11 | 12 | - I don't want to download 21 MB archrice just to maintain simple files. 13 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-activity-widget/icons/alert-circle.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/logout-menu-widget/icons/log-out.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.local/bin/scripts/mpd_update: -------------------------------------------------------------------------------- 1 | function mpd_file_update { 2 | dir=`basename $1` 3 | ls -1 "$1" >> "$HOME/.config/mpd/playlists/${dir}.m3u" 4 | mv $1/* ~/Music/ 5 | } 6 | function update_all_files { 7 | dirs=$(cat $HOME/.local/share/music/directories | grep Music) 8 | while IFS= read -r line; do 9 | mpd_file_update $line 10 | done <<< "$dirs" 11 | } 12 | update_all_files 13 | mpc update 14 | -------------------------------------------------------------------------------- /.local/bin/scripts/screenshot-rect.sh: -------------------------------------------------------------------------------- 1 | scrot -s ~/Pictures/.tmp.png 2 | NAME=$(printf "" | dmenu -p "Screenshot name: ") 3 | if [[ -z "${NAME// }" ]] 4 | then 5 | mv ~/Pictures/.tmp.png ~/Pictures/Screenshot/Screenshot$(date +%d-%m-%Y_%T).png 6 | else 7 | while [ -f ~/Pictures/Screenshot/$NAME.png ] 8 | do 9 | ADD="_1" 10 | NAME="$NAME$ADD" 11 | done 12 | mv ~/Pictures/.tmp.png ~/Pictures/Screenshot/$NAME.png 13 | fi 14 | -------------------------------------------------------------------------------- /.config/systemd/user/mail_sync.timer: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Sync my mail(s) every 2 min 3 | 4 | [Timer] 5 | # Execute job if it missed a run due to machine being off 6 | Persistent=true 7 | # Run 120 seconds after boot for the first time 8 | OnBootSec=120 9 | # Run every 2 minute thereafter 10 | OnUnitActiveSec=120 11 | # File describing job to execute 12 | Unit=mail_sync.service 13 | 14 | [Install] 15 | WantedBy=timers.target 16 | -------------------------------------------------------------------------------- /.local/bin/scripts/volume.sh: -------------------------------------------------------------------------------- 1 | if [ "$1" == "up" ];then 2 | vol=$(pulsemixer --get-volume | awk '{print $1}') 3 | [ $vol -lt 129 ] && pactl set-sink-mute 0 0 && pactl -- set-sink-volume 0 +5% 4 | elif [ "$1" == "down" ];then 5 | vol=$(pulsemixer --get-volume | awk '{print $1}') 6 | [ $vol -gt 0 ] && pactl set-sink-mute 0 0 && pactl -- set-sink-volume 0 -5% 7 | elif [ "$1" == "mute" ];then 8 | pactl set-sink-mute 0 toggle 9 | fi 10 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-activity-widget/icons/git-branch.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/.luacheckrc: -------------------------------------------------------------------------------- 1 | self = false 2 | 3 | globals = { 4 | "screen", 5 | "mouse", 6 | "root", 7 | "client" 8 | } 9 | 10 | read_globals = { 11 | "awesome", 12 | "button", 13 | "dbus", 14 | "drawable", 15 | "drawin", 16 | "key", 17 | "keygrabber", 18 | "mousegrabber", 19 | "selection", 20 | "tag", 21 | "window", 22 | "table.unpack", 23 | "math.atan2", 24 | } -------------------------------------------------------------------------------- /.local/bin/scripts/getbib: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | [ -z "$1" ] && echo "Give either a pdf fole or a DOI as an argument." && exit 3 | 4 | if [ -f "$1" ]; then 5 | #Try to get DOI from the file 6 | doi=$(pdfinfo "$1" | grep -io "doi:.*") || 7 | doi=$(pdftotext "$1" 2>/dev/null - | grep -io "doi:.*" --line-number) || 8 | exit 1 9 | else 10 | doi="$1" 11 | fi 12 | 13 | curl -s "http://api.crossref.org/works/$doi/transform/application/x-bibtex" -w "\\n" 14 | -------------------------------------------------------------------------------- /.local/bin/scripts/texclear: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | case "$1" in 3 | *.tex) 4 | file=$(readlink -f "$1") 5 | dir=$(dirname "$file") 6 | base="${file%.*}" 7 | find "$dir" -maxdepth 1 -type f -regextype gnu-awk -regex "^$base\\.(4tc|xref|tmp|pyc|pyo|fls|vrb|fdb_latexmk|bak|swp|aux|log|synctex\\(busy\\)|lof|lot|maf|idx|mtc|mtc0|nav|out|snm|toc|bcf|run\\.xml|synctex\\.gz|blg|bbl)" -delete ;; 8 | *) printf "Give .tex file as argument.\\n" ;; 9 | esac 10 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-activity-widget/icons/git-pull-request.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/qf.vim: -------------------------------------------------------------------------------- 1 | nmap (qf_qf_next) 2 | nmap (qf_qf_previous) 3 | nmap (qf_loc_next) 4 | nmap (qf_loc_previous) 5 | nmap q (qf_qf_toggle) 6 | nmap Q (qf_loc_toggle) 7 | nmap [[ (qf_older) 8 | nmap ]] (qf_newer) 9 | nmap { (qf_previous_file) 10 | nmap } (qf_next_file) 11 | 12 | let g:qf_mapping_ack_style = 1 13 | -------------------------------------------------------------------------------- /.local/bin/scripts/youtube-download.sh: -------------------------------------------------------------------------------- 1 | url="$(xclip -out -selection clipboard)" 2 | echo $url 3 | echo "Qualities...." 4 | youtube-dl -F "$url" 5 | if [ $? -eq 0 ]; then 6 | printf "Enter you choice: " 7 | read ans 8 | folder="$(cat ~/.local/share/music/directories| dmenu -p "Enter destination: ")" 9 | youtube-dl -c -f "$ans" -o "$folder/%(title)s.%(ext)s" "$url" 10 | if [ $? -eq 0 ]; then 11 | notify-send "download complete" 12 | fi 13 | fi 14 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/logout-menu-widget/icons/refresh-cw.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/locale/en.lua: -------------------------------------------------------------------------------- 1 | local en = { 2 | warning_title = "Weather Widget", 3 | parameter_warning = "Required parameters are not set: ", 4 | directions = { 5 | "N", "NNE", "NE", "ENE", "E", "ESE", "SE", "SSE", "S", "SSW", "SW", 6 | "WSW", "W", "WNW", "NW", "NNW", "N" 7 | }, 8 | feels_like = "Feels like ", 9 | wind = "Wind: ", 10 | humidity = "Humidity: ", 11 | uv = "UV: " 12 | } 13 | 14 | return en 15 | -------------------------------------------------------------------------------- /.local/bin/scripts/preview.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | kitty +kitten icat --clear --transfer-mode file --silent 3 | icat="kitty +kitten icat --place 30x30@40x0 --transfer-mode file --silent" 4 | case "$1" in 5 | *.jpg) $icat "$1";; 6 | *.png) $icat "$1";; 7 | *.gif) $icat "$1";; 8 | *.tar*) tar tf "$1";; 9 | *.zip) unzip -l "$1";; 10 | *.rar) unrar l "$1";; 11 | *.7z) 7z l "$1";; 12 | *.pdf) pdftotext "$1" -;; 13 | *) highlight -O ansi "$1" || cat "$1";; 14 | esac 15 | -------------------------------------------------------------------------------- /.config/awesome/lain/widget/contrib/init.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Lain 4 | Layouts, widgets and utilities for Awesome WM 5 | 6 | Users contributed widgets section 7 | 8 | Licensed under GNU General Public License v2 9 | * (c) 2013, Luca CPZ 10 | 11 | --]] 12 | 13 | local wrequire = require("lain.helpers").wrequire 14 | local setmetatable = setmetatable 15 | 16 | local widget = { _NAME = "lain.widget.contrib" } 17 | 18 | return setmetatable(widget, { __index = wrequire }) 19 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/locale/fr.lua: -------------------------------------------------------------------------------- 1 | local fr = { 2 | warning_title = "Widget Météo", 3 | parameter_warning = "Les paramètres suivants sont obligatoires : ", 4 | directions = { 5 | "N", "NNE", "NE", "ENE", "E", "ESE", "SE", "SSE", "S", "SSO", "SO", 6 | "OSO", "O", "ONO", "NO", "NNO", "N" 7 | }, 8 | feels_like = "ressentie à ", 9 | wind = "Vent : ", 10 | humidity = "Humidité : ", 11 | uv = "Indice UV : " 12 | } 13 | 14 | return fr 15 | -------------------------------------------------------------------------------- /.config/awesome/lain/widget/init.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Lain 4 | Layouts, widgets and utilities for Awesome WM 5 | 6 | Widgets section 7 | 8 | Licensed under GNU General Public License v2 9 | * (c) 2013, Luca CPZ 10 | * (c) 2010-2012, Peter Hofmann 11 | 12 | --]] 13 | 14 | local wrequire = require("lain.helpers").wrequire 15 | local setmetatable = setmetatable 16 | 17 | local widget = { _NAME = "lain.widget" } 18 | 19 | return setmetatable(widget, { __index = wrequire }) 20 | -------------------------------------------------------------------------------- /.local/bin/scripts/popfixDev.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | tmux new-session -d -s "popfix" 3 | tmux neww -n "init.vim" -c "/home/rishabh/.config/nvim" 4 | tmux neww -n "popfix" -c "/home/rishabh/.vim/plugged/popfix" 5 | tmux neww -n "lsputils" -c "/home/rishabh/.vim/plugged/nvim-lsputils" 6 | tmux neww -n "finder" -c "/home/rishabh/.vim/plugged/nvim-finder" 7 | tmux neww -n "test" -c "/home/rishabh/.vim/plugged/async" 8 | tmux neww -n "c++" -c "/home/rishabh/Documents/research/vxlan-agent/" 9 | tmux select-window -t popfix 10 | -------------------------------------------------------------------------------- /.config/awesome/lain/layout/init.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Lain 4 | Layouts, widgets and utilities for Awesome WM 5 | 6 | Layouts section 7 | 8 | Licensed under GNU General Public License v2 9 | * (c) 2013, Luca CPZ 10 | * (c) 2010-2012, Peter Hofmann 11 | 12 | --]] 13 | 14 | local wrequire = require("lain.helpers").wrequire 15 | local setmetatable = setmetatable 16 | 17 | local layout = { _NAME = "lain.layout" } 18 | 19 | return setmetatable(layout, { __index = wrequire }) 20 | -------------------------------------------------------------------------------- /.config/qutebrowser/qsettings/QtProject.conf: -------------------------------------------------------------------------------- 1 | [FileDialog] 2 | history=file://~ 3 | lastVisited=file://~ 4 | qtVersion=5.13.0 5 | shortcuts=file:, file://~ 6 | sidebarWidth=83 7 | treeViewHeader=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x1\xb5\0\0\0\x4\x1\x1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x64\xff\xff\xff\xff\0\0\0\x81\0\0\0\0\0\0\0\x4\0\0\0\xe1\0\0\0\x1\0\0\0\0\0\0\0\x39\0\0\0\x1\0\0\0\0\0\0\0\x39\0\0\0\x1\0\0\0\0\0\0\0\x62\0\0\0\x1\0\0\0\0\0\0\x3\xe8\0\xff\xff\xff\xff) 8 | viewMode=Detail 9 | -------------------------------------------------------------------------------- /.local/share/jumps/work-paths: -------------------------------------------------------------------------------- 1 | /home/rishabh/.local/bin/scripts 2 | /home/rishabh/.local/bin/nw_scripts 3 | /home/rishabh/.config/zsh 4 | /home/rishabh/.config/X11 5 | /home/rishabh/.local/bin/statusbar 6 | /home/rishabh/Documents/research/floodlight 7 | /home/rishabh/Documents/research/floodlight/src/main/java/net/floodlightcontroller 8 | /home/rishabh/git/ns-3-allinone/ns-3-dev/src 9 | /home/rishabh/.config/nvim 10 | /home/rishabh/.local/share/jumps 11 | /home/rishabh/git/archrice 12 | /home/rishabh/git/dwm 13 | /home/rishabh/git/st 14 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-activity-widget/icons/repo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.local/bin/statusbar/pacpackages: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # i3blocks module for pacman upgrades. 4 | # Displays number of upgradeable packages. 5 | # For this to work, have a `pacman -Sy` command run in the background as a 6 | # cronjob every so often as root. This script will then read those packages. 7 | # When clicked, it will run an upgrade via pacman. 8 | 9 | case $BLOCK_BUTTON in 10 | 3) $TERMINAL -e popupgrade ;; 11 | 1) notify-send "$(/usr/bin/pacman -Qu)" ;; 12 | esac 13 | 14 | 15 | pacman -Qu | grep -v "\[ignored\]" | wc -l | sed -e "s/^0$//g" 16 | -------------------------------------------------------------------------------- /.config/mimeapps.list: -------------------------------------------------------------------------------- 1 | [Added Associations] 2 | application/pdf=org.pwmt.zathura.desktop 3 | video/mp4=mpv.desktop; 4 | text/x-c=nvim.desktop 5 | x-scheme-handler/mailto=userapp-Thunderbird-5HPSM0.desktop; 6 | message/rfc822=userapp-Thunderbird-5HPSM0.desktop; 7 | 8 | [Default Applications] 9 | x-scheme-handler/mailto=userapp-Thunderbird-5HPSM0.desktop 10 | application/pdf=org.pwmt.zathura.desktop 11 | image/jpeg=sxiv.desktop; 12 | image/jpg=sxiv.desktop 13 | image/png=sxiv.desktop 14 | text/x-c=nvim.desktop 15 | message/rfc822=userapp-Thunderbird-5HPSM0.desktop 16 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/vsnip.vim: -------------------------------------------------------------------------------- 1 | let g:vsnip_snippet_dir = '~/.config/nvim/snippets' 2 | 3 | imap vsnip#available(1) ? '(vsnip-expand-or-jump)' : '' 4 | smap vsnip#available(1) ? '(vsnip-expand-or-jump)' : '' 5 | imap vsnip#jumpable(1) ? '(vsnip-jump-next)' : '' 6 | smap vsnip#jumpable(1) ? '(vsnip-jump-next)' : '' 7 | imap vsnip#jumpable(-1) ? '(vsnip-jump-prev)' : '' 8 | smap vsnip#jumpable(-1) ? '(vsnip-jump-prev)' : '' 9 | -------------------------------------------------------------------------------- /.local/bin/scripts/dmenuemoji: -------------------------------------------------------------------------------- 1 | # Shows the selected character in dunst if running. 2 | 3 | # Must have xclip installed to even show menu. 4 | xclip -h 2>/dev/null || exit 1 5 | 6 | chosen=$(cut -d ';' -f1 ~/.config/emoji | dmenu -fn 'Noto Color Emoji:pixelsize=20' -i -l 20 | sed "s/ .*//") 7 | 8 | [ "$chosen" != "" ] || exit 9 | 10 | # If you run this command with an argument, it will automatically insert the character. 11 | if [ -n "$1" ]; then 12 | xdotool key Shift+Insert 13 | else 14 | echo "$chosen" | tr -d '\n' | xclip -selection clipboard 15 | notify-send "'$chosen' copied to clipboard." & 16 | fi 17 | -------------------------------------------------------------------------------- /.local/bin/scripts/bookmark.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | function add { 4 | name=`cat $HOME/.local/share/.bookmarks | awk '{print $1}' | dmenu -l 10 -p "Add name "` 5 | url=`xclip -out clipboard` 6 | echo "$name $url" >> $HOME/.local/share/.bookmarks 7 | } 8 | 9 | function retrieve { 10 | entry=$(cat $HOME/.local/share/.bookmarks | dmenu -l 10 | awk '{print $2}') 11 | if [[ ! -z $entry ]]; then 12 | echo $entry | xsel --clipboard 13 | fi 14 | } 15 | 16 | if [[ "$1" == "add" ]]; then 17 | add 18 | elif [[ $1 == "get" ]]; then 19 | retrieve 20 | else 21 | echo "use add or get" 22 | fi 23 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Lua sources 2 | luac.out 3 | 4 | # luarocks build files 5 | *.src.rock 6 | *.zip 7 | *.tar.gz 8 | 9 | # Object files 10 | *.o 11 | *.os 12 | *.ko 13 | *.obj 14 | *.elf 15 | 16 | # Precompiled Headers 17 | *.gch 18 | *.pch 19 | 20 | # Libraries 21 | *.lib 22 | *.a 23 | *.la 24 | *.lo 25 | *.def 26 | *.exp 27 | 28 | # Shared objects (inc. Windows DLLs) 29 | *.dll 30 | *.so 31 | *.so.* 32 | *.dylib 33 | 34 | # Executables 35 | *.exe 36 | *.out 37 | *.app 38 | *.i*86 39 | *.x86_64 40 | *.hex 41 | 42 | # IDEA files 43 | .idea 44 | 45 | # vscode files 46 | .history 47 | /_site/ 48 | /.jekyll-cache/ 49 | -------------------------------------------------------------------------------- /.config/qutebrowser/bookmarks/urls: -------------------------------------------------------------------------------- 1 | https://www.codechef.com/teams/register/INQU2019/new Register a new Team | CodeChef 2 | https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md CppCoreGuidelines/CppCoreGuidelines.md at master · isocpp/CppCoreGuidelines 3 | http://www.stroustrup.com/bs_faq2.html#overloadderived Stroustrup: C++ Style and Technique FAQ 4 | http://www.stroustrup.com/C++11FAQ.html#std-unique_ptr C++11 FAQ 5 | https://www.coursera.org/learn/cloud-networking Cloud Networking | Coursera 6 | https://play.typeracer.com/ TypeRacer - Test your typing speed and learn to type faster. Free typing game and competition. Way more fun than a typing tutor! 7 | -------------------------------------------------------------------------------- /.config/mutt/saveAttachement: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | export ATT_LF_FILE="/tmp/lf_save_attachement.xyz" 3 | if [ "$1" == "name" ]; then 4 | printf "Enter filename: " 5 | read fname 6 | fi 7 | if [ -a "$ATT_LF_FILE" ]; then 8 | notify-send "📧 Saving Failed" "Another client is saving attachement" 9 | else 10 | touch "$ATT_LF_FILE" 11 | ranger 12 | sed -i "s/^/s/g" "$ATT_LF_FILE" 13 | first_line="$(head -1 < "$ATT_LF_FILE")" 14 | xdotool type "$first_line" 15 | if [ -z "$1" ]; then 16 | xdotool key Return 17 | xdotool type "y" 18 | else 19 | [ -z "$fname" ] && exit 20 | xdotool type "/$fname" 21 | fi 22 | xdotool key Return 23 | rm "$ATT_LF_FILE" 24 | fi 25 | -------------------------------------------------------------------------------- /.local/bin/cron/checkup: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Syncs repositories and downloads updates, meant to be run as a cronjob. 3 | 4 | ping -q -c 1 1.1.1.1 > /dev/null || exit 5 | 6 | notify-send "Repository Sync" "Checking for package updates..." 7 | 8 | sudo pacman -Syyuw --noconfirm || notify-send "Error downloading updates. 9 | Check your internet connection, if pacman is already running, or run update manually to see errors." 10 | pkill -RTMIN+8 i3blocks 11 | 12 | if pacman -Qu | grep -v "\[ignored\]" 13 | then 14 | notify-send "Repository Sync" "Updates available. Click statusbar icon for update." 15 | else 16 | notify-send "Repository Sync" "Sync complete. No new packages for update." 17 | fi 18 | -------------------------------------------------------------------------------- /.local/bin/scripts/launch_jdtls: -------------------------------------------------------------------------------- 1 | JAR="/home/rishabh/.cache/nvim/nvim_lsp/jdtls/plugins/org.eclipse.equinox.launcher_*.jar" 2 | GRADLE_HOME=$HOME/gradle /usr/lib/jvm/java-14-openjdk/bin/java \ 3 | -Declipse.application=org.eclipse.jdt.ls.core.id1 \ 4 | -Dosgi.bundles.defaultStartLevel=4 \ 5 | -Declipse.product=org.eclipse.jdt.ls.core.product \ 6 | -Dlog.protocol=true \ 7 | -Dlog.level=ALL \ 8 | -Xms1g \ 9 | -Xmx2G \ 10 | -jar $(echo "$JAR") \ 11 | -configuration "/home/rishabh/.cache/nvim/nvim_lsp/jdtls/config_linux" \ 12 | -data "$HOME/workspace" \ 13 | # --add-modules=ALL-SYSTEM \ 14 | # --add-opens java.base/java.util=ALL-UNNAMED \ 15 | # --add-opens java.base/java.lang=ALL-UNNAMED 16 | -------------------------------------------------------------------------------- /.config/nvim/lua/rd/packer_download.lua: -------------------------------------------------------------------------------- 1 | local download_packer = function() 2 | if vim.fn.input "Download Packer? (y for yes)" ~= "y" then 3 | return 4 | end 5 | 6 | local directory = string.format("%s/site/pack/packer/start/", vim.fn.stdpath "data") 7 | 8 | vim.fn.mkdir(directory, "p") 9 | 10 | local out = vim.fn.system( 11 | string.format("git clone %s %s", "https://github.com/wbthomason/packer.nvim", directory .. "/packer.nvim") 12 | ) 13 | 14 | print(out) 15 | print "Downloading packer.nvim..." 16 | print "( You'll need to restart now )" 17 | end 18 | 19 | return function() 20 | if not pcall(require, "packer") then 21 | download_packer() 22 | 23 | return true 24 | end 25 | 26 | return false 27 | end 28 | -------------------------------------------------------------------------------- /.config/mpd/mpd.conf: -------------------------------------------------------------------------------- 1 | 2 | db_file "~/.config/mpd/database" 3 | log_file "~/.config/mpd/log" 4 | music_directory "~/Music" 5 | playlist_directory "~/.config/mpd/playlists" 6 | # pid_file "~/.config/mpd/pid" 7 | #state_file "~/.config/mpd/state" 8 | #sticker_file "~/.config/mpd/sticker.sql" 9 | 10 | auto_update "yes" 11 | 12 | bind_to_address "127.0.0.1" 13 | restore_paused "yes" 14 | max_output_buffer_size "16384" 15 | 16 | audio_output { 17 | type "pulse" 18 | name "pulse audio" 19 | mixer_type "software" 20 | } 21 | 22 | audio_output { 23 | type "fifo" 24 | name "toggle_visualizer" 25 | path "/tmp/mpd.fifo" 26 | format "44100:16:2" 27 | } 28 | -------------------------------------------------------------------------------- /.config/mpd/state: -------------------------------------------------------------------------------- 1 | sw_volume: 100 2 | audio_device_state:1:pulse audio 3 | audio_device_state:1:toggle_visualizer 4 | state: pause 5 | current: 11 6 | time: 10.757000 7 | random: 0 8 | repeat: 0 9 | single: 0 10 | consume: 0 11 | crossfade: 0 12 | mixrampdb: 0.000000 13 | mixrampdelay: -1.000000 14 | playlist_begin 15 | 0:Aitvaar-Jaz-Dhami.mp3 16 | 1:Baby Marvake Maanegi-(Mr-Jatt.com).mp3 17 | 2:Aa-Zara-(RaagSong.Com).mp3 18 | 3:Aitvaar-Jaz-Dhami.mp3 19 | 4:Aitvaar-Jaz-Dhami.mp3 20 | 5:Tere Bina Jeena Saza Ho Gaya - Rooh.mp3 21 | 6:Tere Bina Jeena Saza Ho Gaya - Rooh.mp3 22 | 7:Daru Badnaam-(Mr-Jatt.com).mp3 23 | 8:Tere Bina Jeena Saza Ho Gaya - Rooh.mp3 24 | 9:Baby Marvake Maanegi-(Mr-Jatt.com).mp3 25 | 10:Aitvaar-Jaz-Dhami.mp3 26 | 11:Aitvaar-Jaz-Dhami.mp3 27 | playlist_end 28 | -------------------------------------------------------------------------------- /Templates/present.tex: -------------------------------------------------------------------------------- 1 | \documentclass{beamer} 2 | \usepackage{graphicx} 3 | 4 | \title{<++>} 5 | \author{<++>} 6 | \usepackage{listings} 7 | \usepackage{color} 8 | 9 | \definecolor{dkgreen}{rgb}{0,0.6,0} 10 | \definecolor{gray}{rgb}{0.5,0.5,0.5} 11 | \definecolor{mauve}{rgb}{0.58,0,0.82} 12 | 13 | \lstset{frame=tb, 14 | language=Python, 15 | aboveskip=3mm, 16 | belowskip=3mm, 17 | showstringspaces=false, 18 | columns=flexible, 19 | basicstyle={\small\ttfamily}, 20 | numbers=none, 21 | numberstyle=\tiny\color{gray}, 22 | keywordstyle=\color{blue}, 23 | commentstyle=\color{dkgreen}, 24 | stringstyle=\color{mauve}, 25 | breaklines=true, 26 | breakatwhitespace=true, 27 | tabsize=3 28 | } 29 | 30 | \begin{document} 31 | 32 | \maketitle 33 | 34 | \end{document} 35 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/telescope.vim: -------------------------------------------------------------------------------- 1 | lua require'rd.telescope'.apply_config() 2 | 3 | nnoremap ff :Telescope find_files 4 | nnoremap fl :Rg 5 | nnoremap fL :Telescope live_grep 6 | nnoremap fk :Telescope current_buffer_fuzzy_find 7 | nnoremap fb :Telescope buffers 8 | nnoremap fT :Telescope builtin 9 | nnoremap fo :Telescope file_browser 10 | nnoremap fm :lua require'rd.telescope_custom'.man() 11 | nnoremap :lua require'rd.telescope_custom'.colorscheme() 12 | nnoremap :Telescope help_tags 13 | nnoremap ft :TodoTelescope 14 | nnoremap gb :Telescope git_branches 15 | -------------------------------------------------------------------------------- /Templates/paper.tex: -------------------------------------------------------------------------------- 1 | \documentclass[<++>]{IEEEtran} 2 | \begin{document} 3 | 4 | \author{<++>} 5 | \title{<++>} 6 | \usepackage{listings} 7 | \usepackage{color} 8 | 9 | \definecolor{dkgreen}{rgb}{0,0.6,0} 10 | \definecolor{gray}{rgb}{0.5,0.5,0.5} 11 | \definecolor{mauve}{rgb}{0.58,0,0.82} 12 | 13 | \lstset{frame=tb, 14 | language=Python, 15 | aboveskip=3mm, 16 | belowskip=3mm, 17 | showstringspaces=false, 18 | columns=flexible, 19 | basicstyle={\small\ttfamily}, 20 | numbers=none, 21 | numberstyle=\tiny\color{gray}, 22 | keywordstyle=\color{blue}, 23 | commentstyle=\color{dkgreen}, 24 | stringstyle=\color{mauve}, 25 | breaklines=true, 26 | breakatwhitespace=true, 27 | tabsize=3 28 | } 29 | 30 | \maketitle 31 | \begin{abstract} 32 | <++> 33 | \end{abstract} 34 | 35 | \section{Introduction} 36 | <++> 37 | 38 | \end{document} 39 | -------------------------------------------------------------------------------- /.config/awesome/lain/lain-scm-1.rockspec: -------------------------------------------------------------------------------- 1 | package = "lain" 2 | version = "scm-1" 3 | source = { 4 | url = "https://github.com/lcpz/lain", 5 | tag = "scm-1`" 6 | } 7 | description = { 8 | summary = "Layout, widgets and utilities for Awesome WM", 9 | detailed = [[ 10 | Successor of awesome-vain, this module provides alternative layouts, asynchronous widgets and utility functions for Awesome WM. 11 | 12 | Dependencies: curl (for IMAP, MPD and weather widgets); Glib >= 2.54 (for filesystems widget). 13 | ]], 14 | homepage = "https://github.com/lcpz/lain", 15 | license = "GPL-2.0" 16 | } 17 | dependencies = { 18 | "lua >= 5.1", 19 | "awesome >= 4.0", 20 | "Glib >= 2.54", 21 | "curl" 22 | } 23 | supported_platforms = { "linux" } 24 | build = { 25 | type = "builtin", 26 | modules = { lain = "init.lua" } 27 | } 28 | -------------------------------------------------------------------------------- /.config/nvim/lua/rd/telescope.lua: -------------------------------------------------------------------------------- 1 | local function apply_config() 2 | require("telescope").setup({ 3 | defaults = { 4 | color_devicons = true, 5 | set_env = { ["COLORTERM"] = "truecolor" }, 6 | layout_config = { 7 | prompt_position = "top", 8 | }, 9 | sorting_strategy = "ascending", 10 | }, 11 | extensions = { 12 | fzf = { 13 | fuzzy = true, -- false will only do exact matching 14 | override_generic_sorter = false, -- override the generic sorter 15 | override_file_sorter = true, -- override the file sorter 16 | case_mode = "smart_case", -- or "ignore_case" or "respect_case" 17 | -- the default case_mode is "smart_case" 18 | }, 19 | }, 20 | }) 21 | end 22 | 23 | require('telescope').load_extension('fzf') 24 | 25 | return { 26 | apply_config = apply_config, 27 | } 28 | -------------------------------------------------------------------------------- /.local/bin/scripts/printVim: -------------------------------------------------------------------------------- 1 | file=$(readlink -f "$1") 2 | dir=$(dirname "$file") 3 | base="${file%.*}" 4 | 5 | cd "$dir" || exit 6 | 7 | basename="$(echo "$1" | sed 's/\.[^\/.]*$//')" 8 | 9 | 10 | case "$file" in 11 | *.tex|*.md|*.[rR]md|*.ms|*.me|*.mom) setsid zathura "$basename".pdf >/dev/null 2>&1 & ;; 12 | *.[0-9]) setsid "$READER" "$basename".pdf >/dev/null 2>&1 & ;; 13 | *.html) setsid $BROWSER "$basename".html >/dev/null 2>&1 & ;; 14 | *.sent) setsid sent "$1" >/dev/null 2>&1 & ;; 15 | *\.c) urxvt --hold -e $base & ;; 16 | *\.cc) urxvt --hold -e $base & ;; 17 | *\.cpp) urxvt --hold -e $base & ;; 18 | *\.java) urxvt --hold -e java "$base" & ;; 19 | *\.py) urxvt --hold -e python "$file" & ;; 20 | *\.go) urxvt --hold -e go run "$file" & ;; 21 | *) sed 1q "$file" | grep "^#!/" | sed "s/^#!//" | xargs -r -I % "$file" ;; 22 | esac 23 | -------------------------------------------------------------------------------- /.local/bin/statusbar/battery: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Give a battery name (e.g. BAT0) as an argument. 3 | 4 | capacity=$(cat /sys/class/power_supply/"$1"/capacity) || exit 5 | status=$(cat /sys/class/power_supply/"$1"/status) 6 | icon=🔋 7 | if [ "$capacity" -ge 92 ]; then 8 | if [ "$status" = "Charging" ]; then 9 | notify-send --urgency="critical" "Battery Charged" 10 | fi 11 | elif [ "$capacity" -le 9 ]; then 12 | warn="Low" 13 | if [ "$status" = "Discharging" ]; then 14 | notify-send --urgency="critical" "Battery Low" 15 | fi 16 | elif [ "$capacity" -l 3 ]; then 17 | warn="Very Low" 18 | fi 19 | 20 | [ -z $warn ] && warn=" " 21 | 22 | res=$(printf "$icon %s%s%s" "$(echo "$status" | sed -e "s/,//;s/Discharging/Discharging/;s/Not Charging/Not Charging/;s/Charging/Charging/;s/Unknown/Error/;s/Full/Full/;s/ 0*/ /g;s/ :/ /g")" " $warn " "$(echo "$capacity" | sed -e 's/$/%/')") 23 | echo $res 24 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/ts_config.lua: -------------------------------------------------------------------------------- 1 | require'nvim-treesitter.configs'.setup { 2 | ensure_installed = "all", 3 | highlight = { 4 | enable = true, 5 | }, 6 | textobjects = { 7 | select = { 8 | enable = true, 9 | keymaps = { 10 | -- You can use the capture groups defined in textobjects.scm 11 | ["af"] = "@function.outer", 12 | ["if"] = "@function.inner", 13 | ["ac"] = "@class.outer", 14 | ["ic"] = "@class.inner", 15 | ["ab"] = "@block.outer", 16 | ["ib"] = "@block.inner", 17 | ["as"] = "@scopename.outer", 18 | ["is"] = "@scopename.inner", 19 | ["al"] = "@loop.outer", 20 | ["il"] = "@loop.inner", 21 | }, 22 | }, 23 | swap = { 24 | enable = true, 25 | swap_next = { 26 | ["an"] = "@parameter.inner", 27 | }, 28 | swap_previous = { 29 | ["ap"] = "@parameter.inner", 30 | }, 31 | }, 32 | }, 33 | } 34 | -------------------------------------------------------------------------------- /.config/zathura/zathurarc: -------------------------------------------------------------------------------- 1 | set statusbar-h-padding 0 2 | set recolor-darkcolor "#dcdccc" 3 | set statusbar-v-padding 0 4 | set page-padding 1 5 | map u scroll half-up 6 | map d scroll half-down 7 | map D toggle_page_mode 8 | map r reload 9 | map R rotate 10 | map K zoom in 11 | map J zoom out 12 | map i recolor 13 | map p print 14 | map P toggle_presentation 15 | map v change_mode visual 16 | set selection-clipboard clipboard 17 | 18 | map [presentation] l navigate next 19 | map [presentation] h navigate previous 20 | map [presentation] j navigate next 21 | map [presentation] k navigate previous 22 | map [presentation] R rotate rotate-ccw 23 | map [presentation] i recolor 24 | map [presentation] gg goto top 25 | map [presentation] G goto bottom 26 | map [presentation] jumplist backward 27 | map [presentation] jumplist forward 28 | map [presentation] m mark_add 29 | map [presentation] P toggle_presentation 30 | -------------------------------------------------------------------------------- /.config/fontconfig/fonts.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | sans-serif 7 | 8 | Noto Sans 9 | Noto Color Emoji 10 | Noto Emoji 11 | DejaVu Sans 12 | 13 | 14 | 15 | 16 | serif 17 | 18 | Noto Serif 19 | Noto Color Emoji 20 | Noto Emoji 21 | DejaVu Serif 22 | 23 | 24 | 25 | 26 | monospace 27 | 28 | SauceCodePro Nerd Font 29 | Noto Mono 30 | Noto Color Emoji 31 | Noto Emoji 32 | DejaVu Sans Mono 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /.local/bin/scripts/tmux-urlview/urlview.tmux: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | get_tmux_option() { 4 | local option=$1 5 | local default_value=$2 6 | local option_value=$(tmux show-option -gqv "$option") 7 | if [ -z $option_value ]; then 8 | echo $default_value 9 | else 10 | echo $option_value 11 | fi 12 | } 13 | 14 | find_executable() { 15 | if type urlview >/dev/null 2>&1; then 16 | echo "urlview" 17 | elif type extract_url >/dev/null 2>&1; then 18 | echo "extract_url" 19 | fi 20 | } 21 | 22 | readonly key="$(get_tmux_option "@urlview-key" "u")" 23 | readonly cmd="$(find_executable)" 24 | 25 | if [ -z "$cmd" ]; then 26 | tmux display-message "Failed to load tmux-urlview: neither urlview nor extract_url were found on the PATH" 27 | else 28 | tmux bind-key "$key" capture-pane -J \\\; \ 29 | save-buffer "${TMPDIR:-/tmp}/tmux-buffer" \\\; \ 30 | delete-buffer \\\; \ 31 | split-window -l 10 "$cmd '${TMPDIR:-/tmp}/tmux-buffer'" 32 | fi 33 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | # This is a basic workflow to help you get started with Actions 2 | 3 | name: luacheck 4 | 5 | # Controls when the action will run. 6 | on: 7 | # Triggers the workflow on push or pull request events but only for the master branch 8 | push: 9 | branches: 10 | - '*' 11 | pull_request: 12 | branches: [ master ] 13 | 14 | # Allows you to run this workflow manually from the Actions tab 15 | workflow_dispatch: 16 | 17 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 18 | jobs: 19 | # This workflow contains a single job called "build" 20 | build: 21 | # The type of runner that the job will run on 22 | runs-on: ubuntu-latest 23 | 24 | # Steps represent a sequence of tasks that will be executed as part of the job 25 | steps: 26 | - uses: actions/checkout@v2 27 | - name: Run Luacheck 28 | uses: nebularg/actions-luacheck@v1.1.0 29 | -------------------------------------------------------------------------------- /.local/bin/scripts/compiler: -------------------------------------------------------------------------------- 1 | file=$(readlink -f "$1") 2 | dir=$(dirname "$file") 3 | base="${file%.*}" 4 | 5 | cd "$dir" || exit 6 | 7 | case "$file" in 8 | *\.tex) pdflatex "$file" ;; 9 | *\.md) pandoc "$file" --pdf-engine=xelatex -o "$base".pdf ;; 10 | *config.h) sudo make install ;; 11 | *config.def.h) rm -f config.h;sudo make install ;; 12 | *\.c) gcc "$file" -o "$base" ;; 13 | *\.cc) g++ "$file" -o "$base" ;; 14 | *\.cpp) g++ "$file" -o "$base" ;; 15 | *\.java) javac "$file" ;; 16 | *\.py) python "$file" ;; 17 | *\.go) go run "$file" ;; 18 | *) sed 1q "$file" | grep "^#!/" | sed "s/^#!//" | xargs -r -I % "$file" ;; 19 | *\.ms) refer -PS -e "$file" | groff -me -ms -kept -T pdf > "$base".pdf ;; 20 | *\.mom) refer -PS -e "$file" | groff -mom -kept -T pdf > "$base".pdf ;; 21 | *\.[0-9]) refer -PS -e "$file" | groff -mandoc -T pdf > "$base".pdf ;; 22 | *\.[rR]md) Rscript -e "require(rmarkdown); rmarkdown::render('$file', quiet=TRUE)" ;; 23 | esac 24 | -------------------------------------------------------------------------------- /Templates/Makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | # 3 | # Doc build settings 4 | # 5 | DOCDIR = doc 6 | 7 | # 8 | # Test build settings 9 | # 10 | TESTDIR = test 11 | 12 | # 13 | # Executable build settings 14 | # 15 | CFLAGS = -Wall 16 | SRCDIR = src 17 | INCDIR = include 18 | LIBDIR = lib 19 | BINDIR = bin 20 | EXE = vxlan-agent 21 | 22 | # 23 | # Debug build settings 24 | # 25 | DEBUGDIR = debug 26 | DEBUGFLAGS = -g -Wall 27 | DEBUGEXE = $(DEBUGDIR)/$(EXE) 28 | 29 | # 30 | # Binary rules 31 | # 32 | exe: $(EXE) 33 | 34 | $(EXE): $(wildcard $(BINDIR)/*.o) 35 | $(CC) $(CFLAGS) -o $(EXE) $^ 36 | 37 | $(BINDIR)/%.o: $(INCDIR/%.h) $(SRCDIR/%.c) 38 | $(CC) -c $(CGLAGS) -o $@ $< 39 | 40 | # 41 | # Debug build rules 42 | # 43 | debug: $(DEBUGEXE) 44 | 45 | $(DEBUGEXE): $(wildcard $(DEBUGDIR)/*.o) 46 | $(CC) $(CFLAGS) $(DEBUGFLAGS) -o $(DEBUGEXE) $^ 47 | 48 | $(DEBUGDIR)/%.o: $(INCDIR/%.h) $(SRCDIR/%.c) 49 | $(CC) -c $(CFLAGS) $(DEBUGFLAGS) -o $@ $< 50 | 51 | clean: 52 | rm -rf $(BINDIR)/* 53 | rm -rf $(DEBUGDIR)/* 54 | 55 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/completion.lua: -------------------------------------------------------------------------------- 1 | local cmp = require("cmp") 2 | cmp.setup({ 3 | snippet = { 4 | expand = function(args) 5 | vim.fn["vsnip#anonymous"](args.body) 6 | end, 7 | }, 8 | mapping = { 9 | [""] = cmp.mapping.scroll_docs(-4), 10 | [""] = cmp.mapping.scroll_docs(4), 11 | [""] = cmp.mapping.complete(), 12 | [""] = cmp.mapping.close(), 13 | [""] = cmp.mapping.confirm({ 14 | behavior = cmp.ConfirmBehavior.Replace, 15 | select = false, 16 | }), 17 | }, 18 | sources = { 19 | { name = "buffer" }, 20 | { name = "path" }, 21 | { name = "nvim_lua" }, 22 | { name = "nvim_lsp" }, 23 | { name = "vsnip" }, 24 | }, 25 | comparators = { 26 | function(first, second) 27 | if first.source.name == "nvim_lsp" then 28 | return true 29 | else 30 | if second.source.name == "nvim_lsp" then 31 | return false 32 | else 33 | return nil 34 | end 35 | end 36 | end, 37 | }, 38 | }) 39 | -------------------------------------------------------------------------------- /.config/awesome/lain/widget/sysload.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Licensed under GNU General Public License v2 4 | * (c) 2013, Luca CPZ 5 | * (c) 2010-2012, Peter Hofmann 6 | 7 | --]] 8 | 9 | local helpers = require("lain.helpers") 10 | local wibox = require("wibox") 11 | local open, match = io.open, string.match 12 | 13 | -- System load 14 | -- lain.widget.sysload 15 | 16 | local function factory(args) 17 | args = args or {} 18 | 19 | local sysload = { widget = args.widget or wibox.widget.textbox() } 20 | local timeout = args.timeout or 2 21 | local settings = args.settings or function() end 22 | 23 | function sysload.update() 24 | local f = open("/proc/loadavg") 25 | local ret = f:read("*all") 26 | f:close() 27 | 28 | load_1, load_5, load_15 = match(ret, "([^%s]+) ([^%s]+) ([^%s]+)") 29 | 30 | widget = sysload.widget 31 | settings() 32 | end 33 | 34 | helpers.newtimer("sysload", timeout, sysload.update) 35 | 36 | return sysload 37 | end 38 | 39 | return factory 40 | -------------------------------------------------------------------------------- /.config/qutebrowser/config.py: -------------------------------------------------------------------------------- 1 | import subprocess 2 | 3 | from qutebrowser.config.configfiles import ConfigAPI # noqa: F401 4 | from qutebrowser.config.config import ConfigContainer # noqa: F401 5 | config = config # type: ConfigAPI # noqa: F821 6 | c = c # type: ConfigContainer # noqa: F821 7 | def read_xresources(prefix): 8 | props = {} 9 | x = subprocess.run(['xrdb', '-query'], stdout=subprocess.PIPE) 10 | lines = x.stdout.decode().split('\n') 11 | for line in filter(lambda l : l.startswith(prefix), lines): 12 | prop, _, value = line.partition(':\t') 13 | props[prop] = value 14 | return props 15 | 16 | xresources = read_xresources('*') 17 | c.colors.statusbar.normal.bg = xresources['*.background'] 18 | c.url.start_pages = ["https://www.google.com"] 19 | c.url.searchengines={"DEFAULT": "https://www.google.com/search?hl=en&q={}", "wa": "https://wiki.archlinux.org/?search={}","yt":"http://www.youtube.com/results?search_query={}","w":"https://en.wikipedia.org/w/index.php?search={}&title=Special:Search","gt":"https://github.com/search?q={}","fb":"https://www.facebook.com/search/top/?q={}"} 20 | -------------------------------------------------------------------------------- /.config/mutt/muttrc: -------------------------------------------------------------------------------- 1 | # vim: filetype=neomuttrc 2 | source /usr/share/mutt-wizard/mutt-wizard.muttrc # mw-autogenerated 3 | unmailboxes * 4 | set mailcap_path = ~/.config/mutt/mailcap 5 | macro compose A "$HOME/.config/mutt/rangerpicksource /tmp/ranger_pick$HOME/.config/mutt/rangerpick clean" "Attach with Ranger" 6 | macro attach S "sh $HOME/.config/mutt/saveAttachement" 7 | macro attach N "sh $HOME/.config/mutt/saveAttachement name" 8 | # set query_command=”mu cfind –format=mutt-ab ‘%s'” 9 | macro index ,r "T ~O | ~N\n;N" 10 | set editor="nvim" 11 | set query_command="abook --config $XDG_CONFIG_HOME/abook/abookrc --datafile $XDG_CACHE_HOME/abook/addressbook --mutt-query '%s'" 12 | macro index a "|abook --config $XDG_CONFIG_HOME/abook/abookrc --datafile $XDG_CACHE_HOME/abook/addressbook --add-email\n" 'add sender to abook' 13 | macro pager a "|abook --config $XDG_CONFIG_HOME/abook/abookrc --datafile $XDG_CACHE_HOME/abook/addressbook --add-email\n" 'add sender to abook' 14 | bind editor complete-query 15 | macro index ,, "T ~O | ~N\n;N" 16 | -------------------------------------------------------------------------------- /.local/bin/scripts/tmux-urlview/LICENSE.md: -------------------------------------------------------------------------------- 1 | Copyright (C) Joshua Boy Nicolai Appelman 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining 4 | a copy of this software and associated documentation files (the "Software"), 5 | to deal in the Software without restriction, including without limitation 6 | the rights to use, copy, modify, merge, publish, distribute, sublicense, 7 | and/or sell copies of the Software, and to permit persons to whom the 8 | Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included 11 | in all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 14 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 15 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 17 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 18 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE 19 | OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/themes.lua: -------------------------------------------------------------------------------- 1 | local themes = { 2 | standard = { 3 | [4] = '#216e39', 4 | [3] = '#30a14e', 5 | [2] = '#40c463', 6 | [1] = '#9be9a8', 7 | [0] = '#ebedf0' 8 | }, 9 | classic = { 10 | [4] = '#196127', 11 | [3] = '#239a3b', 12 | [2] = '#7bc96f', 13 | [1] = '#c6e48b', 14 | [0] = '#ebedf0', 15 | }, 16 | teal = { 17 | [4] = '#458B74', 18 | [3] = '#66CDAA', 19 | [2] = '#76EEC6', 20 | [1] = '#7FFFD4', 21 | [0] = '#ebedf0', 22 | }, 23 | leftpad = { 24 | [4] = '#F6F6F6', 25 | [3] = '#DDDDDD', 26 | [2] = '#A5A5A5', 27 | [1] = '#646464', 28 | [0] = '#2F2F2F', 29 | }, 30 | dracula = { 31 | [4] = '#ff79c6', 32 | [3] = '#bd93f9', 33 | [2] = '#6272a4', 34 | [1] = '#44475a', 35 | [0] = '#282a36' 36 | }, 37 | pink = { 38 | [4] = '#61185f', 39 | [3] = '#a74aa8', 40 | [2] = '#ca5bcc', 41 | [1] = '#e48bdc', 42 | [0] = '#ebedf0', 43 | } 44 | } 45 | 46 | return themes -------------------------------------------------------------------------------- /.config/nvim/plugin/keymaps.vim: -------------------------------------------------------------------------------- 1 | nnoremap q: 2 | nnoremap :tabnext 3 | nnoremap :tabprevious 4 | nnoremap r :set hlsearch! 5 | nnoremap un :UndotreeToggle 6 | nnoremap Q 7 | 8 | vnoremap cp "+y 9 | nnoremap cp "+y 10 | nnoremap cpp "+yy 11 | vnoremap zp "+p 12 | vnoremap zP "+P 13 | nnoremap zp "+p 14 | nnoremap zP "+P 15 | vnoremap p "_dP 16 | 17 | tnoremap ,, 18 | 19 | nnoremap :vertical resize +3 20 | nnoremap :vertical resize -3 21 | nnoremap :resize +3 22 | nnoremap :resize -3 23 | 24 | nnoremap fd :Ex 25 | nnoremap sC :CheatWithoutComments 26 | nnoremap sc :Cheat 27 | 28 | vnoremap "hy:%s/h/ 29 | 30 | nnoremap k (v:count >= 3 ? "m'" . v:count : "") . 'k' 31 | nnoremap j (v:count >= 3 ? "m'" . v:count : "") . 'j' 32 | 33 | nnoremap t :lua require'rd.colors'.toggle_transparency() 34 | 35 | nnoremap n nzzzv 36 | nnoremap N Nzzzv 37 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/todo-widget/README.md: -------------------------------------------------------------------------------- 1 | # ToDo Widget 2 | 3 | This widget displays a list of to do items and allows to mark item as done/undone, delete an item and create new ones: 4 | 5 | ![screenshot](./todo.gif) 6 | 7 | # Installation 8 | 9 | Widget persists todo items as a JSON, so in order to simplify JSON serialisation/deserialisation download a **json.lua** from this repository: https://github.com/rxi/json.lua under `~/.config/awesone` folder. And don't forget to star a repo :) 10 | 11 | Then clone this repository under **~/.config/awesome/** and add the widget in **rc.lua**: 12 | 13 | ```lua 14 | local todo_widget = require("awesome-wm-widgets.todo-widget.todo") 15 | ... 16 | s.mytasklist, -- Middle widget 17 | { -- Right widgets 18 | layout = wibox.layout.fixed.horizontal, 19 | ... 20 | -- default 21 | todo_widget(), 22 | ... 23 | ``` 24 | Also note that widget uses [Arc Icons](https://github.com/horst3180/arc-icon-theme) and expects them to be installed under `/usr/share/icons/Arc/`. 25 | 26 | # Theming 27 | 28 | Widget uses your theme's colors. In case you want to have different colors, without changing your theme, please create an issue for it. I'll extract them as a widget parameters. 29 | -------------------------------------------------------------------------------- /.config/ranger/rc.conf: -------------------------------------------------------------------------------- 1 | set preview_script ~/.config/ranger/scope.sh 2 | set preview_images true 3 | set preview_images_method ueberzug 4 | set w3m_delay 0.1 5 | set dirname_in_tabs true 6 | set mouse_enabled true 7 | alias e edit 8 | map cd console cd%space 9 | map md console mkdir%space 10 | map mf console touch%space 11 | map gf cd ~/Documents/research/floodlight 12 | map gr cd ~/Documents/research/ 13 | map gF cd ~/Documents/research/floodlight/src/main/java/net/floodlightcontroller 14 | map gp cd ~/Pictures 15 | map gC cd ~/Documents/C++-Shell 16 | map gi cd ~/Documents/iiit-dwd 17 | map gd cd ~/Documents 18 | map gG cd ~/git 19 | map gM cd ~/.local/mnt/ 20 | map gm cd ~/Music 21 | map gv cd ~/Videos 22 | map gb cd ~/Documents/books 23 | map yp shell -d printf %d/%f | xsel -i -p -b 24 | map yd shell -d printf %d | xsel -i -p -b 25 | map yn shell -d printf %f | xsel -i -p -b 26 | map b shell -d feh --bg-scale %d/%f 27 | # a plugin that adds file glyphs / icon support to Ranger: 28 | # https://github.com/alexanderjeurissen/ranger_devicons 29 | # default_linemode devicons 30 | map shell dragon -a -x %p 31 | map ma console shell cp ~/Templates/article.tex%space 32 | map mp console shell cp ~/Templates/present.tex%space 33 | map pd shell pwd > "$ATT_LF_FILE" 34 | default_linemode devicons 35 | -------------------------------------------------------------------------------- /.local/bin/scripts/change_terminal_coloscheme.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import yaml 4 | import os 5 | import re 6 | 7 | 8 | CONFIG_FILE_NAME = "alacritty.yml" 9 | CONFIG_FILE_DIR = os.path.expanduser("~/.config/alacritty/") 10 | CONFIG_FILE_PATH = os.path.join(CONFIG_FILE_DIR, CONFIG_FILE_NAME) 11 | 12 | COLOR_SCHEME_LINE_SEARCH = "colors: \*(\S+)" 13 | COLOR_SCHEME_LINE_TEMPLATE = "colors: *{}\n" 14 | 15 | with open(CONFIG_FILE_PATH, "r") as config_file: 16 | config = yaml.safe_load(config_file) 17 | config_file.seek(0) 18 | lines = config_file.readlines() 19 | 20 | colors_line_index = -1 21 | for i, line in enumerate(lines): 22 | match = re.search(COLOR_SCHEME_LINE_SEARCH, line) 23 | if match is not None: 24 | current_color_scheme = match.group(1) 25 | colors_line_index = i 26 | 27 | available_color_schemes = list(config["schemes"].keys()) 28 | 29 | color_scheme_index = available_color_schemes.index(current_color_scheme) 30 | color_scheme_index = \ 31 | (color_scheme_index + 1) % len(available_color_schemes) 32 | 33 | lines[colors_line_index] = COLOR_SCHEME_LINE_TEMPLATE.format( 34 | available_color_schemes[color_scheme_index]) 35 | 36 | with open(CONFIG_FILE_PATH, "w") as config_file: 37 | for line in lines: 38 | config_file.write(line) 39 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/fs-widget/README.md: -------------------------------------------------------------------------------- 1 | # Filesystem Widget 2 | 3 | This widget shows file system disk space usage which is based on the `df` output. When clicked another widget appears with more detailed information. By default it monitors the "/" mount. It can be configured with a list of mounts to monitor though only the first will show in the wibar. To have multiple mounts displayed on the wibar simply define multiple `fs_widgets` with different mounts as arguments. 4 | 5 | ![](./screenshot.png) 6 | 7 | ## Customizations 8 | 9 | It is possible to customize widget by providing a table with all or some of the following config parameters: 10 | 11 | | Name | Default | Description | 12 | |---|---|---| 13 | | `mounts` | `{'/'}` | Table with mounts to monitor, check the output from a `df` command for available options (column 'Mounted on') | 14 | | `timeout` | 60 | How often in seconds the widget refreshes | 15 | 16 | ## Installation 17 | 18 | Clone/download repo and use the widget in **rc.lua**: 19 | 20 | ```lua 21 | local fs_widget = require("awesome-wm-widgets.fs-widget.fs-widget") 22 | ... 23 | s.mywibox:setup { 24 | s.mytasklist, -- Middle widget 25 | { -- Right widgets 26 | fs_widget(), --default 27 | fs_widget({ mounts = { '/', '/mnt/music' } }), -- multiple mounts 28 | ... 29 | ``` 30 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/lsputils.lua: -------------------------------------------------------------------------------- 1 | local codeAction = require'lsputil.codeAction' 2 | local location = require'lsputil.locations' 3 | local symbols = require'lsputil.symbols' 4 | vim.g.lsp_utils_location_opts = { 5 | height = 24, 6 | mode = 'editor', 7 | list = { 8 | border = true, 9 | numbering = true 10 | }, 11 | preview = { 12 | title = 'Location Preview', 13 | border = true, 14 | }, 15 | prompt = {} 16 | } 17 | 18 | 19 | vim.g.lsp_utils_symbols_opts = { 20 | height = 24, 21 | mode = 'editor', 22 | list = { 23 | border = true, 24 | numbering = false, 25 | }, 26 | preview = { 27 | title = 'Symbols Preview', 28 | border = true, 29 | }, 30 | prompt = {} 31 | } 32 | 33 | vim.lsp.handlers['textDocument/codeAction'] = codeAction.code_action_handler 34 | vim.lsp.handlers['textDocument/references'] = location.references_handler 35 | vim.lsp.handlers['textDocument/definition'] = location.definition_handler 36 | vim.lsp.handlers['textDocument/declaration'] = location.declaration_handler 37 | vim.lsp.handlers['textDocument/typeDefinition'] = location.typeDefinition_handler 38 | vim.lsp.handlers['textDocument/implementation'] = location.implementation_handler 39 | vim.lsp.handlers['textDocument/documentSymbol'] = symbols.document_handler 40 | vim.lsp.handlers['workspace/symbol'] = symbols.workspace_handler 41 | -------------------------------------------------------------------------------- /.local/bin/scripts/bibsearch: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | comm='c' 3 | anycase=0 4 | while [[ $comm = 'c' ]] 5 | do 6 | printf "\033[31;1mEnter the pattern or command-line option: \033[0m " 7 | read line 8 | if [[ "$line" = "-i" ]]; then 9 | anycase=1 10 | echo "case-insensitive matching enabled...." 11 | continue 12 | elif [[ "$line" = "-f" ]]; then 13 | printf "\033[31;1mEnter bibliography file: \033[0m " 14 | read file 15 | continue; 16 | fi 17 | if [[ "$anycase" = "1" ]]; then 18 | if [[ -z "$file" ]]; then 19 | [[ ! -f "$BIB" ]] && printf "No bibliography\n" && exit 20 | awk 'BEGIN { RS = "(^|\n)@" ; ORS = "\n\n\n" ; IGNORECASE=1 } /'"$line"'/ {print $0}' "$BIB" 21 | else 22 | [[ ! -f "$file" ]] && printf "No such file\n" && exit 23 | awk 'BEGIN { RS = "(^|\n)@" ; ORS = "\n\n\n" ; IGNORECASE=1 } /'"$line"'/ {print $0}' "$file" 24 | fi 25 | else 26 | if [[ -z "$file" ]]; then 27 | [[ ! -f "$BIB" ]] && printf "No bibliography\n" && exit 28 | awk 'BEGIN { RS = "(^|\n)@" ; ORS = "\n\n\n" } /'"$line"'/ {print $0}' "$BIB" 29 | else 30 | [[ ! -f "$file" ]] && printf "No such file\n" && exit 31 | awk 'BEGIN { RS = "(^|\n)@" ; ORS = "\n\n\n" } /'"$line"'/ {print $0}' "$file" 32 | fi 33 | fi 34 | printf "\033[31;1mEnter c to continue otherwise exit\033[31;1m\n" 35 | read comm 36 | clear 37 | anycase=0 38 | file="" 39 | done 40 | -------------------------------------------------------------------------------- /.config/sxiv/exec/key-handler: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | while read file 3 | do 4 | case "$1" in 5 | "w") feh --bg-scale "$file" ;; 6 | "c") 7 | [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ~/.config/bmdirs | awk '{print $2}' | dmenu -l 20 -i -p "Copy file(s) to where?" | sed "s|~|$HOME|g")" 8 | [ -z "$destdir" ] && exit 9 | cp "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file copied to $destdir." & 10 | ;; 11 | "m") 12 | [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ~/.config/bmdirs | awk '{print $2}' | dmenu -l 20 -i -p "Move file(s) to where?" | sed "s|~|$HOME|g")" 13 | [ -z "$destdir" ] && exit 14 | mv "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file moved to $destdir." & 15 | ;; 16 | "r") 17 | convert -rotate 90 "$file" "$file" ;; 18 | "R") 19 | convert -rotate -90 "$file" "$file" ;; 20 | "f") 21 | convert -flop "$file" "$file" ;; 22 | "y") 23 | echo -n "$file" |sed "s/ /\\\ /g"| xclip -selection clipboard && 24 | notify-send "$file copied to clipboard" & ;; 25 | "Y") 26 | echo -n "$(readlink -f "$file")" | sed "s/ /\\\ /g" | xclip -selection clipboard && 27 | notify-send "$(readlink -f "$file") copied to clipboard" & ;; 28 | "d") 29 | [ "$(printf "Yes\\nNo" | dmenu -i -p "Really delete $file?")" = "Yes" ] && rm "$file" && notify-send "$file deleted." ;; 30 | esac 31 | done 32 | -------------------------------------------------------------------------------- /Templates/article.tex: -------------------------------------------------------------------------------- 1 | \documentclass{article} 2 | \setlength{\oddsidemargin}{0.25 in} 3 | \setlength{\evensidemargin}{-0.25 in} 4 | \setlength{\topmargin}{-0.6 in} 5 | \setlength{\textwidth}{6.5 in} 6 | \setlength{\textheight}{8.5 in} 7 | \setlength{\headsep}{0.75 in} 8 | \setlength{\parindent}{0 in} 9 | \setlength{\parskip}{0.1 in} 10 | \usepackage{amsmath,amsfonts,graphicx} 11 | \usepackage{amssymb} 12 | \usepackage{titling} 13 | \usepackage{listings} 14 | \usepackage{color} 15 | \usepackage{algorithm} 16 | \usepackage[noend]{algpseudocode} 17 | 18 | \usepackage[backend=biber]{biblatex} 19 | \addbibresource{~/.local/share/bib/global.bib} 20 | 21 | \definecolor{dkgreen}{rgb}{0,0.6,0} 22 | \definecolor{gray}{rgb}{0.5,0.5,0.5} 23 | \definecolor{mauve}{rgb}{0.58,0,0.82} 24 | 25 | \lstset{frame=tb, 26 | language=Python, 27 | aboveskip=3mm, 28 | belowskip=3mm, 29 | showstringspaces=false, 30 | columns=flexible, 31 | basicstyle={\small\ttfamily}, 32 | numbers=none, 33 | numberstyle=\tiny\color{gray}, 34 | keywordstyle=\color{blue}, 35 | commentstyle=\color{dkgreen}, 36 | stringstyle=\color{mauve}, 37 | breaklines=true, 38 | breakatwhitespace=true, 39 | tabsize=3 40 | } 41 | \makeatletter 42 | \def\BState{\State\hskip-\ALG@thistlm} 43 | \makeatother 44 | \author{<++>} 45 | \title{<++>} 46 | 47 | \begin{document} 48 | 49 | \maketitle 50 | <++> 51 | 52 | \printbibliography 53 | \end{document} 54 | -------------------------------------------------------------------------------- /.config/nvim/after/plugin/harpoon.vim: -------------------------------------------------------------------------------- 1 | nnoremap j :lua require("harpoon.ui").nav_file(1)zzzv 2 | nnoremap k :lua require("harpoon.ui").nav_file(2)zzzv 3 | nnoremap l :lua require("harpoon.ui").nav_file(3)zzzv 4 | nnoremap ; :lua require("harpoon.ui").nav_file(4)zzzv 5 | nnoremap sj :lua require("harpoon.term").gotoTerminal(1) 6 | nnoremap sk :lua require("harpoon.term").gotoTerminal(2) 7 | nnoremap sl :lua require("harpoon.term").gotoTerminal(3) 8 | nnoremap s; :lua require("harpoon.term").gotoTerminal(4) 9 | nnoremap p :lua require("harpoon.ui").toggle_quick_menu() 10 | nnoremap aj :lua require("harpoon.term").sendCommand(4, 1):lua require("harpoon.term").gotoTerminal(4)a 11 | nnoremap ak :lua require("harpoon.term").sendCommand(4, 2):lua require("harpoon.term").gotoTerminal(4)a 12 | nnoremap al :lua require("harpoon.term").sendCommand(4, 3):lua require("harpoon.term").gotoTerminal(4)a 13 | nnoremap a; :lua require("harpoon.term").sendCommand(4, 4):lua require("harpoon.term").gotoTerminal(4)a 14 | nnoremap :lua require("harpoon.cmd-ui").toggle_quick_menu() 15 | nnoremap mh :lua require("harpoon.mark").add_file() 16 | -------------------------------------------------------------------------------- /.config/awesome/lain/widget/temp.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Licensed under GNU General Public License v2 4 | * (c) 2013, Luca CPZ 5 | 6 | --]] 7 | 8 | local helpers = require("lain.helpers") 9 | local wibox = require("wibox") 10 | local tonumber = tonumber 11 | 12 | -- {thermal,core} temperature info 13 | -- lain.widget.temp 14 | 15 | local function factory(args) 16 | args = args or {} 17 | 18 | local temp = { widget = args.widget or wibox.widget.textbox() } 19 | local timeout = args.timeout or 30 20 | local tempfile = args.tempfile or "/sys/devices/virtual/thermal/thermal_zone0/temp" 21 | local settings = args.settings or function() end 22 | 23 | function temp.update() 24 | helpers.async({"find", "/sys/devices", "-type", "f", "-name", "*temp*"}, function(f) 25 | temp_now = {} 26 | local temp_fl, temp_value 27 | for t in f:gmatch("[^\n]+") do 28 | temp_fl = helpers.first_line(t) 29 | if temp_fl then 30 | temp_value = tonumber(temp_fl) 31 | temp_now[t] = temp_value and temp_value/1e3 or temp_fl 32 | end 33 | end 34 | coretemp_now = temp_now[tempfile] or "N/A" 35 | widget = temp.widget 36 | settings() 37 | end) 38 | end 39 | 40 | helpers.newtimer("thermal", timeout, temp.update) 41 | 42 | return temp 43 | end 44 | 45 | return factory 46 | -------------------------------------------------------------------------------- /.local/bin/scripts/dmenuumount: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # A dmenu prompt to unmount drives. 3 | # Provides you with mounted partitions, select one to unmount. 4 | # Drives mounted at /, /boot and /home will not be options to unmount. 5 | 6 | unmountusb() { 7 | [ -z "$drives" ] && exit 8 | chosen=$(echo "$drives" | dmenu -i -p "Unmount which drive?" | awk '{print $1}') 9 | [ -z "$chosen" ] && exit 10 | sudo -A umount "$chosen" && notify-send "USB unmounting" "$chosen unmounted." 11 | } 12 | 13 | unmountandroid() { \ 14 | chosen=$(awk '/simple-mtpfs/ {print $2}' /etc/mtab | dmenu -i -p "Unmount which device?") 15 | [ -z "$chosen" ] && exit 16 | sudo -A umount -l "$chosen" && notify-send "Android unmounting" "$chosen unmounted." 17 | } 18 | 19 | asktype() { \ 20 | case "$(printf "USB\\nAndroid" | dmenu -i -p "Unmount a USB drive or Android device?")" in 21 | USB) unmountusb ;; 22 | Android) unmountandroid ;; 23 | esac 24 | } 25 | 26 | drives=$(lsblk -nrpo "name,type,size,mountpoint" | awk '$2=="part"&&$4!~/\/boot|\/home$|SWAP/&&length($4)>1{printf "%s (%s)\n",$4,$3}') 27 | 28 | if ! grep simple-mtpfs /etc/mtab; then 29 | [ -z "$drives" ] && echo "No drives to unmount." && exit 30 | echo "Unmountable USB drive detected." 31 | unmountusb 32 | else 33 | if [ -z "$drives" ] 34 | then 35 | echo "Unmountable Android device detected." 36 | unmountandroid 37 | else 38 | echo "Unmountable USB drive(s) and Android device(s) detected." 39 | asktype 40 | fi 41 | fi 42 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/ram-widget/README.md: -------------------------------------------------------------------------------- 1 | # Ram widget 2 | 3 | This widget shows the RAM usage. When clicked another widget appears with more detailed information: 4 | 5 | ![screenshot](./out.gif) 6 | 7 | Note: this widget is compatible with Awesome v4.3+, as it is using [awful.popup](https://awesomewm.org/doc/api/classes/awful.popup.html) 8 | 9 | ## Customization 10 | 11 | It is possible to customize widget by providing a table with all or some of the following config parameters: 12 | 13 | | Name | Default | Description | 14 | |---|---|---| 15 | | `color_used` | `beautiful.bg_urgent` | Color for used RAM | 16 | | `color_free` | `beautiful.fg_normal` | Color for free RAM | 17 | | `color_buf` | `beautiful.border_color_active` | Color for buffers/cache | 18 | | `widget_show_buf` | `false` | Whether to display buffers/cache separately in the tray widget. If `false`, buffers/cache are considered free RAM. | 19 | | `timeout` | 1 | How often (in seconds) the widget refreshes | 20 | 21 | ## Installation 22 | 23 | Please refer to the [installation](https://github.com/streetturtle/awesome-wm-widgets#installation) section of the repo. 24 | 25 | Clone repo, include widget and use it in **rc.lua**: 26 | 27 | ```lua 28 | local ram_widget = require("awesome-wm-widgets.ram-widget.ram-widget") 29 | ... 30 | s.mytasklist, -- Middle widget 31 | { -- Right widgets 32 | layout = wibox.layout.fixed.horizontal, 33 | ... 34 | ram_widget(), 35 | ... 36 | } 37 | ... 38 | ``` 39 | 40 | -------------------------------------------------------------------------------- /.config/lf/preview: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Clear the last preview (if any) 4 | 5 | # Calculate where the image should be placed on the screen. 6 | num=$(printf "%0.f\n" "`echo "$(tput cols) / 2" | bc`") 7 | numb=$(printf "%0.f\n" "`echo "$(tput cols) - $num - 1" | bc`") 8 | numc=$(printf "%0.f\n" "`echo "$(tput lines) - 2" | bc`") 9 | 10 | case "$1" in 11 | *.tgz|*.tar.gz) tar tzf "$1";; 12 | *.tar.bz2|*.tbz2) tar tjf "$1";; 13 | *.tar.txz|*.txz) xz --list "$1";; 14 | *.tar) tar tf "$1";; 15 | *.zip|*.jar|*.war|*.ear|*.oxt) unzip -l "$1";; 16 | *.rar) unrar l "$1";; 17 | *.7z) 7z l "$1";; 18 | *.[1-8]) man "$1" | col -b ;; 19 | *.o,*.torrent,*.iso,*odt,*.ods,*.odp,*.sxw,*.doc) file -i "$1";; 20 | #*.docx) docx2txt "$1" - ;; 21 | *.csv) cat "$1" | sed s/,/\\n/g ;; 22 | # *.pdf) 23 | # CACHE=$(mktemp /tmp/thumbcache.XXXXX) 24 | # pdftoppm -png -f 1 -singlefile "$1" "$CACHE" 25 | # $HOME/.config/lf/image draw "$CACHE.png" $num 1 $numb $numc 26 | ## ;; 27 | #*.epub) 28 | # CACHE=$(mktemp /tmp/thumbcache.XXXXX) 29 | # epub-thumbnailer "$1" "$CACHE" 1024 30 | # $HOME/.config/lf/image draw "$CACHE" $num 1 $numb $numc 31 | # ;; 32 | *.bmp|*.jpg|*.jpeg|*.png|*.xpm) 33 | $HOME/.config/lf/image draw "$1" $num 1 $numb $numc 34 | ;; 35 | *.wav|*.mp3|*.flac|*.m4a|*.wma|*.ape|*.ac3|*.og[agx]|*.spx|*.opus|*.as[fx]|*.flac) ;; 36 | *.avi|*.mp4|*.wmv|*.dat|*.3gp|*.ogv|*.mkv|*.mpg|*.mpeg|*.vob|*.fl[icv]|*.m2v|*.mov|*.webm|*.ts|*.mts|*.m4v|*.r[am]|*.qt|*.divx) ;; 37 | *) head -20 "$1" || cat "$1";; 38 | esac 39 | 40 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/volume-widget/widgets/arc-widget.lua: -------------------------------------------------------------------------------- 1 | local wibox = require("wibox") 2 | local beautiful = require('beautiful') 3 | 4 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/' 5 | 6 | local widget = {} 7 | 8 | function widget.get_widget(widgets_args) 9 | local args = widgets_args or {} 10 | 11 | local thickness = args.thickness or 2 12 | local main_color = args.main_color or beautiful.fg_color 13 | local bg_color = args.bg_color or '#ffffff11' 14 | local mute_color = args.mute_color or beautiful.fg_urgent 15 | local size = args.size or 18 16 | 17 | return wibox.widget { 18 | { 19 | id = "icon", 20 | image = ICON_DIR .. 'audio-volume-high-symbolic.svg', 21 | resize = true, 22 | widget = wibox.widget.imagebox, 23 | }, 24 | max_value = 100, 25 | thickness = thickness, 26 | start_angle = 4.71238898, -- 2pi*3/4 27 | forced_height = size, 28 | forced_width = size, 29 | bg = bg_color, 30 | paddings = 2, 31 | widget = wibox.container.arcchart, 32 | set_volume_level = function(self, new_value) 33 | self.value = new_value 34 | end, 35 | mute = function(self) 36 | self.colors = { mute_color } 37 | end, 38 | unmute = function(self) 39 | self.colors = { main_color } 40 | end 41 | } 42 | 43 | end 44 | 45 | 46 | return widget -------------------------------------------------------------------------------- /.config/nvim/lua/rd/colors.lua: -------------------------------------------------------------------------------- 1 | local transparent = false 2 | 3 | local function set_tab_highlight() 4 | vim.cmd([[hi TabLineFill gui=none guibg=#3d4345]]) 5 | vim.cmd([[hi TabLine gui=none guibg=#3d4345 guifg=#c0c9cc]]) 6 | vim.cmd([[hi TabLineSel gui=bold guifg=#c0c9cc]]) 7 | end 8 | 9 | local function set_other_highlight() 10 | vim.cmd([[hi SignColumn guibg=none]]) 11 | vim.cmd([[hi netrwDir guifg=#5eacd3]]) 12 | vim.cmd([[hi qfFileName guifg=#aed75f]]) 13 | end 14 | 15 | local function colorscheme(str) 16 | vim.cmd(string.format("colorscheme %s", str)) 17 | if transparent == true then 18 | vim.cmd([[hi Normal guibg=NONE ctermbg=NONE]]) 19 | end 20 | set_other_highlight() 21 | set_tab_highlight() 22 | end 23 | vim.g.tokyonight_style = "night" 24 | vim.g.gruvbox_contrast_dark = "hard" 25 | vim.g.gruvbox_material_background = "hard" 26 | vim.g.gruvbox_sign_column = "bg0" 27 | vim.g.material_style = "deep ocean" 28 | colorscheme("ayu") 29 | 30 | local function toggle_transparency() 31 | if transparent == false then 32 | vim.cmd([[hi Normal guibg=NONE ctermbg=NONE]]) 33 | transparent = true 34 | else 35 | vim.o.background = "dark" 36 | transparent = false 37 | end 38 | set_tab_highlight() 39 | set_other_highlight() 40 | end 41 | 42 | require("lsp-colors").setup({ 43 | Error = "#db4b4b", 44 | Warning = "#e0af68", 45 | Information = "#0db9d7", 46 | Hint = "#10B981", 47 | }) 48 | 49 | return { 50 | toggle_transparency = toggle_transparency, 51 | colorscheme = colorscheme, 52 | } 53 | -------------------------------------------------------------------------------- /.config/mpv/restore-old-bindings.conf: -------------------------------------------------------------------------------- 1 | 2 | # This file contains all bindings that were removed after a certain release. 3 | # If you want MPlayer bindings, use mplayer-input.conf 4 | 5 | # Pick the bindings you want back and add them to your own input.conf. Append 6 | # this file to your input.conf if you want them all back: 7 | # 8 | # cat restore-old-bindings.conf >> ~/.config/mpv/input.conf 9 | # 10 | # Older installations use ~/.mpv/input.conf instead. 11 | 12 | # changed in mpv 0.27.0 (macOS and Wayland only) 13 | 14 | # WHEEL_UP seek 10 15 | # WHEEL_DOWN seek -10 16 | # WHEEL_LEFT seek 5 17 | # WHEEL_RIGHT seek -5 18 | 19 | # changed in mpv 0.26.0 20 | 21 | h cycle tv-channel -1 # previous channel 22 | k cycle tv-channel +1 # next channel 23 | H cycle dvb-channel-name -1 # previous channel 24 | K cycle dvb-channel-name +1 # next channel 25 | 26 | I show-text "${filename}" # display filename in osd 27 | 28 | # changed in mpv 0.24.0 29 | 30 | L cycle-values loop "inf" "no" 31 | 32 | # changed in mpv 0.10.0 33 | 34 | O osd 35 | D cycle deinterlace 36 | d cycle framedrop 37 | 38 | # changed in mpv 0.7.0 39 | 40 | ENTER playlist-next force 41 | 42 | # changed in mpv 0.6.0 43 | 44 | ESC quit 45 | 46 | # changed in mpv 0.5.0 47 | 48 | PGUP seek 600 49 | PGDWN seek -600 50 | RIGHT seek 10 51 | LEFT seek -10 52 | + add audio-delay 0.100 53 | - add audio-delay -0.100 54 | ( add balance -0.1 55 | ) add balance 0.1 56 | F cycle sub-forced-only 57 | TAB cycle program 58 | A cycle angle 59 | U stop 60 | o osd 61 | I show-text "${filename}" 62 | -------------------------------------------------------------------------------- /.config/nvim/plugin/options.lua: -------------------------------------------------------------------------------- 1 | local opt = vim.opt 2 | 3 | local function set(key_opt) 4 | opt[key_opt] = true; 5 | end 6 | 7 | local function noset(key_opt) 8 | opt[key_opt] = false; 9 | end 10 | 11 | set "cursorline" 12 | set "hidden" 13 | set "wrap" 14 | set "autoread" 15 | set "undofile" 16 | noset "swapfile" 17 | noset "backup" 18 | 19 | opt.completeopt = {"menu", "menuone", "noselect"} 20 | opt.softtabstop = 2 21 | opt.shiftwidth = 2 22 | set "expandtab" 23 | set "autoindent" 24 | set "cindent" 25 | 26 | noset "hlsearch" 27 | set "ignorecase" 28 | set "smartcase" 29 | opt.inccommand = "split" 30 | set "incsearch" 31 | opt.background = "dark" 32 | set "termguicolors" 33 | 34 | set "number" 35 | set "relativenumber" 36 | set "splitbelow" 37 | set "splitright" 38 | set "showcmd" 39 | noset "showmode" 40 | opt.colorcolumn = "80" 41 | opt.signcolumn = "yes" 42 | 43 | opt.shortmess = opt.shortmess + "c" 44 | opt.mouse = opt.mouse + "nv" 45 | opt.updatetime = 1000 -- Make updates happen faster 46 | 47 | opt.formatoptions = opt.formatoptions 48 | - "a" -- Auto formatting is BAD. 49 | - "t" -- Don't auto format my code. I got linters for that. 50 | + "c" -- In general, I like it when comments respect textwidth 51 | + "q" -- Allow formatting comments w/ gq 52 | - "o" -- O and o, don't continue comments 53 | + "r" -- But do continue when pressing enter. 54 | + "n" -- Indent past the formatlistpat, not underneath it. 55 | + "j" -- Auto-remove comments if possible. 56 | - "2" -- I'm not in gradeschool anymore 57 | 58 | -- set joinspaces 59 | opt.joinspaces = false -- Two spaces and grade school, we're done 60 | 61 | -------------------------------------------------------------------------------- /.config/zsh/.Xdefaults: -------------------------------------------------------------------------------- 1 | !! URxvt Appearance 2 | URxvt.allow_bold: true 3 | URxvt.font: xft:Noto Sans Mono:style=Regular:size=11 4 | URxvt.letterSpace: 0 5 | URxvt.lineSpace: 0 6 | URxvt.geometry: 92x24 7 | URxvt.internalBorder: 12 8 | URxvt.cursorUnderline: false 9 | URxvt.saveline: 2048 10 | URxvt.scrollBar: false 11 | URxvt.scrollBar_right: false 12 | URxvt.urgentOnBell: true 13 | URxvt.cursorBlink: 1 14 | !*.shading: 5 15 | !*.alpha: 0.8 16 | !*.transparent: true 17 | URxvt.perl-ext-common: default,clipboard,url-select,keyboard-select,resize-font 18 | URxvt.url-select.launcher: brave 19 | URxvt.url-select.underline: true 20 | URxvt.keysym.M-u: perl:url-select:select_next 21 | URxvt.keysym.M-Escape: perl:keyboard-select:activate 22 | URxvt.keysym.M-s: perl:keyboard-select:search 23 | !URxvt.perl-ext-common: resize-font,default,matcher 24 | !URxvt.url-launcher: /usr/bin/qutebrowse: 25 | !URxvt.matcher.button: 1 26 | 27 | ! special 28 | *.foreground: #a9bcf7 29 | *.background: #000000 30 | *.cursorColor: #ffffff 31 | 32 | ! black 33 | *.color0: #303030 34 | *.color8: #5f5f5f 35 | 36 | ! red 37 | *.color1: #c03000 38 | *.color9: #ff3a78 39 | 40 | ! green 41 | *.color2: #b1d631 42 | *.color10: #a6cd07 43 | 44 | ! yellow 45 | *.color3: #fecf35 46 | *.color11: #b5c865 47 | 48 | ! blue 49 | *.color4: #426870 50 | *.color12: #4a7781 51 | 52 | ! magenta 53 | *.color5: #6d506d 54 | *.color13: #ff3b77 55 | 56 | ! cyan 57 | *.color6: #4bb5c1 58 | *.color14: #4bb5c1 59 | 60 | ! white 61 | *.color7: #e2e2e5 62 | *.color15: #e2e2e5 63 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/translate-widget/README.MD: -------------------------------------------------------------------------------- 1 | # Translate Widget 2 | 3 | This widget allows quickly translate words or phrases without opening a browser - just using Awesome. To provide direction of the translation add the 2 letters code of the source and target languages at the end of the phrase, for example _hello enfr_ will translate _hello_ from English to French. This widget is based on [Watson Language Translator](https://www.ibm.com/watson/services/language-translator/) from IBM. 4 | 5 | ![demo](./demo.gif) 6 | 7 | ## Controls 8 | 9 | - Mod4 + c - opens a translate prompt; 10 | - left click on the popup widget - copies the translation to the clipboard and closes widget; 11 | - right click on the popup widget - copies text to translate to the clipboard and closes widget. 12 | 13 | ## Installation 14 | 15 | 1. Clone repo under **~/.config/awesome/** 16 | 1. Create an IBM Cloud API key at [cloud.ibm.com/iam/apikeys](https://cloud.ibm.com/iam/apikeys) 17 | 1. Copy a service URL by going to [resource list](https://cloud.ibm.com/resources), then under "Services" select "Language Translator" option, and then copy URL from the "Credentials" section 18 | 1. Require widget in **rc.lua**: 19 | 20 | ```lua 21 | local translate = require("awesome-wm-widgets.translate-widget.translate") 22 | ``` 23 | 24 | 1. Add a shortcut to run translate prompt: 25 | 26 | ```lua 27 | awful.key({ modkey }, "c", function() 28 | translate.launch{api_key = '', url = 'url'} 29 | end, { description = "run translate prompt", group = "launcher" }) 30 | ``` 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /.local/bin/scripts/albumsplit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Requires ffmpeg (audio splitting) and my `tag` wrapper script. 4 | 5 | [ ! -f "$2" ] && printf "The first file should be the audio, the second should be the timecodes.\\n" && exit 6 | 7 | echo "Enter the artist/author:"; read -r author 8 | 9 | echo "Enter the publication year:"; read -r year 10 | 11 | inputaudio="$1" 12 | 13 | 14 | # As long as the extension is in the tag script, it'll work. 15 | ext="opus" 16 | #ext="${1#*.}" 17 | 18 | # Get the total number of tracks from the number of lines. 19 | total="$(wc -l < "$2")" 20 | 21 | while read -r x; 22 | do 23 | end="$(echo "$x" | cut -d' ' -f1)" 24 | [ -n "$start" ] && 25 | echo "From $start to $end; $track $title" 26 | file="./$(printf "%.2d" "$track")-$esctitle.$ext" 27 | [ -n "$start" ] && echo "Splitting \"$title\"..." && ffmpeg -nostdin -y -loglevel -8 -i "$inputaudio" -ss "$start" -to "$end" -vn "$file" && 28 | echo "Tagging \"$title\"..." && tag -a "$author" -A "$author" -t "$title" -n "$track" -N "$total" -d "$year" "$file" 29 | title="$(echo "$x" | cut -d' ' -f 2-)" 30 | esctitle="$(echo "$title" | iconv -cf UTF-8 -t ASCII//TRANSLIT | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g")" 31 | track="$((track+1))" 32 | start="$end" 33 | done < "$2" 34 | # The last track must be done outside the loop. 35 | echo "From $start to the end: $title" 36 | file="./$(printf "%.2d" "$track")-$esctitle.$ext" 37 | echo "Splitting \"$title\"..." && ffmpeg -nostdin -y -loglevel -8 -i "$inputaudio" -ss "$start" -vn "$file" && 38 | echo "Tagging \"$title\"..." && tag -a "$author" -A "$author" -t "$title" -n "$track" -N "$total" -d "$year" "$file" 39 | -------------------------------------------------------------------------------- /.config/awesome/lain/widget/alsa.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Licensed under GNU General Public License v2 4 | * (c) 2013, Luca CPZ 5 | * (c) 2010, Adrian C. 6 | 7 | --]] 8 | 9 | local helpers = require("lain.helpers") 10 | local shell = require("awful.util").shell 11 | local wibox = require("wibox") 12 | local string = string 13 | 14 | -- ALSA volume 15 | -- lain.widget.alsa 16 | 17 | local function factory(args) 18 | args = args or {} 19 | local alsa = { widget = args.widget or wibox.widget.textbox() } 20 | local timeout = args.timeout or 5 21 | local settings = args.settings or function() end 22 | 23 | alsa.cmd = args.cmd or "amixer" 24 | alsa.channel = args.channel or "Master" 25 | alsa.togglechannel = args.togglechannel 26 | 27 | local format_cmd = string.format("%s get %s", alsa.cmd, alsa.channel) 28 | 29 | if alsa.togglechannel then 30 | format_cmd = { shell, "-c", string.format("%s get %s; %s get %s", 31 | alsa.cmd, alsa.channel, alsa.cmd, alsa.togglechannel) } 32 | end 33 | 34 | alsa.last = {} 35 | 36 | function alsa.update() 37 | helpers.async(format_cmd, function(mixer) 38 | local l,s = string.match(mixer, "([%d]+)%%.*%[([%l]*)") 39 | if alsa.last.level ~= l or alsa.last.status ~= s then 40 | volume_now = { level = tonumber(l), status = s } 41 | widget = alsa.widget 42 | settings() 43 | alsa.last = volume_now 44 | end 45 | end) 46 | end 47 | 48 | helpers.newtimer(string.format("alsa-%s-%s", alsa.cmd, alsa.channel), timeout, alsa.update) 49 | 50 | return alsa 51 | end 52 | 53 | return factory 54 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/volume-widget/widgets/icon-widget.lua: -------------------------------------------------------------------------------- 1 | local wibox = require("wibox") 2 | 3 | local widget = {} 4 | 5 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/' 6 | 7 | function widget.get_widget(widgets_args) 8 | local args = widgets_args or {} 9 | 10 | local icon_dir = args.icon_dir or ICON_DIR 11 | 12 | return wibox.widget { 13 | { 14 | id = "icon", 15 | resize = false, 16 | widget = wibox.widget.imagebox, 17 | }, 18 | valign = 'center', 19 | layout = wibox.container.place, 20 | set_volume_level = function(self, new_value) 21 | local volume_icon_name 22 | if self.is_muted then 23 | volume_icon_name = 'audio-volume-muted-symbolic' 24 | else 25 | local new_value_num = tonumber(new_value) 26 | if (new_value_num >= 0 and new_value_num < 33) then 27 | volume_icon_name="audio-volume-low-symbolic" 28 | elseif (new_value_num < 66) then 29 | volume_icon_name="audio-volume-medium-symbolic" 30 | else 31 | volume_icon_name="audio-volume-high-symbolic" 32 | end 33 | end 34 | self:get_children_by_id('icon')[1]:set_image(icon_dir .. volume_icon_name .. '.svg') 35 | end, 36 | mute = function(self) 37 | self.is_muted = true 38 | self:get_children_by_id('icon')[1]:set_image(icon_dir .. 'audio-volume-muted-symbolic.svg') 39 | end, 40 | unmute = function(self) 41 | self.is_muted = false 42 | end 43 | } 44 | end 45 | 46 | return widget -------------------------------------------------------------------------------- /.local/bin/scripts/tag: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | err() { echo "Usage: 4 | tag [OPTIONS] file 5 | Options: 6 | -a: artist/author 7 | -t: song/chapter title 8 | -A: album/book title 9 | -n: track/chapter number 10 | -N: total number of tracks/chapters 11 | -d: year of publication 12 | -g: genre 13 | -c: comment 14 | You will be prompted for title, artist, album and track if not given." && exit 1 ;} 15 | 16 | while getopts "a:t:A:n:N:d:g:c:f:" o; do case "${o}" in 17 | a) artist="${OPTARG}" ;; 18 | t) title="${OPTARG}" ;; 19 | A) album="${OPTARG}" ;; 20 | n) track="${OPTARG}" ;; 21 | N) total="${OPTARG}" ;; 22 | d) date="${OPTARG}" ;; 23 | g) genre="${OPTARG}" ;; 24 | c) comment="${OPTARG}" ;; 25 | f) file="${OPTARG}" ;; 26 | *) printf "Invalid option: -%s\\n" "$OPTARG" && err ;; 27 | esac done 28 | 29 | shift $((OPTIND - 1)) 30 | 31 | file="$1" 32 | 33 | [ ! -f "$file" ] && echo "Provide file to tag." && err 34 | 35 | [ -z "$title" ] && echo "Enter a title." && read -r title 36 | [ -z "$artist" ] && echo "Enter an artist." && read -r artist 37 | [ -z "$album" ] && echo "Enter an album." && read -r album 38 | [ -z "$track" ] && echo "Enter a track number." && read -r track 39 | 40 | case "$file" in 41 | *.ogg) echo "Title=$title 42 | Artist=$artist 43 | Album=$album 44 | Track=$track 45 | Total=$total 46 | Date=$date 47 | Genre=$genre 48 | Comment=$comment" | vorbiscomment -w "$file" ;; 49 | *.opus) echo "Title=$title 50 | Artist=$artist 51 | Album=$album 52 | Track=$track 53 | Total=$total 54 | Date=$date 55 | Genre=$genre 56 | Comment=$comment" | opustags -i -S "$file" ;; 57 | *.mp3) eyeD3 -Q --remove-all -a "$artist" -A "$album" -t "$title" -n "$track" -N "$total" -Y "$date" "$file" ;; 58 | *) echo "File type not implemented yet." ;; 59 | esac 60 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/calendar-widget/README.md: -------------------------------------------------------------------------------- 1 | # Calendar Widget 2 | 3 | Calendar widget for Awesome WM - slightly improved version of the `wibox.widget.calendar`. 4 | 5 | ## Features 6 | 7 | - mouse support: scroll up - shows next month, scroll down - previous 8 | - themes: 9 | 10 | | Name | Screenshot | 11 | |---|---| 12 | | nord (default) | ![nord_theme](./nord.png) | 13 | | outrun | ![outrun_theme](./outrun.png) | 14 | | light | ![outrun_theme](./light.png) | 15 | | dark | ![outrun_theme](./dark.png) | 16 | | naughty (default) | from local theme | 17 | 18 | - setup widget placement 19 | 20 | top center - in case you clock is centered: 21 | 22 | ![calendar_top](./calendar_top.png) 23 | 24 | top right - for default awesome config: 25 | 26 | ![calendar_top_right](./calendar_top_right.png) 27 | 28 | bottom right - in case your wibar at the bottom: 29 | 30 | ![calendar_bottom_right](./calendar_bottom_right.png) 31 | 32 | 33 | ## How to use 34 | 35 | This widget needs an 'anchor' - another widget which triggers visibility of the calendar. Default `mytextclock` is the perfect candidate! 36 | Just after mytextclock is instantiated, create the widget and add the mouse listener to it. 37 | 38 | ```lua 39 | local calendar_widget = require("awesome-wm-widgets.calendar-widget.calendar") 40 | -- ... 41 | -- Create a textclock widget 42 | mytextclock = wibox.widget.textclock() 43 | -- default 44 | local cw = calendar_widget() 45 | -- or customized 46 | local cw = calendar_widget({ 47 | theme = 'outrun', 48 | placement = 'bottom_right', 49 | radius = 8, 50 | }) 51 | mytextclock:connect_signal("button::press", 52 | function(_, _, _, button) 53 | if button == 1 then cw.toggle() end 54 | end) 55 | ``` 56 | -------------------------------------------------------------------------------- /.config/awesome/lain/widget/pulse.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Licensed under GNU General Public License v2 4 | * (c) 2016, Luca CPZ 5 | 6 | --]] 7 | 8 | local helpers = require("lain.helpers") 9 | local shell = require("awful.util").shell 10 | local wibox = require("wibox") 11 | local string = string 12 | local type = type 13 | 14 | -- PulseAudio volume 15 | -- lain.widget.pulse 16 | 17 | local function factory(args) 18 | args = args or {} 19 | 20 | local pulse = { widget = args.widget or wibox.widget.textbox(), device = "N/A" } 21 | local timeout = args.timeout or 5 22 | local settings = args.settings or function() end 23 | 24 | pulse.devicetype = args.devicetype or "sink" 25 | pulse.cmd = args.cmd or "pacmd list-" .. pulse.devicetype .. "s | sed -n -e '/*/,$!d' -e '/index/p' -e '/base volume/d' -e '/volume:/p' -e '/muted:/p' -e '/device\\.string/p'" 26 | 27 | function pulse.update() 28 | helpers.async({ shell, "-c", type(pulse.cmd) == "string" and pulse.cmd or pulse.cmd() }, 29 | function(s) 30 | volume_now = { 31 | index = string.match(s, "index: (%S+)") or "N/A", 32 | device = string.match(s, "device.string = \"(%S+)\"") or "N/A", 33 | muted = string.match(s, "muted: (%S+)") or "N/A" 34 | } 35 | 36 | pulse.device = volume_now.index 37 | 38 | local ch = 1 39 | volume_now.channel = {} 40 | for v in string.gmatch(s, ":.-(%d+)%%") do 41 | volume_now.channel[ch] = v 42 | ch = ch + 1 43 | end 44 | 45 | volume_now.left = volume_now.channel[1] or "N/A" 46 | volume_now.right = volume_now.channel[2] or "N/A" 47 | 48 | widget = pulse.widget 49 | settings() 50 | end) 51 | end 52 | 53 | helpers.newtimer("pulse", timeout, pulse.update) 54 | 55 | return pulse 56 | end 57 | 58 | return factory 59 | -------------------------------------------------------------------------------- /.config/awesome/lain/widget/mem.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Licensed under GNU General Public License v2 4 | * (c) 2013, Luca CPZ 5 | * (c) 2010-2012, Peter Hofmann 6 | 7 | --]] 8 | 9 | local helpers = require("lain.helpers") 10 | local wibox = require("wibox") 11 | local gmatch, lines, floor = string.gmatch, io.lines, math.floor 12 | 13 | -- Memory usage (ignoring caches) 14 | -- lain.widget.mem 15 | 16 | local function factory(args) 17 | args = args or {} 18 | 19 | local mem = { widget = args.widget or wibox.widget.textbox() } 20 | local timeout = args.timeout or 2 21 | local settings = args.settings or function() end 22 | 23 | function mem.update() 24 | mem_now = {} 25 | for line in lines("/proc/meminfo") do 26 | for k, v in gmatch(line, "([%a]+):[%s]+([%d]+).+") do 27 | if k == "MemTotal" then mem_now.total = floor(v / 1024 + 0.5) 28 | elseif k == "MemFree" then mem_now.free = floor(v / 1024 + 0.5) 29 | elseif k == "Buffers" then mem_now.buf = floor(v / 1024 + 0.5) 30 | elseif k == "Cached" then mem_now.cache = floor(v / 1024 + 0.5) 31 | elseif k == "SwapTotal" then mem_now.swap = floor(v / 1024 + 0.5) 32 | elseif k == "SwapFree" then mem_now.swapf = floor(v / 1024 + 0.5) 33 | elseif k == "SReclaimable" then mem_now.srec = floor(v / 1024 + 0.5) 34 | end 35 | end 36 | end 37 | 38 | mem_now.used = mem_now.total - mem_now.free - mem_now.buf - mem_now.cache - mem_now.srec 39 | mem_now.swapused = mem_now.swap - mem_now.swapf 40 | mem_now.perc = math.floor(mem_now.used / mem_now.total * 100) 41 | 42 | widget = mem.widget 43 | settings() 44 | end 45 | 46 | helpers.newtimer("mem", timeout, mem.update) 47 | 48 | return mem 49 | end 50 | 51 | return factory 52 | -------------------------------------------------------------------------------- /.config/awesome/lain/widget/contrib/redshift.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Licensed under GNU General Public License v2 4 | * (c) 2017, Luca CPZ 5 | * (c) 2014, blueluke 6 | 7 | --]] 8 | 9 | local async = require("lain.helpers").async 10 | local awful = require("awful") 11 | local execute = os.execute 12 | local type = type 13 | 14 | -- Redshift 15 | -- lain.widget.contrib.redshift 16 | local redshift = { active = false, pid = nil } 17 | 18 | function redshift.start() 19 | execute("pkill redshift") 20 | awful.spawn.with_shell("redshift -x") -- clear adjustments 21 | redshift.pid = awful.spawn.with_shell("redshift") 22 | redshift.active = true 23 | if type(redshift.update_fun) == "function" then 24 | redshift.update_fun(redshift.active) 25 | end 26 | end 27 | 28 | function redshift.toggle() 29 | async({ awful.util.shell, "-c", string.format("ps -p %d -o pid=", redshift.pid) }, function(f) 30 | if f and #f > 0 then -- redshift is running 31 | -- Sending -USR1 toggles redshift (See project website) 32 | execute("pkill -USR1 redshift") 33 | redshift.active = not redshift.active 34 | else -- not started or killed, (re)start it 35 | redshift.start() 36 | end 37 | redshift.update_fun(redshift.active) 38 | end) 39 | end 40 | 41 | -- Attach to a widget 42 | -- Provides a button which toggles redshift on/off on click 43 | -- @param widget: Widget to attach to. 44 | -- @param fun: Function to be run each time redshift is toggled (optional). 45 | -- Use it to update widget text or icons on status change. 46 | function redshift.attach(widget, fun) 47 | redshift.update_fun = fun or function() end 48 | if not redshift.pid then redshift.start() end 49 | if widget then 50 | widget:buttons(awful.util.table.join(awful.button({}, 1, function () redshift.toggle() end))) 51 | end 52 | end 53 | 54 | return redshift 55 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/logout-menu-widget/README.md: -------------------------------------------------------------------------------- 1 | # Logout Menu Widget 2 | 3 | This widget shows a menu with options to log out from the current session, lock, reboot, suspend and power off the computer, similar to [logout-popup-widget](https://github.com/streetturtle/awesome-wm-widgets/tree/master/logout-popup-widget): 4 | 5 | ![demo](./logout-menu.gif) 6 | 7 | ## Installation 8 | 9 | Clone this repo (if not cloned yet) **./.config/awesome/** 10 | 11 | ```bash 12 | cd ./.config/awesome/ 13 | git clone https://github.com/streetturtle/awesome-wm-widgets 14 | ``` 15 | Then add the widget to the wibar: 16 | 17 | ```lua 18 | local logout_menu_widget = require("awesome-wm-widgets.logout-menu-widget.logout-menu") 19 | 20 | s.mytasklist, -- Middle widget 21 | { -- Right widgets 22 | layout = wibox.layout.fixed.horizontal, 23 | ... 24 | -- default 25 | logout_menu_widget(), 26 | -- custom 27 | logout_menu_widget{ 28 | font = 'Play 14', 29 | onlock = function() awful.spawn.with_shell('i3lock-fancy') end 30 | } 31 | ... 32 | ``` 33 | 34 | ## Customization 35 | 36 | It is possible to customize the widget by providing a table with all or some of the following config parameters: 37 | 38 | | Name | Default | Description | 39 | |---|---|---| 40 | | `font` | `beautiful.font` | Font of the menu items | 41 | | `onlogout` | `function() awesome.quit() end` | Function which is called when the logout item is clicked | 42 | | `onlock` | `function() awful.spawn.with_shell("i3lock") end` | Function which is called when the lock item is clicked | 43 | | `onreboot` | `function() awful.spawn.with_shell("reboot") end` | Function which is called when the reboot item is clicked | 44 | | `onsuspend` | `function() awful.spawn.with_shell("systemctl suspend") end` | Function which is called when the suspend item is clicked | 45 | | `onpoweroff` | `function() awful.spawn.with_shell("shutdown now") end` | Function which is called when the poweroff item is clicked | 46 | -------------------------------------------------------------------------------- /.config/tmux/tmux.conf: -------------------------------------------------------------------------------- 1 | # remap prefix from 'C-b' to 'C-a' 2 | unbind C-b 3 | set-option -g prefix C-f 4 | bind-key C-a send-prefix 5 | # Start window numbering at 1 6 | set -g base-index 1 7 | set -s escape-time 0 8 | set-option -g default-command zsh 9 | set-option -g renumber-windows on 10 | bind-key C-l select-pane -R 11 | bind-key C-h select-pane -L 12 | bind-key C-k select-pane -U 13 | bind-key C-j select-pane -D 14 | bind-key R source-file ~/.config/tmux/tmux.conf \; display-message "tmux.conf reloaded" 15 | bind-key Enter split-window -h -c '#{pane_current_path}' 16 | bind C new-window -c '#{pane_current_path}' 17 | setw -g mode-keys vi 18 | bind-key -T copy-mode-vi 'v' send -X begin-selection 19 | bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle \; send -X begin-selection 20 | bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel 'xclip -in -selection clipboard' 21 | set -g status-style bg='#000000',fg='#ffffff' 22 | set-window-option -g window-status-style fg='#ffffff,bold',bg='#000000' 23 | set-window-option -g window-status-current-style fg='#ff79c6,bold',bg='#ffffff' 24 | set -g status-right '' 25 | set -g window-status-current-format "#[fg=#000000]#[bg=#ffffff]#[fg=#000000]#[bg=#787a78] #I #W #[fg=#bd93f9]#[bg=#44475a]" 26 | set -g window-status-format "#[fg=#f8f8f2]#[bg=#44475a]#[fg=#ffffff]#[bg=#000000] #I #W #[fg=#bd93f9]#[bg=#44475a]" 27 | bind-key & kill-window 28 | bind-key x kill-pane 29 | set -g message-style bg='#000000',fg='#ffffff' 30 | set -g message-command-style bg='#000000',fg='#ffffff' 31 | setw -g mouse on 32 | unbind-key -T copy-mode-vi MouseDragEnd1Pane 33 | bind-key -T copy-mode-vi MouseDown1Pane select-pane\; send-keys -X clear-selection 34 | 35 | 36 | # Application bindings 37 | bind-key r neww "ranger" 38 | bind-key P neww "htop" 39 | bind-key m neww "neomutt" 40 | bind-key T neww -n "TODO" "nvim ~/personal/todo.md" 41 | 42 | set -g default-terminal "tmux-256color" 43 | set -ag terminal-overrides "xterm-256color:RGB" 44 | 45 | bind z run tmux-url-select 46 | run-shell ~/.local/bin/scripts/tmux-urlview/urlview.tmux 47 | -------------------------------------------------------------------------------- /.local/bin/scripts/tmux-urlview/README.md: -------------------------------------------------------------------------------- 1 | # Tmux urlview 2 | 3 | Quickly open any url on your terminal window! 4 | 5 | Plugin wrapper around either [urlview](https://github.com/sigpipe/urlview) or [extract_url](http://www.memoryhole.net/~kyle/extract_url/). 6 | 7 | ### Demo 8 | 9 | [![Demo tmux-urlview](http://g.recordit.co/5Uh5W4oaPR.gif)](http://recordit.co/5Uh5W4oaPR) 10 | 11 | ### Dependencies 12 | 13 | *One* of the following is required. 14 | 15 | - `urlview` - `brew install urlview` on OS X. 16 | - `extract_url` - `brew install extract_url` on OS X. 17 | 18 | ### Key bindings 19 | 20 | In any tmux mode: 21 | 22 | - `u` - listing all urls on bottom pane 23 | 24 | 25 | ### Installation with [Tmux Plugin Manager](https://github.com/tmux-plugins/tpm) (recommended) 26 | 27 | Add plugin to the list of TPM plugins in `.tmux.conf`: 28 | 29 | set -g @plugin 'tmux-plugins/tmux-urlview' 30 | 31 | 32 | Hit `prefix + I` to fetch the plugin and source it. You should now be able to 33 | use the plugin. 34 | 35 | ### Manual Installation 36 | 37 | Clone the repo: 38 | 39 | $ git clone https://github.com/tmux-plugins/tmux-urlview ~/clone/path 40 | 41 | Add this line to the bottom of `.tmux.conf`: 42 | 43 | run-shell ~/clone/path/urlview.tmux 44 | 45 | Reload TMUX environment: 46 | 47 | # type this in terminal 48 | $ tmux source-file ~/.tmux.conf 49 | 50 | You should now be able to use the plugin. 51 | 52 | ### Configuration 53 | 54 | > How can I change the default "u" key binding to something else? For example, 55 | > key "x"? 56 | 57 | Put `set -g @urlview-key 'x'` in `tmux.conf`. 58 | 59 | ### Other goodies 60 | 61 | `tmux-urlview` works great with: 62 | 63 | - [tmux-fpp](https://github.com/tmux-plugins/tmux-fpp) - a plugin for 64 | opening any files on your terminal window 65 | - [tmux-copycat](https://github.com/tmux-plugins/tmux-copycat) - a plugin for 66 | regex searches in tmux and fast match selection 67 | - [tmux-yank](https://github.com/tmux-plugins/tmux-yank) - enables copying 68 | highlighted text to system clipboard 69 | 70 | ### License 71 | 72 | [MIT](LICENSE.md) 73 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/volume-widget/widgets/horizontal-bar-widget.lua: -------------------------------------------------------------------------------- 1 | local wibox = require("wibox") 2 | local beautiful = require('beautiful') 3 | local gears = require("gears") 4 | 5 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/' 6 | 7 | local widget = {} 8 | 9 | function widget.get_widget(widgets_args) 10 | local args = widgets_args or {} 11 | 12 | local main_color = args.main_color or beautiful.fg_normal 13 | local mute_color = args.mute_color or beautiful.fg_urgent 14 | local bg_color = args.bg_color or '#ffffff11' 15 | local width = args.width or 50 16 | local margins = args.margins or 10 17 | local shape = args.shape or 'bar' 18 | local with_icon = args.with_icon == true and true or false 19 | 20 | local bar = wibox.widget { 21 | { 22 | { 23 | id = "icon", 24 | image = ICON_DIR .. 'audio-volume-high-symbolic.svg', 25 | resize = false, 26 | widget = wibox.widget.imagebox, 27 | }, 28 | valign = 'center', 29 | visible = with_icon, 30 | layout = wibox.container.place, 31 | }, 32 | { 33 | id = 'bar', 34 | max_value = 100, 35 | forced_width = width, 36 | color = main_color, 37 | margins = { top = margins, bottom = margins }, 38 | background_color = bg_color, 39 | shape = gears.shape[shape], 40 | widget = wibox.widget.progressbar, 41 | }, 42 | spacing = 4, 43 | layout = wibox.layout.fixed.horizontal, 44 | set_volume_level = function(self, new_value) 45 | self:get_children_by_id('bar')[1]:set_value(tonumber(new_value)) 46 | end, 47 | mute = function(self) 48 | self:get_children_by_id('bar')[1]:set_color(mute_color) 49 | end, 50 | unmute = function(self) 51 | self:get_children_by_id('bar')[1]:set_color(main_color) 52 | end 53 | } 54 | 55 | return bar 56 | end 57 | 58 | return widget 59 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/VitalyGorbachev/clear-sky.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/volume-widget/widgets/icon-and-text-widget.lua: -------------------------------------------------------------------------------- 1 | local wibox = require("wibox") 2 | local beautiful = require('beautiful') 3 | 4 | local widget = {} 5 | 6 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/' 7 | 8 | function widget.get_widget(widgets_args) 9 | local args = widgets_args or {} 10 | 11 | local font = args.font or beautiful.font 12 | local icon_dir = args.icon_dir or ICON_DIR 13 | 14 | return wibox.widget { 15 | { 16 | { 17 | id = "icon", 18 | resize = false, 19 | widget = wibox.widget.imagebox, 20 | }, 21 | valign = 'center', 22 | layout = wibox.container.place 23 | }, 24 | { 25 | id = 'txt', 26 | font = font, 27 | widget = wibox.widget.textbox 28 | }, 29 | layout = wibox.layout.fixed.horizontal, 30 | set_volume_level = function(self, new_value) 31 | self:get_children_by_id('txt')[1]:set_text(new_value) 32 | local volume_icon_name 33 | if self.is_muted then 34 | volume_icon_name = 'audio-volume-muted-symbolic' 35 | else 36 | local new_value_num = tonumber(new_value) 37 | if (new_value_num >= 0 and new_value_num < 33) then 38 | volume_icon_name="audio-volume-low-symbolic" 39 | elseif (new_value_num < 66) then 40 | volume_icon_name="audio-volume-medium-symbolic" 41 | else 42 | volume_icon_name="audio-volume-high-symbolic" 43 | end 44 | end 45 | self:get_children_by_id('icon')[1]:set_image(icon_dir .. volume_icon_name .. '.svg') 46 | end, 47 | mute = function(self) 48 | self.is_muted = true 49 | self:get_children_by_id('icon')[1]:set_image(icon_dir .. 'audio-volume-muted-symbolic.svg') 50 | end, 51 | unmute = function(self) 52 | self.is_muted = false 53 | end 54 | } 55 | 56 | end 57 | 58 | 59 | return widget -------------------------------------------------------------------------------- /.config/nvim/lua/rd/stylua.lua: -------------------------------------------------------------------------------- 1 | local Path = require "plenary.path" 2 | local Job = require "plenary.job" 3 | 4 | local lspconfig_util = require "lspconfig.util" 5 | 6 | local cached_configs = {} 7 | 8 | local root_finder = lspconfig_util.root_pattern ".git" 9 | local stylua_finder = function(path) 10 | if cached_configs[path] == nil then 11 | local file_path = Path:new(path) 12 | local root_path = Path:new(root_finder(path)) 13 | 14 | local file_parents = file_path:parents() 15 | local root_parents = root_path:parents() 16 | 17 | local relative_diff = #file_parents - #root_parents 18 | for index, dir in ipairs(file_parents) do 19 | if index > relative_diff then 20 | break 21 | end 22 | 23 | local stylua_path = Path:new { dir, "stylua.toml" } 24 | if stylua_path:exists() then 25 | cached_configs[path] = stylua_path:absolute() 26 | break 27 | end 28 | 29 | stylua_path = Path:new { dir, ".stylua.toml" } 30 | if stylua_path:exists() then 31 | cached_configs[path] = stylua_path:absolute() 32 | break 33 | end 34 | end 35 | end 36 | 37 | return cached_configs[path] 38 | end 39 | 40 | local stylua = {} 41 | 42 | stylua.format = function(bufnr) 43 | bufnr = bufnr or vim.api.nvim_get_current_buf() 44 | 45 | local filepath = Path:new(vim.api.nvim_buf_get_name(bufnr)):absolute() 46 | local stylua_toml = stylua_finder(filepath) 47 | 48 | if not stylua_toml then 49 | return 50 | end 51 | 52 | -- stylua: ignore 53 | local j = Job:new { 54 | "stylua", 55 | "--config-path", stylua_toml, 56 | "-", 57 | writer = vim.api.nvim_buf_get_lines(0, 0, -1, false), 58 | } 59 | 60 | local output = j:sync() 61 | 62 | if j.code ~= 0 then 63 | -- Schedule this so that it doesn't do dumb stuff like printing two things. 64 | vim.schedule(function() 65 | print "[stylua] Failed to process due to errors" 66 | end) 67 | 68 | return 69 | end 70 | 71 | vim.api.nvim_buf_set_lines(bufnr, 0, -1, false, output) 72 | 73 | -- -- Handle some weird snippet problems. Not everyone will necessarily have this problem. 74 | -- Luasnip_current_nodes = Luasnip_current_nodes or {} 75 | -- Luasnip_current_nodes[bufnr] = nil 76 | end 77 | 78 | return stylua 79 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/cpu-widget/README.md: -------------------------------------------------------------------------------- 1 | # CPU widget 2 | 3 | [![GitHub issues by-label](https://img.shields.io/github/issues-raw/streetturtle/awesome-wm-widgets/cpu)](https://github.com/streetturtle/awesome-wm-widgets/labels/cpu) 4 | 5 | This widget shows the average CPU load among all cores of the machine: 6 | 7 | ![screenshot](./cpu.gif) 8 | 9 | ## How it works 10 | 11 | To measure the load I took Paul Colby's bash [script](http://colby.id.au/calculating-cpu-usage-from-proc-stat/) and rewrote it in Lua, which was quite simple. 12 | So awesome simply reads the first line of /proc/stat: 13 | 14 | ```bash 15 | $ cat /proc/stat | grep '^cpu ' 16 | cpu 197294 718 50102 2002182 3844 0 2724 0 0 0 17 | ``` 18 | 19 | and calculates the percentage. 20 | 21 | ## Customization 22 | 23 | It is possible to customize widget by providing a table with all or some of the following config parameters: 24 | 25 | | Name | Default | Description | 26 | |---|---|---| 27 | | `width` | 50 | Width of the widget | 28 | | `step_width` | 2 | Width of the step | 29 | | `step_spacing` | 1 | Space size between steps | 30 | | `color` | `beautiful.fg_normal` | Color of the graph | 31 | | `enable_kill_button` | `false` | Show button which kills the process | 32 | | `process_info_max_length` | `-1` | Truncate the process information. Some processes may have a very long list of parameters which won't fit in the screen, this options allows to truncate it to the given length. | 33 | | `timeout` | 1 | How often in seconds the widget refreshes | 34 | 35 | ### Example 36 | 37 | ```lua 38 | cpu_widget({ 39 | width = 70, 40 | step_width = 2, 41 | step_spacing = 0, 42 | color = '#434c5e' 43 | }) 44 | ``` 45 | 46 | The config above results in the following widget: 47 | 48 | ![custom](./custom.png) 49 | 50 | ## Installation 51 | 52 | Clone/download repo and use widget in **rc.lua**: 53 | 54 | ```lua 55 | local cpu_widget = require("awesome-wm-widgets.cpu-widget.cpu-widget") 56 | ... 57 | s.mytasklist, -- Middle widget 58 | { -- Right widgets 59 | layout = wibox.layout.fixed.horizontal, 60 | ... 61 | -- default 62 | cpu_widget(), 63 | -- or custom 64 | cpu_widget({ 65 | width = 70, 66 | step_width = 2, 67 | step_spacing = 0, 68 | color = '#434c5e' 69 | }) 70 | ... 71 | ``` 72 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/volume-widget/widgets/vertical-bar-widget.lua: -------------------------------------------------------------------------------- 1 | local wibox = require("wibox") 2 | local beautiful = require('beautiful') 3 | local gears = require("gears") 4 | 5 | local ICON_DIR = os.getenv("HOME") .. '/.config/awesome/awesome-wm-widgets/volume-widget/icons/' 6 | 7 | local widget = {} 8 | 9 | function widget.get_widget(widgets_args) 10 | local args = widgets_args or {} 11 | 12 | local main_color = args.main_color or beautiful.fg_normal 13 | local mute_color = args.mute_color or beautiful.fg_urgent 14 | local bg_color = args.bg_color or '#ffffff11' 15 | local width = args.width or 10 16 | local margins = args.height or 2 17 | local shape = args.shape or 'bar' 18 | local with_icon = args.with_icon == true and true or false 19 | 20 | local bar = wibox.widget { 21 | { 22 | { 23 | id = "icon", 24 | image = ICON_DIR .. 'audio-volume-high-symbolic.svg', 25 | resize = false, 26 | widget = wibox.widget.imagebox, 27 | }, 28 | valign = 'center', 29 | visible = with_icon, 30 | layout = wibox.container.place, 31 | }, 32 | { 33 | { 34 | id = 'bar', 35 | max_value = 100, 36 | forced_width = width, 37 | forced_height = 5, 38 | margins = { top = margins, bottom = margins }, 39 | color = main_color, 40 | background_color = bg_color, 41 | shape = gears.shape[shape], 42 | widget = wibox.widget.progressbar, 43 | }, 44 | forced_width = width, 45 | direction = 'east', 46 | layout = wibox.container.rotate, 47 | }, 48 | spacing = 4, 49 | layout = wibox.layout.fixed.horizontal, 50 | set_volume_level = function(self, new_value) 51 | self:get_children_by_id('bar')[1]:set_value(tonumber(new_value)) 52 | end, 53 | mute = function(self) 54 | self:get_children_by_id('bar')[1]:set_color(mute_color) 55 | end, 56 | unmute = function(self) 57 | self:get_children_by_id('bar')[1]:set_color(main_color) 58 | end 59 | } 60 | 61 | return bar 62 | end 63 | 64 | return widget 65 | -------------------------------------------------------------------------------- /.config/nvim/lua/rd/plugins.lua: -------------------------------------------------------------------------------- 1 | vim.cmd([[packadd packer.nvim]]) 2 | vim.cmd([[packadd vimball]]) 3 | 4 | local function colorscheme_plugins(use) 5 | use("ayu-theme/ayu-vim") 6 | use("folke/tokyonight.nvim") 7 | use("gruvbox-community/gruvbox") 8 | use("bluz71/vim-nightfly-guicolors") 9 | use("bluz71/vim-moonfly-colors") 10 | use("marko-cerovac/material.nvim") 11 | use("mangeshrex/uwu.vim") 12 | use("sainnhe/gruvbox-material") 13 | end 14 | 15 | return require("packer").startup({ 16 | function(use) 17 | use("wbthomason/packer.nvim") 18 | use("folke/todo-comments.nvim") 19 | 20 | use("hrsh7th/vim-vsnip") 21 | use("RishabhRD/nvim-lsputils") 22 | use("RishabhRD/popfix") 23 | use("RishabhRD/nvim-cheat.sh") 24 | use("neovim/nvim-lspconfig") 25 | use("hrsh7th/nvim-cmp") 26 | use("hrsh7th/cmp-buffer") 27 | use("hrsh7th/cmp-path") 28 | use("hrsh7th/cmp-nvim-lua") 29 | use("hrsh7th/cmp-nvim-lsp") 30 | use("hrsh7th/cmp-vsnip") 31 | use("tpope/vim-fugitive") 32 | use("tpope/vim-commentary") 33 | use("mbbill/undotree") 34 | use("nvim-treesitter/nvim-treesitter") 35 | use("nvim-treesitter/nvim-treesitter-textobjects") 36 | use("nvim-lua/plenary.nvim") 37 | use("glepnir/galaxyline.nvim") 38 | use("ryanoasis/vim-devicons") 39 | use("norcalli/nvim-colorizer.lua") 40 | use("mfussenegger/nvim-jdtls") 41 | use("nvim-lua/popup.nvim") 42 | use("nvim-telescope/telescope.nvim") 43 | use("kyazdani42/nvim-web-devicons") 44 | use("folke/lsp-colors.nvim") 45 | use("ThePrimeagen/harpoon") 46 | use("editorconfig/editorconfig-vim") 47 | use("pwntester/octo.nvim") -- gh from telescope 48 | use("tpope/vim-scriptease") -- commands like Messages 49 | use("RishabhRD/nvim-qf") -- better quickfix 50 | use("lambdalisue/vim-protocol") -- :e https://... works now 51 | use("folke/zen-mode.nvim") -- distraction free 52 | use("folke/twilight.nvim") -- contextual 53 | use("windwp/nvim-spectre") -- use for complex regex search and replace 54 | use("sindrets/diffview.nvim") 55 | use("tpope/vim-surround") 56 | use("tpope/vim-repeat") 57 | use("godlygeek/tabular") 58 | use("tjdevries/astronauta.nvim") 59 | 60 | use({ "nvim-telescope/telescope-fzf-native.nvim", run = "make" }) 61 | use({ "junegunn/fzf", run = "./install --all" }) 62 | use({ "junegunn/fzf.vim" }) 63 | 64 | colorscheme_plugins(use) 65 | end, 66 | }) 67 | -------------------------------------------------------------------------------- /.config/zsh/.zshenv: -------------------------------------------------------------------------------- 1 | export XDG_DESKTOP_DIR="$HOME/Desktop" 2 | export XDG_DOCUMENTS_DIR="$HOME/Documents" 3 | export XDG_DOWNLOAD_DIR="$HOME/Downloads" 4 | export XDG_MUSIC_DIR="$HOME/Music" 5 | export XDG_PICTURES_DIR="$HOME/Pictures" 6 | export XDG_TEMPLATES_DIR="$HOME/Templates" 7 | export XDG_VIDEOS_DIR="$HOME/Videos" 8 | export XDG_CONFIG_HOME="$HOME"/.config 9 | export XDG_CACHE_HOME="$HOME"/.cache 10 | export XDG_DATA_HOME="$HOME"/.local/share 11 | export MACHINE_STORAGE_PATH="$XDG_DATA_HOME"/docker-machine 12 | export DOCKER_CONFIG="$XDG_CONFIG_HOME"/docker 13 | export GRADLE_USER_HOME="$XDG_DATA_HOME"/gradle 14 | export GTK2_RC_FILES="$XDG_CONFIG_HOME"/gtk-2.0/gtkrc 15 | export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java 16 | export _JAVA_AWT_WM_NONREPARENTING=1 17 | export LESSKEY="$XDG_CONFIG_HOME"/less/lesskey 18 | export LESSHISTFILE="$XDG_CACHE_HOME"/less/hisory 19 | export XCOMPOSEFILE="$XDG_CONFIG_HOME"/X11/xcompose 20 | export XCOMPOSECACHE="$XDG_CACHE_HOME"/X11/xcompose 21 | export NODE_REPL_HISTORY="$XDG_DATA_HOME"/node_repl_history 22 | export NPM_CONFIG_USERCONFIG=$XDG_CONFIG_HOME/npm/npmrc 23 | export PASSWORD_STORE_DIR="$XDG_DATA_HOME"/pass 24 | export INPUTRC="$XDG_CONFIG_HOME"/readline/inputrc 25 | export GEM_HOME="$XDG_DATA_HOME"/gem 26 | export GEM_SPEC_CACHE="$XDG_CACHE_HOME"/gem 27 | export TMUX_TMPDIR="$XDG_RUNTIME_DIR" 28 | export VAGRANT_HOME="$XDG_DATA_HOME"/vagrant 29 | export VAGRANT_ALIAS_FILE="$XDG_DATA_HOME"/vagrant/aliases 30 | export WGETRC="$XDG_CONFIG_HOME/wgetrc" 31 | export XAUTHORITY="$XDG_RUNTIME_DIR"/Xauthority 32 | export XINITRC="$XDG_CONFIG_HOME/X11/xinitrc" 33 | export ZDOTDIR=$HOME/.config/zsh 34 | export HISTFILE="$XDG_DATA_HOME"/zsh/history 35 | export EDITOR="nvim" 36 | export TERMINAL="alacritty" 37 | export BROWSER="brave" 38 | export BIB="$HOME/.local/share/bib/readings.bib" 39 | export LESS=-R 40 | export LESS_TERMCAP_mb=$'\E[1;31m' 41 | export LESS_TERMCAP_md=$'\E[1;36m' 42 | export LESS_TERMCAP_me=$'\E[0m' 43 | export LESS_TERMCAP_so=$'\E[01;44;33m' 44 | export LESS_TERMCAP_se=$'\E[0m' 45 | export LESS_TERMCAP_us=$'\E[1;32m' 46 | export LESS_TERMCAP_ue=$'\E[0m' 47 | export FZF_DEFAULT_COMMAND='fd --type f --exclude .git' 48 | export MANPAGER='nvim +Man!' 49 | export PATH=$PATH:$HOME/.local/bin/scripts/:$HOME/.local/bin/nw_scripts/:$HOME/.gem/ruby/2.7.0/bin:$HOME/.local/share/npm/bin:$HOME/.cargo/bin/:$HOME/.local/bin 50 | export EDITOR="nvim" 51 | export TERMINAL="alacritty" 52 | export GTK_THEME="Adwaita:dark" 53 | -------------------------------------------------------------------------------- /.config/awesome/lain/util/markup.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Licensed under MIT License 4 | * (c) 2013, Luca CPZ 5 | * (c) 2009, Uli Schlachter 6 | * (c) 2009, Majic 7 | 8 | --]] 9 | 10 | local format = string.format 11 | local setmetatable = setmetatable 12 | 13 | -- Lain markup util submodule 14 | -- lain.util.markup 15 | local markup = { fg = {}, bg = {} } 16 | 17 | -- Convenience tags 18 | function markup.bold(text) return format("%s", text) end 19 | function markup.italic(text) return format("%s", text) end 20 | function markup.strike(text) return format("%s", text) end 21 | function markup.underline(text) return format("%s", text) end 22 | function markup.monospace(text) return format("%s", text) end 23 | function markup.big(text) return format("%s", text) end 24 | function markup.small(text) return format("%s", text) end 25 | 26 | -- Set the font 27 | function markup.font(font, text) 28 | return format("%s", font, text) 29 | end 30 | 31 | -- Set the foreground 32 | function markup.fg.color(color, text) 33 | return format("%s", color, text) 34 | end 35 | 36 | -- Set the background 37 | function markup.bg.color(color, text) 38 | return format("%s", color, text) 39 | end 40 | 41 | -- Set foreground and background 42 | function markup.color(fg, bg, text) 43 | return format("%s", fg, bg, text) 44 | end 45 | 46 | -- Set font and foreground 47 | function markup.fontfg(font, fg, text) 48 | return format("%s", font, fg, text) 49 | end 50 | 51 | -- Set font and background 52 | function markup.fontbg(font, bg, text) 53 | return format("%s", font, bg, text) 54 | end 55 | 56 | -- Set font, foreground and background 57 | function markup.fontcolor(font, fg, bg, text) 58 | return format("%s", font, fg, bg, text) 59 | end 60 | 61 | -- link markup.{fg,bg}(...) calls to markup.{fg,bg}.color(...) 62 | setmetatable(markup.fg, { __call = function(_, ...) return markup.fg.color(...) end }) 63 | setmetatable(markup.bg, { __call = function(_, ...) return markup.bg.color(...) end }) 64 | 65 | -- link markup(...) calls to markup.fg.color(...) 66 | return setmetatable(markup, { __call = function(_, ...) return markup.fg.color(...) end }) 67 | -------------------------------------------------------------------------------- /.local/bin/scripts/record: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # ffmpeg setpts=N/FR/TB -y -f x11grab -s \ 3 | # `xdpyinfo | grep 'dimensions:'|awk '{print $2}'` \ 4 | # -i :0.0 -f pulse \ 5 | # -i default $location_dir/$T & 6 | 7 | # ffmpeg -video_size 1920x1080 -framerate 60 -f x11grab -i :0.0 -vf pulse \ 8 | # setpts=N/FR/TB asetpts=N/FR/TB -c:v libx264rgb -crf 0 -preset ultrafast "$location_dir/$T" 9 | 10 | # ffmpeg -y \ 11 | # -f x11grab \ 12 | # -framerate 60 \ 13 | # -s "$(xdpyinfo | grep dimensions | awk '{print $2;}')" \ 14 | # -i "$DISPLAY" \ 15 | # -f pulse -i default \ 16 | # -r 30 \ 17 | # -c:v h264 -crf 0 -preset ultrafast -c:a aac \ 18 | # "$location_dir/$T" & 19 | webcam(){ 20 | dev="$(ls /dev | grep "video" | sed -s 's/^/\/dev\//g')" 21 | dev="$(echo "$dev" | dmenu -p "Select device: ")" 22 | if [[ -z "$dev" ]]; then 23 | return 24 | fi 25 | mpv --title="webcam" --untimed --no-correct-pts --no-cache --cache-secs=0 --demuxer-readahead-secs=0 av://v4l2:$dev 26 | } 27 | 28 | androidconnect(){ 29 | if [[ -f /tmp/androidcampid ]]; then 30 | pkill droidcam-cli 31 | rm /tmp/androidcampid 32 | else 33 | droidcam-cli 192.168.43.1 4747 & 34 | touch /tmp/androidcampid 35 | fi 36 | } 37 | 38 | androiddmenuconnect(){ 39 | if [[ -f /tmp/androidcampid ]]; then 40 | pkill droidcam-cli 41 | rm /tmp/androidcampid 42 | else 43 | ip=$(echo "127.0.0.1" | dmenu -p "Enter phone IP: ") 44 | if [[ -z $ip ]]; then 45 | return 46 | fi 47 | droidcam-cli $ip 4747 & 48 | touch /tmp/androidcampid 49 | fi 50 | } 51 | 52 | screencast(){ 53 | if [[ -f /tmp/recordingpid ]]; then 54 | cat /tmp/recordingpid | xargs kill -15 55 | rm /tmp/recordingpid /tmp/recordingpaused 56 | else 57 | location_dir=$HOME/Videos/screencast 58 | T=$(printf "" | dmenu -p "Screencast name:") 59 | T="$T".mkv 60 | ffmpeg -y -f x11grab -s \ 61 | `xdpyinfo | grep 'dimensions:'|awk '{print $2}'` \ 62 | -i :0.0 -f pulse \ 63 | -i default $location_dir/$T & 64 | echo $! > /tmp/recordingpid 65 | fi 66 | } 67 | 68 | screencastpause(){ 69 | if [[ -f /tmp/recordingpaused ]]; then 70 | [ -f "/tmp/recordingpid" ] && cat /tmp/recordingpid | xargs kill -CONT 71 | rm -f /tmp/recordingpaused 72 | else 73 | [ -f "/tmp/recordingpid" ] && cat /tmp/recordingpid | xargs kill -STOP 74 | touch /tmp/recordingpaused 75 | fi 76 | } 77 | 78 | case "$1" in 79 | screen) screencast;; 80 | screencastpause) screencastpause;; 81 | webcam) webcam;; 82 | androidcam) androidconnect;; 83 | androiddmenu) androiddmenuconnect;; 84 | *) echo "record or pause?" 85 | esac 86 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/github-contributions-widget/README.md: -------------------------------------------------------------------------------- 1 | # Github Contributions Widget 2 | 3 | The widget is inspired by the https://github-contributions.now.sh/ and relies on it's API. 4 | 5 | It shows the contribution graph, similar to the one on the github profile page: ![screenshot](./screenshots/screenshot.jpg) 6 | 7 | You might wonder what could be the reason to have your github's contributions in front of you all day long? The more you contribute, the nicer widget looks! Check out [Thomashighbaugh](https://github.com/Thomashighbaugh)'s graph: 8 | 9 | ![](./screenshots/Thomashighbaugh.png) 10 | 11 | ## Customization 12 | 13 | It is possible to customize the widget by providing a table with all or some of the following config parameters: 14 | 15 | | Name | Default | Description | 16 | |---|---|---| 17 | | `username` | `streetturtle` | GitHub username | 18 | | `days` | `365` | Number of days in the past, more days - wider the widget | 19 | | `color_of_empty_cells` | Theme's default | Color of the days with no contributions | 20 | | `with_border` | `true` | Should the graph contains border or not | 21 | | `margin_top` | `1` | Top margin | 22 | | `theme` | `standard` | Color theme of the graph, see below | 23 | 24 | _Note:_ widget height is 21px (7 rows of 3x3 cells). So it would look nice on the wibar of 22-24px height. 25 | 26 | ### Themes 27 | 28 | Following themes are available: 29 | 30 | | Theme name | Preview | 31 | |---|---| 32 | | standard | ![standard](./screenshots/standard.png) | 33 | | classic | ![classic](./screenshots/classic.png) | 34 | | teal | ![teal](./screenshots/teal.png) | 35 | | leftpad | ![leftpad](./screenshots/leftpad.png) | 36 | | dracula | ![dracula](./screenshots/dracula.png) | 37 | | pink | ![pink](./screenshots/pink.png) | 38 | 39 | To add a new theme, simply add a new entry in `themes` table (themes.lua) with the colors of your theme. 40 | 41 | ### Screenshots 42 | 43 | 1000 days, with border: 44 | ![screenshot1](./screenshots/screenshot1.jpg) 45 | 46 | 365 days, no border: 47 | ![screenshot2](./screenshots/screenshot2.jpg) 48 | 49 | ## Installation 50 | 51 | Clone/download repo under **~/.config/awesome** and use widget in **rc.lua**: 52 | 53 | ```lua 54 | local github_contributions_widget = require("awesome-wm-widgets.github-contributions-widget.github-contributions-widget") 55 | ... 56 | s.mytasklist, -- Middle widget 57 | { -- Right widgets 58 | layout = wibox.layout.fixed.horizontal, 59 | ... 60 | -- default 61 | github_contributions_widget({username = ''}), 62 | ... 63 | ``` 64 | -------------------------------------------------------------------------------- /.config/X11/Xresources: -------------------------------------------------------------------------------- 1 | *.highlightColor:#3A3F4B 2 | *.foreground: #ebdbb2 3 | *.font: monospace:size=11 4 | *.alpha: 0.92 5 | *.alphaUnfocussed: 0.90 6 | !*.background: #07080f 7 | *.cursorColor: #fcfcd7 8 | 9 | !*.color0: #073642 10 | !*.color1: #dc322f 11 | !*.color2: #b8bb26 12 | !*.color3: #fabd2f 13 | !*.color4: #61AFEF 14 | !*.color5: #c678dd 15 | !*.color6: #2aa198 16 | !*.color7: #eee8d5 17 | !*.color8: #fdf6e3 18 | !*.color9: #cb4b16 19 | !*.color10: #98971a 20 | !*.color11: #D19A66 21 | !*.color12: #61afef 22 | !*.color13: #C678DD 23 | !*.color14: #56B6C2 24 | !*.color15: #ebdbb2 25 | 26 | ! *.color0: #1d2021 27 | ! *.color1: #cc241d 28 | ! *.color2: #98971a 29 | ! *.color3: #d79921 30 | ! *.color4: #458588 31 | ! *.color5: #b16286 32 | ! *.color6: #689d6a 33 | ! *.color7: #a89984 34 | ! *.color8: #928374 35 | ! *.color9: #fb4934 36 | ! *.color10: #b8bb26 37 | ! *.color11: #fabd2f 38 | ! *.color12: #83a598 39 | ! *.color13: #d3869b 40 | ! *.color14: #8ec07c 41 | ! *.color15: #ebdbb2 42 | ! *.color256: #1d2021 43 | ! *.color257: #ebdbb2 44 | 45 | 46 | !gruvbox 47 | ! hard contrast: *background: #1d2021 48 | *background: #1d2021 49 | *foreground: #ebdbb2 50 | *color0: #282828 51 | *color1: #cc241d 52 | *color2: #98971a 53 | *color3: #d79921 54 | *color4: #458588 55 | *color5: #b16286 56 | *color6: #689d6a 57 | *color7: #a89984 58 | *color8: #928374 59 | *color9: #fb4934 60 | *color10: #b8bb26 61 | *color11: #fabd2f 62 | *color12: #83a598 63 | *color13: #d3869b 64 | *color14: #8ec07c 65 | *color15: #ebdbb2 66 | 67 | 68 | URxvt.allow_bold: true 69 | URxvt.font: xft:Liberation Mono:size=22 70 | URxvt.letterSpace: 0 71 | URxvt.lineSpace: 0 72 | URxvt.geometry: 92x24 73 | URxvt.internalBorder: 12 74 | URxvt.cursorUnderline: false 75 | URxvt.saveline: 2048 76 | URxvt.scrollBar: false 77 | URxvt.scrollBar_right: false 78 | URxvt.urgentOnBell: true 79 | URxvt.cursorBlink: 1 80 | URxvt.keysym.M-k: command:\033]720;1\007 81 | URxvt.keysym.M-j: command:\033]721;1\007 82 | URxvt.perl-ext-common: default,clipboard,url-select,keyboard-select,resize-font 83 | URxvt.url-select.launcher: brave 84 | URxvt.url-select.underline: true 85 | URxvt.keysym.M-u: perl:url-select:select_next 86 | URxvt.keysym.M-Escape: perl:keyboard-select:activate 87 | URxvt.keysym.M-s: perl:keyboard-select:search 88 | URxvt*scrollTtyOutput: false 89 | URxvt*scrollWithBuffer: true 90 | URxvt*scrollTtyKeypress: true 91 | URxvt.secondaryScreen: 1 92 | URxvt.secondaryScroll: 0 93 | URxvt.keyboard-select.clipboard: true 94 | 95 | 96 | -------------------------------------------------------------------------------- /.config/awesome/lain/widget/cpu.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | Licensed under GNU General Public License v2 4 | * (c) 2013, Luca CPZ 5 | * (c) 2010-2012, Peter Hofmann 6 | 7 | --]] 8 | 9 | local helpers = require("lain.helpers") 10 | local wibox = require("wibox") 11 | local math = math 12 | local string = string 13 | 14 | -- CPU usage 15 | -- lain.widget.cpu 16 | 17 | local function factory(args) 18 | args = args or {} 19 | 20 | local cpu = { core = {}, widget = args.widget or wibox.widget.textbox() } 21 | local timeout = args.timeout or 2 22 | local settings = args.settings or function() end 23 | 24 | function cpu.update() 25 | -- Read the amount of time the CPUs have spent performing 26 | -- different kinds of work. Read the first line of /proc/stat 27 | -- which is the sum of all CPUs. 28 | for index,time in pairs(helpers.lines_match("cpu","/proc/stat")) do 29 | local coreid = index - 1 30 | local core = cpu.core[coreid] or 31 | { last_active = 0 , last_total = 0, usage = 0 } 32 | local at = 1 33 | local idle = 0 34 | local total = 0 35 | 36 | for field in string.gmatch(time, "[%s]+([^%s]+)") do 37 | -- 4 = idle, 5 = ioWait. Essentially, the CPUs have done 38 | -- nothing during these times. 39 | if at == 4 or at == 5 then 40 | idle = idle + field 41 | end 42 | total = total + field 43 | at = at + 1 44 | end 45 | 46 | local active = total - idle 47 | 48 | if core.last_active ~= active or core.last_total ~= total then 49 | -- Read current data and calculate relative values. 50 | local dactive = active - core.last_active 51 | local dtotal = total - core.last_total 52 | local usage = math.ceil(math.abs((dactive / dtotal) * 100)) 53 | 54 | core.last_active = active 55 | core.last_total = total 56 | core.usage = usage 57 | 58 | -- Save current data for the next run. 59 | cpu.core[coreid] = core 60 | end 61 | end 62 | 63 | cpu_now = cpu.core 64 | cpu_now.usage = cpu_now[0].usage 65 | widget = cpu.widget 66 | 67 | settings() 68 | end 69 | 70 | helpers.newtimer("cpu", timeout, cpu.update) 71 | 72 | return cpu 73 | end 74 | 75 | return factory 76 | -------------------------------------------------------------------------------- /.local/bin/scripts/dmenumount: -------------------------------------------------------------------------------- 1 | 2 | #!/bin/sh 3 | # Gives a dmenu prompt to mount unmounted drives. 4 | # If they're in /etc/fstab, they'll be mounted automatically. 5 | # Otherwise, you'll be prompted to give a mountpoint from already existsing directories. 6 | # If you input a novel directory, it will prompt you to create that directory. 7 | 8 | getmount() { \ 9 | [ -z "$chosen" ] && exit 1 10 | mp=$(echo -e "/home/rishabh/mnt/usb1\n/home/rishabh/mnt/usb2\n/home/rishabh/mnt/phn1\n/home/rishabh/mnt/phn2" | dmenu -i -p "Type in mount point.") 11 | [ "$mp" = "" ] && exit 1 12 | if [ ! -d "$mp" ]; then 13 | mkdiryn=$(printf "No\\nYes" | dmenu -i -p "$mp does not exist. Create it?") 14 | [ "$mkdiryn" = "Yes" ] && (mkdir -p "$mp" || sudo -A mkdir -p "$mp") 15 | fi 16 | } 17 | 18 | mountusb() { \ 19 | chosen="$(echo "$usbdrives" | dmenu -i -p "Mount which drive?" | awk '{print $1}')" 20 | sudo -A mount "$chosen" 2>/dev/null && notify-send "💻 USB mounting" "$chosen mounted." && exit 0 21 | alreadymounted=$(lsblk -nrpo "name,type,mountpoint" | awk '$2=="part"&&$3!~/\/boot|\/home$|SWAP/&&length($3)>1{printf "-not \\( -path *%s -prune \\) \\ \n",$3}') 22 | getmount "/mnt /media /mount /home -maxdepth 5 -type d $alreadymounted" 23 | partitiontype="$(lsblk -no "fstype" "$chosen")" 24 | case "$partitiontype" in 25 | "vfat") sudo -A mount -t vfat "$chosen" "$mp" -o rw,umask=0000;; 26 | *) sudo -A mount "$chosen" "$mp"; user="$(whoami)"; ug="$(groups | awk '{print $1}')"; sudo -A chown "$user":"$ug" "$mp";; 27 | esac 28 | notify-send "💻 USB mounting" "$chosen mounted to $mp." 29 | } 30 | 31 | mountandroid() { \ 32 | chosen=$(echo "$anddrives" | dmenu -i -p "Which Android device?" | cut -d : -f 1) 33 | getmount "$HOME -maxdepth 3 -type d" 34 | simple-mtpfs --device "$chosen" "$mp" 35 | notify-send "🤖 Android Mounting" "Android device mounted to $mp." 36 | } 37 | 38 | asktype() { \ 39 | case $(printf "USB\\nAndroid" | dmenu -i -p "Mount a USB drive or Android device?") in 40 | USB) mountusb ;; 41 | Android) mountandroid ;; 42 | esac 43 | } 44 | 45 | anddrives=$(simple-mtpfs -l 2>/dev/null) 46 | usbdrives="$(lsblk -rpo "name,type,size,mountpoint" | awk '$2=="part"&&$4==""{printf "%s (%s)\n",$1,$3}')" 47 | 48 | if [ -z "$usbdrives" ]; then 49 | [ -z "$anddrives" ] && echo "No USB drive or Android device detected" && exit 50 | echo "Android device(s) detected." 51 | mountandroid 52 | else 53 | if [ -z "$anddrives" ]; then 54 | echo "USB drive(s) detected." 55 | mountusb 56 | else 57 | echo "Mountable USB drive(s) and Android device(s) detected." 58 | asktype 59 | fi 60 | fi 61 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/VitalyGorbachev/shower-rain.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/awesome/awesome-wm-widgets/weather-widget/icons/VitalyGorbachev/shower-rain-night.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.config/nvim/lua/rd/jdtls_config.lua: -------------------------------------------------------------------------------- 1 | local M = {} 2 | function M.setup() 3 | -- vim.cmd[[set softtabstop=4]] 4 | -- vim.cmd[[set shiftwidth=4]] 5 | -- vim.cmd[[set noexpandtab]] 6 | require('jdtls').start_or_attach({cmd = {'launch_jdtls'}}) 7 | -- Utility servers 8 | local map = function(type, key, value) 9 | vim.api.nvim_buf_set_keymap(0,type,key,value,{noremap = true, silent = true}); 10 | end 11 | -- GOTO mappings 12 | map('n','gD','lua vim.lsp.buf.declaration()') 13 | map('n','gd','lua vim.lsp.buf.definition()') 14 | map('n','K','lua vim.lsp.buf.hover()') 15 | map('n','gr','lua vim.lsp.buf.references()') 16 | map('n','gs','lua vim.lsp.buf.signature_help()') 17 | map('n','gi','lua vim.lsp.buf.implementation()') 18 | map('n','gt','lua vim.lsp.buf.type_definition()') 19 | map('n','gw','lua vim.lsp.buf.document_symbol()') 20 | map('n','gW','lua vim.lsp.buf.workspace_symbol()') 21 | -- ACTION mappings 22 | map('n','ah', 'lua vim.lsp.buf.hover()') 23 | map('n','af', 'lua require"jdtls".code_action()') 24 | map('n','ar', 'lua vim.lsp.buf.rename()') 25 | -- Few language severs support these three 26 | map('n','=', 'lua vim.lsp.buf.formatting()') 27 | map('n','ai', 'lua vim.lsp.buf.incoming_calls()') 28 | map('n','ao', 'lua vim.lsp.buf.outgoing_calls()') 29 | -- Diagnostics mapping 30 | map('n','ee', 'lua vim.lsp.diagnostic.show_line_diagnostics()') 31 | map('n','en', [[lua require'lsp_config'.next_diagnostic()]]) 32 | map('n','ep', [[lua require'lsp_config'.prev_diagnostic()]]) 33 | 34 | map('n', [[ai]], [[lua require'jdtls'.organize_imports()]]) 35 | map('n', [[av]], [[lua require('jdtls').extract_variable()]]) 36 | map('v', [[av]], [[lua require('jdtls').extract_variable(true)]]) 37 | map('v', [[am]], [[lua require('jdtls').extract_method(true)]]) 38 | map('n', [[aR]], [[lua require('jdtls').code_action(false, 'refactor')]]) 39 | 40 | local jdtls_ui = require'jdtls.ui' 41 | function jdtls_ui.pick_one_async(items, _, _, cb) 42 | require'lsputil.codeAction'.code_action_handler(nil, nil, items, nil, nil, nil, cb) 43 | end 44 | vim.cmd[[command! -buffer JdtCompile lua require('jdtls').compile()]] 45 | vim.cmd[[command! -buffer JdtUpdateConfig lua require('jdtls').update_project_config()]] 46 | vim.cmd[[command! -buffer JdtJol lua require('jdtls').jol()]] 47 | vim.cmd[[command! -buffer JdtBytecode lua require('jdtls').javap()]] 48 | vim.cmd[[command! -buffer JdtJshell lua require('jdtls').jshell()]] 49 | end 50 | 51 | return M 52 | --------------------------------------------------------------------------------