Compare commits
86 commits
Author | SHA1 | Date | |
---|---|---|---|
f1ef247c0c | |||
d50d555e11 | |||
8de3e7e86b | |||
db6ce2cf41 | |||
f4a5a15a8e | |||
efb569a435 | |||
37b3ccfd2a | |||
93294e256d | |||
9851a66ff9 | |||
29d62e5242 | |||
0d39d11c52 | |||
b2ac1d5ff2 | |||
e655f043e1 | |||
878a6fc8b9 | |||
6d3de31390 | |||
129b7e5c67 | |||
2083dc5074 | |||
|
435d0ae8e7 | ||
e1016c11ba | |||
43acbe091c | |||
3e1bb5e15c | |||
03beee0e18 | |||
baa36c638c | |||
012e0e0f9c | |||
f8bdba9ca9 | |||
dc1d970a7d | |||
bc7d3f6032 | |||
7c5bda0919 | |||
4a1f09d970 | |||
7c30575420 | |||
44b89545d5 | |||
2a221d0667 | |||
4a8337e472 | |||
77af2fa024 | |||
|
c1309c652f | ||
|
ee8b820127 | ||
|
89ba8be7e9 | ||
6f06cfe888 | |||
5855de31a4 | |||
0a0b163dd1 | |||
3337e9dea8 | |||
51738c04ea | |||
cefb5fbb29 | |||
46e83503aa | |||
051b29f9ce | |||
628138d100 | |||
067d055c09 | |||
bdbe4ba3ed | |||
d3af14c21e | |||
73a70b022f | |||
2d9397eb53 | |||
0bd95d9043 | |||
48ecf15dce | |||
|
69ff5f2f93 | ||
918a282bb2 | |||
c2e5c02078 | |||
d3e901f710 | |||
69ce4691b5 | |||
bcf9205dfa | |||
0474e0f265 | |||
7cf174e37e | |||
2e3fe67a92 | |||
0197e6d3c5 | |||
45afdd620c | |||
4c6140418d | |||
7e0341098e | |||
5001635823 | |||
0a95329df7 | |||
e60e06afcc | |||
25a90e80c2 | |||
dca853ac85 | |||
b569b57d63 | |||
a816e697e9 | |||
6698040877 | |||
a772c19f8f | |||
239eacf23e | |||
8a849d1865 | |||
f0a1783099 | |||
b6afc1eb74 | |||
7b3ce3e0ff | |||
a7d6ccd855 | |||
9d5abd0cd1 | |||
b6a0f3aa5a | |||
39850bf997 | |||
35bed94a39 | |||
cd404690a2 |
29
.Xresources
Normal file
|
@ -0,0 +1,29 @@
|
|||
*faceName: Public Sans
|
||||
xterm*faceSize: 14
|
||||
*multiClickTime: 300
|
||||
*international: true
|
||||
Xcursor.theme: default
|
||||
Xcursor.size: 16 ! 32, 48 or 64 may also be good values
|
||||
|
||||
! Xft settings ---------------------------------------------------------------
|
||||
|
||||
Xft.lcdfilter: lcddefault
|
||||
Xft.antialias: true
|
||||
Xft.autohint: false
|
||||
Xft.hinting: true
|
||||
Xft.hintstyle: hintfull
|
||||
Xft.rgba: rgb
|
||||
|
||||
! xterm ----------------------------------------------------------------------
|
||||
xterm*geometry: 100x25
|
||||
xterm*dynamicColors: true
|
||||
xterm*utf8: 1
|
||||
xterm*eightBitInput: true
|
||||
xterm*saveLines: 12000
|
||||
xterm*scrollTtyKeypress: true
|
||||
xterm*scrollTtyOutput: false
|
||||
xterm*jumpScroll: true
|
||||
xterm*multiScroll: true
|
||||
xterm*toolBar: false
|
||||
xterm*termName: xterm-256color
|
||||
xterm*faceName: Noto Sans Mono
|
333
.bashrc
|
@ -1,15 +1,7 @@
|
|||
### EXPORT ###
|
||||
export EDITOR='nano'
|
||||
export VISUAL='nano'
|
||||
export HISTCONTROL=ignoreboth:erasedups
|
||||
export PAGER='most'
|
||||
|
||||
#Ibus settings if you need them
|
||||
#type ibus-setup in terminal to change settings and start the daemon
|
||||
#delete the hashtags of the next lines and restart
|
||||
#export GTK_IM_MODULE=ibus
|
||||
#export XMODIFIERS=@im=dbus
|
||||
#export QT_IM_MODULE=ibus
|
||||
source "$HOME/.config/shell/public-env.sh"
|
||||
source "$HOME/.config/shell/aliases.sh"
|
||||
source "$HOME/.config/shell/utils.sh"
|
||||
source "$HOME/.config/shell/setup.sh"
|
||||
|
||||
PS1='[\u@\h \W]\$ '
|
||||
|
||||
|
@ -17,147 +9,9 @@ PS1='[\u@\h \W]\$ '
|
|||
[[ $- != *i* ]] && return
|
||||
|
||||
|
||||
if [ -d "$HOME/.bin" ] ;
|
||||
then PATH="$HOME/.bin:$PATH"
|
||||
fi
|
||||
|
||||
if [ -d "$HOME/.local/bin" ] ;
|
||||
then PATH="$HOME/.local/bin:$PATH"
|
||||
fi
|
||||
|
||||
#ignore upper and lowercase when TAB completion
|
||||
bind "set completion-ignore-case on"
|
||||
|
||||
### ALIASES ###
|
||||
|
||||
#list
|
||||
alias ls='ls --color=auto'
|
||||
alias la='ls -a'
|
||||
alias ll='ls -alFh'
|
||||
alias l='ls'
|
||||
alias l.="ls -A | egrep '^\.'"
|
||||
|
||||
#fix obvious typo's
|
||||
alias cd..='cd ..'
|
||||
alias pdw='pwd'
|
||||
alias udpate='sudo pacman -Syyu'
|
||||
alias upate='sudo pacman -Syyu'
|
||||
alias updte='sudo pacman -Syyu'
|
||||
alias updqte='sudo pacman -Syyu'
|
||||
alias upqll='paru -Syu --noconfirm'
|
||||
alias upal='paru -Syu --noconfirm'
|
||||
|
||||
## Colorize the grep command output for ease of use (good for log files)##
|
||||
alias grep='grep --color=auto'
|
||||
alias egrep='egrep --color=auto'
|
||||
alias fgrep='fgrep --color=auto'
|
||||
|
||||
#readable output
|
||||
alias df='df -h'
|
||||
|
||||
#keyboard
|
||||
alias give-me-azerty-be="sudo localectl set-x11-keymap be"
|
||||
alias give-me-qwerty-us="sudo localectl set-x11-keymap us"
|
||||
|
||||
#pacman unlock
|
||||
alias unlock="sudo rm /var/lib/pacman/db.lck"
|
||||
alias rmpacmanlock="sudo rm /var/lib/pacman/db.lck"
|
||||
|
||||
#arcolinux logout unlock
|
||||
alias rmlogoutlock="sudo rm /tmp/arcologout.lock"
|
||||
|
||||
#which graphical card is working
|
||||
alias whichvga="/usr/local/bin/arcolinux-which-vga"
|
||||
|
||||
#free
|
||||
alias free="free -mt"
|
||||
|
||||
#continue download
|
||||
alias wget="wget -c"
|
||||
|
||||
#userlist
|
||||
alias userlist="cut -d: -f1 /etc/passwd"
|
||||
|
||||
#merge new settings
|
||||
alias merge="xrdb -merge ~/.Xresources"
|
||||
|
||||
# Aliases for software managment
|
||||
# pacman or pm
|
||||
alias pacman='sudo pacman --color auto'
|
||||
alias update='sudo pacman -Syyu'
|
||||
|
||||
# paru as aur helper - updates everything
|
||||
alias pksyua="paru -Syu --noconfirm"
|
||||
alias upall="paru -Syu --noconfirm"
|
||||
|
||||
#ps
|
||||
alias psa="ps auxf"
|
||||
alias psgrep="ps aux | grep -v grep | grep -i -e VSZ -e"
|
||||
|
||||
#grub update
|
||||
alias update-grub="sudo grub-mkconfig -o /boot/grub/grub.cfg"
|
||||
|
||||
#add new fonts
|
||||
alias update-fc='sudo fc-cache -fv'
|
||||
|
||||
#copy/paste all content of /etc/skel over to home folder - backup of config created - beware
|
||||
alias skel='[ -d ~/.config ] || mkdir ~/.config && cp -Rf ~/.config ~/.config-backup-$(date +%Y.%m.%d-%H.%M.%S) && cp -rf /etc/skel/* ~'
|
||||
#backup contents of /etc/skel to hidden backup folder in home/user
|
||||
alias bupskel='cp -Rf /etc/skel ~/.skel-backup-$(date +%Y.%m.%d-%H.%M.%S)'
|
||||
|
||||
#copy shell configs
|
||||
alias cb='cp /etc/skel/.bashrc ~/.bashrc && exec bash'
|
||||
alias cz='cp /etc/skel/.zshrc ~/.zshrc && echo "Copied."'
|
||||
alias cf='cp /etc/skel/.config/fish/config.fish ~/.config/fish/config.fish && echo "Copied."'
|
||||
|
||||
#switch between bash and zsh
|
||||
alias tobash="sudo chsh $USER -s /bin/bash && echo 'Now log out.'"
|
||||
alias tozsh="sudo chsh $USER -s /bin/zsh && echo 'Now log out.'"
|
||||
alias tofish="sudo chsh $USER -s /bin/fish && echo 'Now log out.'"
|
||||
|
||||
#switch between lightdm and sddm
|
||||
alias tolightdm="sudo pacman -S lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings --noconfirm --needed ; sudo systemctl enable lightdm.service -f ; echo 'Lightm is active - reboot now'"
|
||||
alias tosddm="sudo pacman -S sddm --noconfirm --needed ; sudo systemctl enable sddm.service -f ; echo 'Sddm is active - reboot now'"
|
||||
alias toly="sudo pacman -S ly --noconfirm --needed ; sudo systemctl enable ly.service -f ; echo 'Ly is active - reboot now'"
|
||||
alias togdm="sudo pacman -S gdm --noconfirm --needed ; sudo systemctl enable gdm.service -f ; echo 'Gdm is active - reboot now'"
|
||||
alias tolxdm="sudo pacman -S lxdm --noconfirm --needed ; sudo systemctl enable lxdm.service -f ; echo 'Lxdm is active - reboot now'"
|
||||
|
||||
# kill commands
|
||||
# quickly kill conkies
|
||||
alias kc='killall conky'
|
||||
# quickly kill polybar
|
||||
alias kp='killall polybar'
|
||||
# quickly kill picom
|
||||
alias kpi='killall picom'
|
||||
|
||||
#hardware info --short
|
||||
alias hw="hwinfo --short"
|
||||
|
||||
#skip integrity check
|
||||
alias paruskip='paru -S --mflags --skipinteg'
|
||||
alias yayskip='yay -S --mflags --skipinteg'
|
||||
alias trizenskip='trizen -S --skipinteg'
|
||||
|
||||
#check vulnerabilities microcode
|
||||
alias microcode='grep . /sys/devices/system/cpu/vulnerabilities/*'
|
||||
|
||||
#get fastest mirrors in your neighborhood
|
||||
alias mirror="sudo reflector -f 30 -l 30 --number 10 --verbose --save /etc/pacman.d/mirrorlist"
|
||||
alias mirrord="sudo reflector --latest 30 --number 10 --sort delay --save /etc/pacman.d/mirrorlist"
|
||||
alias mirrors="sudo reflector --latest 30 --number 10 --sort score --save /etc/pacman.d/mirrorlist"
|
||||
alias mirrora="sudo reflector --latest 30 --number 10 --sort age --save /etc/pacman.d/mirrorlist"
|
||||
#our experimental - best option for the moment
|
||||
alias mirrorx="sudo reflector --age 6 --latest 20 --fastest 20 --threads 5 --sort rate --protocol https --save /etc/pacman.d/mirrorlist"
|
||||
alias mirrorxx="sudo reflector --age 6 --latest 20 --fastest 20 --threads 20 --sort rate --protocol https --save /etc/pacman.d/mirrorlist"
|
||||
alias ram='rate-mirrors --allow-root arch | sudo tee /etc/pacman.d/mirrorlist'
|
||||
|
||||
#mounting the folder Public for exchange between host and guest on virtualbox
|
||||
alias vbm="sudo /usr/local/bin/arcolinux-vbox-share"
|
||||
|
||||
#enabling vmware services
|
||||
alias start-vmware="sudo systemctl enable --now vmtoolsd.service"
|
||||
alias sv="sudo systemctl enable --now vmtoolsd.service"
|
||||
|
||||
#shopt
|
||||
shopt -s autocd # change to named directory
|
||||
shopt -s cdspell # autocorrects cd misspellings
|
||||
|
@ -166,179 +20,8 @@ shopt -s dotglob
|
|||
shopt -s histappend # do not overwrite history
|
||||
shopt -s expand_aliases # expand aliases
|
||||
|
||||
#youtube download
|
||||
alias yta-aac="yt-dlp --extract-audio --audio-format aac "
|
||||
alias yta-best="yt-dlp --extract-audio --audio-format best "
|
||||
alias yta-flac="yt-dlp --extract-audio --audio-format flac "
|
||||
alias yta-mp3="yt-dlp --extract-audio --audio-format mp3 "
|
||||
alias ytv-best="yt-dlp -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio' --merge-output-format mp4 "
|
||||
# History in cache directory:
|
||||
HISTSIZE=1000000000
|
||||
SAVEHIST=1000000000
|
||||
HISTFILE=~/.shell_history
|
||||
|
||||
#Recent Installed Packages
|
||||
alias rip="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -200 | nl"
|
||||
alias riplong="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -3000 | nl"
|
||||
|
||||
#iso and version used to install ArcoLinux
|
||||
alias iso="cat /etc/dev-rel | awk -F '=' '/ISO/ {print $2}'"
|
||||
|
||||
#Cleanup orphaned packages
|
||||
alias cleanup='sudo pacman -Rns $(pacman -Qtdq)'
|
||||
|
||||
#clear
|
||||
alias clean="clear; seq 1 (tput cols) | sort -R | sparklines | lolcat"
|
||||
|
||||
#search content with ripgrep
|
||||
alias rg="rg --sort path"
|
||||
|
||||
#get the error messages from journalctl
|
||||
alias jctl="journalctl -p 3 -xb"
|
||||
|
||||
#nano for important configuration files
|
||||
#know what you do in these files
|
||||
alias nlxdm="sudo $EDITOR /etc/lxdm/lxdm.conf"
|
||||
alias nlightdm="sudo $EDITOR /etc/lightdm/lightdm.conf"
|
||||
alias npacman="sudo $EDITOR /etc/pacman.conf"
|
||||
alias ngrub="sudo $EDITOR /etc/default/grub"
|
||||
alias nconfgrub="sudo $EDITOR /boot/grub/grub.cfg"
|
||||
alias nmkinitcpio="sudo $EDITOR /etc/mkinitcpio.conf"
|
||||
alias nmirrorlist="sudo $EDITOR /etc/pacman.d/mirrorlist"
|
||||
alias narcomirrorlist='sudo nano /etc/pacman.d/arcolinux-mirrorlist'
|
||||
alias nsddm="sudo $EDITOR /etc/sddm.conf"
|
||||
alias nsddmk="sudo $EDITOR /etc/sddm.conf.d/kde_settings.conf"
|
||||
alias nfstab="sudo $EDITOR /etc/fstab"
|
||||
alias nnsswitch="sudo $EDITOR /etc/nsswitch.conf"
|
||||
alias nsamba="sudo $EDITOR /etc/samba/smb.conf"
|
||||
alias ngnupgconf="sudo nano /etc/pacman.d/gnupg/gpg.conf"
|
||||
alias nhosts="sudo $EDITOR /etc/hosts"
|
||||
alias nb="$EDITOR ~/.bashrc"
|
||||
alias nz="$EDITOR ~/.zshrc"
|
||||
alias nf="EDITOR ~/.config/fish/config.fish"
|
||||
|
||||
#gpg
|
||||
#verify signature for isos
|
||||
alias gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify"
|
||||
alias fix-gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify"
|
||||
#receive the key of a developer
|
||||
alias gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys"
|
||||
alias fix-gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys"
|
||||
alias fix-keyserver="[ -d ~/.gnupg ] || mkdir ~/.gnupg ; cp /etc/pacman.d/gnupg/gpg.conf ~/.gnupg/ ; echo 'done'"
|
||||
|
||||
#fixes
|
||||
alias fix-permissions="sudo chown -R $USER:$USER ~/.config ~/.local"
|
||||
alias keyfix="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys"
|
||||
alias key-fix="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys"
|
||||
alias keys-fix="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys"
|
||||
alias fixkey="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys"
|
||||
alias fixkeys="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys"
|
||||
alias fix-key="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys"
|
||||
alias fix-keys="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys"
|
||||
alias fix-sddm-config="/usr/local/bin/arcolinux-fix-sddm-config"
|
||||
alias fix-pacman-conf="/usr/local/bin/arcolinux-fix-pacman-conf"
|
||||
alias fix-pacman-keyserver="/usr/local/bin/arcolinux-fix-pacman-gpg-conf"
|
||||
|
||||
#maintenance
|
||||
alias big="expac -H M '%m\t%n' | sort -h | nl"
|
||||
alias downgrada="sudo downgrade --ala-url https://ant.seedhost.eu/arcolinux/"
|
||||
|
||||
#hblock (stop tracking with hblock)
|
||||
#use unhblock to stop using hblock
|
||||
alias unhblock="hblock -S none -D none"
|
||||
|
||||
#systeminfo
|
||||
alias probe="sudo -E hw-probe -all -upload"
|
||||
alias sysfailed="systemctl list-units --failed"
|
||||
|
||||
#shutdown or reboot
|
||||
alias ssn="sudo shutdown now"
|
||||
alias sr="sudo reboot"
|
||||
|
||||
#update betterlockscreen images
|
||||
alias bls="betterlockscreen -u /usr/share/backgrounds/arcolinux/"
|
||||
|
||||
#give the list of all installed desktops - xsessions desktops
|
||||
alias xd="ls /usr/share/xsessions"
|
||||
|
||||
# # ex = EXtractor for all kinds of archives
|
||||
# # usage: ex <file>
|
||||
ex ()
|
||||
{
|
||||
if [ -f $1 ] ; then
|
||||
case $1 in
|
||||
*.tar.bz2) tar xjf $1 ;;
|
||||
*.tar.gz) tar xzf $1 ;;
|
||||
*.bz2) bunzip2 $1 ;;
|
||||
*.rar) unrar x $1 ;;
|
||||
*.gz) gunzip $1 ;;
|
||||
*.tar) tar xf $1 ;;
|
||||
*.tbz2) tar xjf $1 ;;
|
||||
*.tgz) tar xzf $1 ;;
|
||||
*.zip) unzip $1 ;;
|
||||
*.Z) uncompress $1;;
|
||||
*.7z) 7z x $1 ;;
|
||||
*.deb) ar x $1 ;;
|
||||
*.tar.xz) tar xf $1 ;;
|
||||
*.tar.zst) tar xf $1 ;;
|
||||
*) echo "'$1' cannot be extracted via ex()" ;;
|
||||
esac
|
||||
else
|
||||
echo "'$1' is not a valid file"
|
||||
fi
|
||||
}
|
||||
|
||||
#btrfs aliases
|
||||
alias btrfsfs="sudo btrfs filesystem df /"
|
||||
alias btrfsli="sudo btrfs su li / -t"
|
||||
|
||||
#snapper aliases
|
||||
alias snapcroot="sudo snapper -c root create-config /"
|
||||
alias snapchome="sudo snapper -c home create-config /home"
|
||||
alias snapli="sudo snapper list"
|
||||
alias snapcr="sudo snapper -c root create"
|
||||
alias snapch="sudo snapper -c home create"
|
||||
|
||||
#Leftwm aliases
|
||||
alias lti="leftwm-theme install"
|
||||
alias ltu="leftwm-theme uninstall"
|
||||
alias lta="leftwm-theme apply"
|
||||
alias ltupd="leftwm-theme update"
|
||||
alias ltupg="leftwm-theme upgrade"
|
||||
|
||||
#arcolinux applications
|
||||
alias att="arcolinux-tweak-tool"
|
||||
alias adt="arcolinux-desktop-trasher"
|
||||
alias abl="arcolinux-betterlockscreen"
|
||||
alias agm="arcolinux-get-mirrors"
|
||||
alias amr="arcolinux-mirrorlist-rank-info"
|
||||
alias aom="arcolinux-osbeck-as-mirror"
|
||||
alias ars="arcolinux-reflector-simple"
|
||||
alias atm="arcolinux-tellme"
|
||||
alias avs="arcolinux-vbox-share"
|
||||
alias awa="arcolinux-welcome-app"
|
||||
|
||||
#remove
|
||||
alias rmgitcache="rm -r ~/.cache/git"
|
||||
|
||||
#moving your personal files and folders from /personal to ~
|
||||
alias personal='cp -Rf /personal/* ~'
|
||||
|
||||
#create a file called .bashrc-personal and put all your personal aliases
|
||||
#in there. They will not be overwritten by skel.
|
||||
|
||||
[[ -f ~/.bashrc-personal ]] && . ~/.bashrc-personal
|
||||
|
||||
exec zsh
|
||||
|
||||
# reporting tools - install when not installed
|
||||
neofetch
|
||||
#screenfetch
|
||||
#alsi
|
||||
#paleofetch
|
||||
#fetch
|
||||
#hfetch
|
||||
#sfetch
|
||||
#ufetch
|
||||
#ufetch-arco
|
||||
#pfetch
|
||||
#sysinfo
|
||||
#sysinfo-retro
|
||||
#cpufetch
|
||||
#colorscript random
|
||||
|
|
212
.config/btop/btop.conf
Normal file
|
@ -0,0 +1,212 @@
|
|||
#? Config file for btop v. 1.2.13
|
||||
|
||||
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
|
||||
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
|
||||
color_theme = "/usr/share/btop/themes/dracula.theme"
|
||||
|
||||
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
||||
theme_background = True
|
||||
|
||||
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||
truecolor = True
|
||||
|
||||
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||
force_tty = False
|
||||
|
||||
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
|
||||
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
|
||||
#* Use whitespace " " as separator between different presets.
|
||||
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
|
||||
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
|
||||
|
||||
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
|
||||
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
|
||||
vim_keys = False
|
||||
|
||||
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
||||
rounded_corners = True
|
||||
|
||||
#* Default symbols to use for graph creation, "braille", "block" or "tty".
|
||||
#* "braille" offers the highest resolution but might not be included in all fonts.
|
||||
#* "block" has half the resolution of braille but uses more common characters.
|
||||
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||
graph_symbol = "braille"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_cpu = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_mem = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_net = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_proc = "default"
|
||||
|
||||
#* Manually set which boxes to show. Available values are "cpu mem net proc", separate values with whitespace.
|
||||
shown_boxes = "cpu mem net proc"
|
||||
|
||||
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||
update_ms = 2000
|
||||
|
||||
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||
proc_sorting = "cpu lazy"
|
||||
|
||||
#* Reverse sorting order, True or False.
|
||||
proc_reversed = False
|
||||
|
||||
#* Show processes as a tree.
|
||||
proc_tree = True
|
||||
|
||||
#* Use the cpu graph colors in the process list.
|
||||
proc_colors = True
|
||||
|
||||
#* Use a darkening gradient in the process list.
|
||||
proc_gradient = True
|
||||
|
||||
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
|
||||
proc_per_core = True
|
||||
|
||||
#* Show process memory as bytes instead of percent.
|
||||
proc_mem_bytes = True
|
||||
|
||||
#* Show cpu graph for each process.
|
||||
proc_cpu_graphs = True
|
||||
|
||||
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
||||
proc_info_smaps = False
|
||||
|
||||
#* Show proc box on left side of screen instead of right.
|
||||
proc_left = False
|
||||
|
||||
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
||||
proc_filter_kernel = False
|
||||
|
||||
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
|
||||
#* Select from a list of detected attributes from the options menu.
|
||||
cpu_graph_upper = "total"
|
||||
|
||||
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
|
||||
#* Select from a list of detected attributes from the options menu.
|
||||
cpu_graph_lower = "idle"
|
||||
|
||||
#* Toggles if the lower CPU graph should be inverted.
|
||||
cpu_invert_lower = False
|
||||
|
||||
#* Set to True to completely disable the lower CPU graph.
|
||||
cpu_single_graph = False
|
||||
|
||||
#* Show cpu box at bottom of screen instead of top.
|
||||
cpu_bottom = False
|
||||
|
||||
#* Shows the system uptime in the CPU box.
|
||||
show_uptime = True
|
||||
|
||||
#* Show cpu temperature.
|
||||
check_temp = True
|
||||
|
||||
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
||||
cpu_sensor = "Auto"
|
||||
|
||||
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
||||
show_coretemp = True
|
||||
|
||||
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
|
||||
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
|
||||
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
|
||||
#* Example: "4:0 5:1 6:3"
|
||||
cpu_core_map = ""
|
||||
|
||||
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
|
||||
temp_scale = "celsius"
|
||||
|
||||
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
||||
base_10_sizes = False
|
||||
|
||||
#* Show CPU frequency.
|
||||
show_cpu_freq = True
|
||||
|
||||
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
|
||||
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
||||
clock_format = "%X"
|
||||
|
||||
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
|
||||
background_update = True
|
||||
|
||||
#* Custom cpu model name, empty string to disable.
|
||||
custom_cpu_name = ""
|
||||
|
||||
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
|
||||
#* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user".
|
||||
disks_filter = ""
|
||||
|
||||
#* Show graphs instead of meters for memory values.
|
||||
mem_graphs = True
|
||||
|
||||
#* Show mem box below net box instead of above.
|
||||
mem_below_net = False
|
||||
|
||||
#* Count ZFS ARC in cached and available memory.
|
||||
zfs_arc_cached = True
|
||||
|
||||
#* If swap memory should be shown in memory box.
|
||||
show_swap = True
|
||||
|
||||
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
||||
swap_disk = True
|
||||
|
||||
#* If mem box should be split to also show disks info.
|
||||
show_disks = True
|
||||
|
||||
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
||||
only_physical = True
|
||||
|
||||
#* Read disks list from /etc/fstab. This also disables only_physical.
|
||||
use_fstab = True
|
||||
|
||||
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
||||
zfs_hide_datasets = False
|
||||
|
||||
#* Set to true to show available disk space for privileged users.
|
||||
disk_free_priv = True
|
||||
|
||||
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
||||
show_io_stat = True
|
||||
|
||||
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
||||
io_mode = True
|
||||
|
||||
#* Set to True to show combined read/write io graphs in io mode.
|
||||
io_graph_combined = True
|
||||
|
||||
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
|
||||
#* Example: "/mnt/media:100 /:20 /boot:1".
|
||||
io_graph_speeds = ""
|
||||
|
||||
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
|
||||
net_download = 100
|
||||
|
||||
net_upload = 100
|
||||
|
||||
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
||||
net_auto = True
|
||||
|
||||
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
||||
net_sync = True
|
||||
|
||||
#* Starts with the Network Interface specified here.
|
||||
net_iface = ""
|
||||
|
||||
#* Show battery stats in top right if battery is present.
|
||||
show_battery = True
|
||||
|
||||
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
||||
selected_battery = "BAT0"
|
||||
|
||||
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
|
||||
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
|
||||
log_level = "WARNING"
|
|
@ -1,11 +1,5 @@
|
|||
## Configuration file for CAVA. Default values are commented out. Use either ';' or '#' for commenting.
|
||||
|
||||
|
||||
[general]
|
||||
|
||||
# Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0
|
||||
; mode = normal
|
||||
|
||||
# Accepts only non-negative values.
|
||||
framerate = 144
|
||||
|
||||
|
@ -21,9 +15,9 @@ sensitivity = 200
|
|||
|
||||
# The number of bars (0-200). 0 sets it to auto (fill up console).
|
||||
# Bars' width and space between bars in number of characters.
|
||||
; bars = 0
|
||||
bars = 0
|
||||
bar_width = 3
|
||||
; bar_spacing = 1
|
||||
bar_spacing = 1
|
||||
# bar_height is only used for output in "noritake" format
|
||||
; bar_height = 32
|
||||
|
||||
|
@ -127,32 +121,16 @@ channels = stereo
|
|||
|
||||
[color]
|
||||
|
||||
# Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow.
|
||||
# Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires
|
||||
# ncurses output method and a terminal that can change color definitions such as Gnome-terminal or rxvt.
|
||||
# if supported, ncurses mode will be forced on if user defined colors are used.
|
||||
# default is to keep current terminal color
|
||||
; background = default
|
||||
; foreground = default
|
||||
gradient = 1
|
||||
|
||||
# SDL only support hex code colors, these are the default:
|
||||
; background = '#111111'
|
||||
; foreground = '#33cccc'
|
||||
|
||||
|
||||
# Gradient mode, only hex defined colors (and thereby ncurses mode) are supported,
|
||||
# background must also be defined in hex or remain commented out. 1 = on, 0 = off.
|
||||
# You can define as many as 8 different colors. They range from bottom to top of screen
|
||||
; gradient = 0
|
||||
; gradient_count = 8
|
||||
; gradient_color_1 = '#59cc33'
|
||||
; gradient_color_2 = '#80cc33'
|
||||
; gradient_color_3 = '#a6cc33'
|
||||
; gradient_color_4 = '#cccc33'
|
||||
; gradient_color_5 = '#cca633'
|
||||
; gradient_color_6 = '#cc8033'
|
||||
; gradient_color_7 = '#cc5933'
|
||||
; gradient_color_8 = '#cc3333'
|
||||
gradient_color_1 = '#8BE9FD'
|
||||
gradient_color_2 = '#9AEDFE'
|
||||
gradient_color_3 = '#CAA9FA'
|
||||
gradient_color_4 = '#BD93F9'
|
||||
gradient_color_5 = '#FF92D0'
|
||||
gradient_color_6 = '#FF79C6'
|
||||
gradient_color_7 = '#FF6E67'
|
||||
gradient_color_8 = '#FF5555'
|
||||
|
||||
|
||||
|
||||
|
|
11
.config/cmus-rpc/configs.json
Normal file
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"interval" : 1000,
|
||||
"caverImage" : "cmus",
|
||||
"playIcon" : "play_icon_1",
|
||||
"pauseIcon" : "pause_icon_2",
|
||||
"partOneFormat" : "%title%",
|
||||
"partTowFormat" : "from %album% by %artist%",
|
||||
"sleepTime" : 300000,
|
||||
"debug" : false,
|
||||
"link" : false
|
||||
}
|
17
.config/cmus-rps-rs/config.conf
Normal file
|
@ -0,0 +1,17 @@
|
|||
debug: false
|
||||
link: false
|
||||
config_path: /home/anas/.config/cmus-rps-rs/config.conf
|
||||
interval: 1
|
||||
sleep: 300
|
||||
part_one_format: %artist% - %title%
|
||||
part_two_format: %album%
|
||||
large_image: cmus
|
||||
playing_image: play_icon_2
|
||||
paused_image: pause_icon_2
|
||||
large_text: cmus yoooo
|
||||
playing_text: Playing
|
||||
paused_text: Paused
|
||||
button_one_text: On github 😆
|
||||
button_one_url: https://github.com/anas-elgarhy/cmus-rps-rs
|
||||
button_two_text:
|
||||
button_two_url:
|
221
.config/cmus/autosave
Normal file
|
@ -0,0 +1,221 @@
|
|||
set aaa_mode=artist
|
||||
set altformat_current= %F
|
||||
set altformat_playlist= %f%= %d
|
||||
set altformat_title=%f
|
||||
set altformat_trackwin= %f%= %d
|
||||
set auto_expand_albums_follow=true
|
||||
set auto_expand_albums_search=true
|
||||
set auto_expand_albums_selcur=true
|
||||
set auto_reshuffle=true
|
||||
set buffer_seconds=10
|
||||
set color_cmdline_attr=default
|
||||
set color_cmdline_bg=233
|
||||
set color_cmdline_fg=188
|
||||
set color_cur_sel_attr=default
|
||||
set color_error=167
|
||||
set color_info=186
|
||||
set color_separator=107
|
||||
set color_statusline_attr=default
|
||||
set color_statusline_bg=237
|
||||
set color_statusline_fg=145
|
||||
set color_titleline_attr=default
|
||||
set color_titleline_bg=186
|
||||
set color_titleline_fg=237
|
||||
set color_trackwin_album_attr=bold
|
||||
set color_trackwin_album_bg=default
|
||||
set color_trackwin_album_fg=default
|
||||
set color_win_attr=default
|
||||
set color_win_bg=233
|
||||
set color_win_cur=183
|
||||
set color_win_cur_attr=default
|
||||
set color_win_cur_sel_attr=default
|
||||
set color_win_cur_sel_bg=186
|
||||
set color_win_cur_sel_fg=237
|
||||
set color_win_dir=186
|
||||
set color_win_fg=188
|
||||
set color_win_inactive_cur_sel_attr=default
|
||||
set color_win_inactive_cur_sel_bg=242
|
||||
set color_win_inactive_cur_sel_fg=186
|
||||
set color_win_inactive_sel_attr=default
|
||||
set color_win_inactive_sel_bg=237
|
||||
set color_win_inactive_sel_fg=145
|
||||
set color_win_sel_attr=default
|
||||
set color_win_sel_bg=254
|
||||
set color_win_sel_fg=237
|
||||
set color_win_title_attr=default
|
||||
set color_win_title_bg=237
|
||||
set color_win_title_fg=110
|
||||
set confirm_run=true
|
||||
set continue=true
|
||||
set continue_album=true
|
||||
set device=/dev/cdrom
|
||||
set display_artist_sort_name=false
|
||||
set dsp.alsa.device=
|
||||
set dsp.ao.buffer_size=16384
|
||||
set dsp.ao.device_interface=
|
||||
set dsp.ao.driver=
|
||||
set dsp.ao.wav_counter=1
|
||||
set dsp.ao.wav_dir=/home/anas
|
||||
set dsp.jack.resampling_quality=2
|
||||
set dsp.jack.server_name=
|
||||
set dsp.oss.device=
|
||||
set follow=false
|
||||
set format_clipped_text=…
|
||||
set format_current= %a - %l -%3n. %t%= %y
|
||||
set format_playlist= %-21%a %3n. %t%= %y %d %{?X!=0?%3X ? }
|
||||
set format_playlist_va= %-21%A %3n. %t (%a)%= %y %d %{?X!=0?%3X ? }
|
||||
set format_statusline= %{status} %{?show_playback_position?%{position} %{?duration?/ %{duration} }?%{?duration?%{duration} }}- %{total} %{?bpm>0?at %{bpm} BPM }%{?volume>=0?vol: %{?lvolume!=rvolume?%{lvolume},%{rvolume} ?%{volume} }}%{?stream?buf: %{buffer} }%{?show_current_bitrate & bitrate>=0? %{bitrate} kbps }%=%{?repeat_current?repeat current?%{?play_library?%{playlist_mode} from %{?play_sorted?sorted }library?playlist}} | %1{continue}%1{follow}%1{repeat}%1{shuffle}
|
||||
set format_title=%a - %l - %t (%y)
|
||||
set format_trackwin=%3n. %t%= %y %d
|
||||
set format_trackwin_album= %l %= %{albumduration}
|
||||
set format_trackwin_va=%3n. %t (%a)%= %y %d
|
||||
set format_treewin= %l
|
||||
set format_treewin_artist=%a
|
||||
set icecast_default_charset=UTF-8
|
||||
set id3_default_charset=UTF-8
|
||||
set input.aac.priority=50
|
||||
set input.cdio.cddb_url=freedb.freedb.org:8880
|
||||
set input.cdio.priority=50
|
||||
set input.cue.priority=50
|
||||
set input.ffmpeg.priority=30
|
||||
set input.flac.priority=50
|
||||
set input.mad.priority=55
|
||||
set input.modplug.priority=50
|
||||
set input.mpc.priority=50
|
||||
set input.vorbis.priority=50
|
||||
set input.wav.priority=50
|
||||
set input.wavpack.priority=50
|
||||
set lib_add_filter=
|
||||
set lib_sort=albumartist date album discnumber tracknumber title filename play_count
|
||||
set mixer.alsa.channel=
|
||||
set mixer.alsa.device=
|
||||
set mixer.oss.channel=PCM
|
||||
set mixer.oss.device=
|
||||
set mixer.pulse.restore_volume=1
|
||||
set mouse=false
|
||||
set mpris=true
|
||||
set output_plugin=pulse
|
||||
set passwd=
|
||||
set pause_on_output_change=false
|
||||
set pl_sort=
|
||||
set play_library=true
|
||||
set play_sorted=true
|
||||
set repeat=true
|
||||
set repeat_current=false
|
||||
set replaygain=disabled
|
||||
set replaygain_limit=true
|
||||
set replaygain_preamp=0.000000
|
||||
set resume=false
|
||||
set rewind_offset=5
|
||||
set scroll_offset=2
|
||||
set set_term_title=true
|
||||
set show_all_tracks=true
|
||||
set show_current_bitrate=false
|
||||
set show_hidden=false
|
||||
set show_playback_position=true
|
||||
set show_remaining_time=true
|
||||
set shuffle=off
|
||||
set skip_track_info=false
|
||||
set smart_artist_sort=true
|
||||
set softvol=false
|
||||
set softvol_state=0 0
|
||||
set start_view=tree
|
||||
set status_display_program=
|
||||
set stop_after_queue=false
|
||||
set time_show_leading_zero=true
|
||||
set tree_width_max=0
|
||||
set tree_width_percent=33
|
||||
set wrap_search=true
|
||||
bind browser backspace browser-up
|
||||
bind browser i toggle show_hidden
|
||||
bind browser space win-activate
|
||||
bind browser u win-update
|
||||
bind common ! push shell
|
||||
bind common + vol +10%
|
||||
bind common , seek -1m
|
||||
bind common - vol -10%
|
||||
bind common . seek +1m
|
||||
bind common / search-start
|
||||
bind common 1 view tree
|
||||
bind common 2 view sorted
|
||||
bind common 3 view playlist
|
||||
bind common 4 view queue
|
||||
bind common 5 view browser
|
||||
bind common 6 view filters
|
||||
bind common 7 view settings
|
||||
bind common = vol +10%
|
||||
bind common ? search-b-start
|
||||
bind common C toggle continue
|
||||
bind common D win-remove
|
||||
bind common E win-add-Q
|
||||
bind common F push filter
|
||||
bind common G win-bottom
|
||||
bind common I echo {}
|
||||
bind common L push live-filter
|
||||
bind common M toggle play_library
|
||||
bind common N search-prev
|
||||
bind common P win-mv-before
|
||||
bind common U win-update-cache
|
||||
bind common [ vol +1% +0
|
||||
bind common ] vol +0 +1%
|
||||
bind common ^B win-page-up
|
||||
bind common ^C echo Type :quit<enter> to exit cmus.
|
||||
bind common ^D win-half-page-down
|
||||
bind common ^E win-scroll-down
|
||||
bind common ^F win-page-down
|
||||
bind common ^L refresh
|
||||
bind common ^R toggle repeat_current
|
||||
bind common ^U win-half-page-up
|
||||
bind common ^Y win-scroll-up
|
||||
bind common a win-add-l
|
||||
bind common b player-next
|
||||
bind common c player-pause
|
||||
bind common delete win-remove
|
||||
bind common down win-down
|
||||
bind common e win-add-q
|
||||
bind common end win-bottom
|
||||
bind common enter win-activate
|
||||
bind common f toggle follow
|
||||
bind common g win-top
|
||||
bind common h seek -5
|
||||
bind common home win-top
|
||||
bind common i win-sel-cur
|
||||
bind common j win-down
|
||||
bind common k win-up
|
||||
bind common l seek +5
|
||||
bind common left seek -5
|
||||
bind common m toggle aaa_mode
|
||||
bind common mlb_click_bar player-pause
|
||||
bind common mlb_click_selected win-activate
|
||||
bind common mouse_scroll_down win-down
|
||||
bind common mouse_scroll_down_bar seek -5
|
||||
bind common mouse_scroll_down_title right-view
|
||||
bind common mouse_scroll_up win-up
|
||||
bind common mouse_scroll_up_bar seek +5
|
||||
bind common mouse_scroll_up_title left-view
|
||||
bind common n search-next
|
||||
bind common o toggle play_sorted
|
||||
bind common p win-mv-after
|
||||
bind common page_down win-page-down
|
||||
bind common page_up win-page-up
|
||||
bind common q quit -i
|
||||
bind common r toggle repeat
|
||||
bind common right seek +5
|
||||
bind common s toggle shuffle
|
||||
bind common space win-toggle
|
||||
bind common t toggle show_remaining_time
|
||||
bind common tab win-next
|
||||
bind common u update-cache
|
||||
bind common up win-up
|
||||
bind common v player-stop
|
||||
bind common x player-play
|
||||
bind common y win-add-p
|
||||
bind common z player-prev
|
||||
bind common { vol -1% -0
|
||||
bind common } vol -0 -1%
|
||||
fset missing-tag=!stream&(artist=""|album=""|title=""|tracknumber=-1|date=-1)
|
||||
fset mp3=filename="*.mp3"
|
||||
fset ogg=filename="*.ogg"
|
||||
fset ogg-or-mp3=ogg|mp3
|
||||
fset unheard=play_count=0
|
||||
factivate
|
50
.config/copyq/copyq-commands.ini
Normal file
|
@ -0,0 +1,50 @@
|
|||
[Commands]
|
||||
1\Command=copyq: plugins.itempinned.pin()
|
||||
1\Icon=\xf08d
|
||||
1\InMenu=true
|
||||
1\Input=!OUTPUT
|
||||
1\InternalId=copyq_pinned_pin
|
||||
1\Name=Pin
|
||||
1\Output=application/x-copyq-item-pinned
|
||||
2\Command=copyq: plugins.itempinned.unpin()
|
||||
2\Icon=\xf08d
|
||||
2\InMenu=true
|
||||
2\Input=application/x-copyq-item-pinned
|
||||
2\InternalId=copyq_pinned_unpin
|
||||
2\Name=Unpin
|
||||
3\Command=copyq: plugins.itemtags.tag(decodeURIComponent('Important'))
|
||||
3\Icon=\xf02b
|
||||
3\InMenu=true
|
||||
3\InternalId=copyq_tags_tag:Important
|
||||
3\MatchCommand=copyq: plugins.itemtags.hasTag(decodeURIComponent('Important')) && fail()
|
||||
3\Name=Tag as \x201cImportant\x201d
|
||||
4\Command=copyq: plugins.itemtags.untag(decodeURIComponent('Important'))
|
||||
4\Icon=\xf02b
|
||||
4\InMenu=true
|
||||
4\InternalId=copyq_tags_untag:Important
|
||||
4\MatchCommand=copyq: plugins.itemtags.hasTag(decodeURIComponent('Important')) || fail()
|
||||
4\Name=Remove tag \x201cImportant\x201d
|
||||
5\Command=copyq: plugins.itemtags.tag()
|
||||
5\Icon=\xf02b
|
||||
5\InMenu=true
|
||||
5\InternalId=copyq_tags_tag
|
||||
5\Name=Add a Tag
|
||||
6\Command=copyq: plugins.itemtags.untag()
|
||||
6\Icon=\xf02b
|
||||
6\InMenu=true
|
||||
6\Input=application/x-copyq-tags
|
||||
6\InternalId=copyq_tags_untag
|
||||
6\Name=Remove a Tag
|
||||
7\Command=copyq: plugins.itemtags.clearTags()
|
||||
7\Icon=\xf02b
|
||||
7\InMenu=true
|
||||
7\Input=application/x-copyq-tags
|
||||
7\InternalId=copyq_tags_clear
|
||||
7\Name=Clear all tags
|
||||
8\Command=copyq: menu()
|
||||
8\GlobalShortcut=meta+v
|
||||
8\Icon=\xf01c
|
||||
8\InternalId=copyq_global_menu
|
||||
8\IsGlobalShortcut=true
|
||||
8\Name=Show the tray menu
|
||||
size=8
|
2
.config/copyq/copyq-filter.ini
Normal file
|
@ -0,0 +1,2 @@
|
|||
[General]
|
||||
filter_history=@Invalid()
|
220
.config/copyq/copyq.conf
Normal file
|
@ -0,0 +1,220 @@
|
|||
[General]
|
||||
plugin_priority=itemimage, itemencrypted, itemfakevim, itemnotes, itempinned, itemsync, itemtags, itemtext
|
||||
|
||||
[Options]
|
||||
activate_closes=true
|
||||
activate_focuses=true
|
||||
activate_item_with_single_click=false
|
||||
activate_pastes=true
|
||||
always_on_top=true
|
||||
autocompletion=true
|
||||
autostart=false
|
||||
change_clipboard_owner_delay_ms=150
|
||||
check_clipboard=true
|
||||
check_selection=false
|
||||
clipboard_notification_lines=0
|
||||
clipboard_tab=&clipboard
|
||||
close_on_unfocus=true
|
||||
close_on_unfocus_delay_ms=500
|
||||
command_history_size=100
|
||||
confirm_exit=true
|
||||
copy_clipboard=false
|
||||
copy_selection=false
|
||||
disable_tray=false
|
||||
edit_ctrl_return=true
|
||||
editor=gedit --standalone -- %1
|
||||
expire_tab=0
|
||||
filter_case_insensitive=true
|
||||
filter_regular_expression=false
|
||||
hide_main_window=false
|
||||
hide_main_window_in_task_bar=false
|
||||
hide_tabs=false
|
||||
hide_toolbar=false
|
||||
hide_toolbar_labels=true
|
||||
item_popup_interval=0
|
||||
language=en
|
||||
max_process_manager_rows=1000
|
||||
maxitems=200
|
||||
move=true
|
||||
native_menu_bar=true
|
||||
native_notifications=true
|
||||
native_tray_menu=false
|
||||
notification_horizontal_offset=10
|
||||
notification_maximum_height=100
|
||||
notification_maximum_width=300
|
||||
notification_position=3
|
||||
notification_vertical_offset=10
|
||||
number_search=false
|
||||
open_windows_on_current_screen=true
|
||||
restore_geometry=true
|
||||
row_index_from_one=true
|
||||
run_selection=true
|
||||
save_delay_ms_on_item_added=300000
|
||||
save_delay_ms_on_item_edited=1000
|
||||
save_delay_ms_on_item_modified=300000
|
||||
save_delay_ms_on_item_moved=1800000
|
||||
save_delay_ms_on_item_removed=600000
|
||||
save_filter_history=false
|
||||
save_on_app_deactivated=true
|
||||
script_paste_delay_ms=250
|
||||
show_advanced_command_settings=false
|
||||
show_simple_items=false
|
||||
show_tab_item_count=false
|
||||
style=
|
||||
tab_tree=false
|
||||
tabs=&clipboard
|
||||
text_tab_width=8
|
||||
text_wrap=true
|
||||
transparency=0
|
||||
transparency_focused=0
|
||||
tray_commands=true
|
||||
tray_images=true
|
||||
tray_item_paste=true
|
||||
tray_items=5
|
||||
tray_menu_open_on_left_click=false
|
||||
tray_tab=
|
||||
tray_tab_is_current=true
|
||||
vi=true
|
||||
window_key_press_time_ms=50
|
||||
window_paste_with_ctrl_v_regex=
|
||||
window_wait_after_raised_ms=50
|
||||
window_wait_before_raise_ms=20
|
||||
window_wait_for_modifier_released_ms=2000
|
||||
window_wait_raised_ms=150
|
||||
|
||||
[Plugins]
|
||||
itemencrypted\enabled=true
|
||||
itemfakevim\enabled=true
|
||||
itemimage\enabled=true
|
||||
itemimage\image_editor=
|
||||
itemimage\max_image_height=240
|
||||
itemimage\max_image_width=320
|
||||
itemimage\svg_editor=
|
||||
itemnotes\enabled=true
|
||||
itempinned\enabled=true
|
||||
itemsync\enabled=true
|
||||
itemtags\enabled=true
|
||||
itemtext\default_style_sheet=
|
||||
itemtext\enabled=true
|
||||
itemtext\max_height=0
|
||||
itemtext\max_lines=1000
|
||||
itemtext\use_rich_text=true
|
||||
|
||||
[Shortcuts]
|
||||
about=shift+f1
|
||||
change_tab_icon=ctrl+shift+t
|
||||
commands=f6
|
||||
copy_selected_items=ctrl+c
|
||||
delete_item=del
|
||||
edit=f2
|
||||
edit_notes=shift+f2
|
||||
editor=ctrl+e
|
||||
editor_background=
|
||||
editor_bold=ctrl+b
|
||||
editor_cancel=esc
|
||||
editor_erase_style=
|
||||
editor_font=
|
||||
editor_foreground=
|
||||
editor_italic=ctrl+i
|
||||
editor_redo=ctrl+shift+z
|
||||
editor_save=f2
|
||||
editor_search=ctrl+f
|
||||
editor_strikethrough=
|
||||
editor_underline=ctrl+u
|
||||
editor_undo=ctrl+z
|
||||
exit=ctrl+q
|
||||
export=ctrl+s
|
||||
find_items=f3
|
||||
help=f1
|
||||
import=ctrl+i
|
||||
item-menu=shift+f10
|
||||
move_down=ctrl+down
|
||||
move_to_bottom=ctrl+end
|
||||
move_to_clipboard=
|
||||
move_to_top=ctrl+home
|
||||
move_up=ctrl+up
|
||||
new=ctrl+n
|
||||
new_tab=ctrl+t
|
||||
next_tab=right
|
||||
paste_selected_items=ctrl+v
|
||||
preferences=ctrl+p
|
||||
previous_tab=left
|
||||
process_manager=ctrl+shift+z
|
||||
remove_tab=ctrl+w
|
||||
rename_tab=ctrl+f2
|
||||
reverse_selected_items=ctrl+shift+r
|
||||
show-log=f12
|
||||
show_clipboard_content=ctrl+shift+c
|
||||
show_item_content=f4
|
||||
show_item_preview=f7
|
||||
sort_selected_items=ctrl+shift+s
|
||||
system-run=f5
|
||||
toggle_clipboard_storing=ctrl+shift+x
|
||||
|
||||
[Tabs]
|
||||
1\icon=
|
||||
1\max_item_count=0
|
||||
1\name=&clipboard
|
||||
1\store_items=true
|
||||
size=1
|
||||
|
||||
[Theme]
|
||||
alt_bg=#21222c
|
||||
alt_item_css=
|
||||
bg=#282a36
|
||||
css=
|
||||
css_template_items=items
|
||||
css_template_main_window=main_window
|
||||
css_template_menu=menu
|
||||
css_template_notification=notification
|
||||
cur_item_css="\n ;border: 0.1em solid ${sel_bg}"
|
||||
edit_bg=#282a36
|
||||
edit_fg=#a4ffff
|
||||
edit_font="Monospace,9,-1,5,50,0,0,0,0,0"
|
||||
fg=#f8f8f2
|
||||
find_bg="rgba(40,42,54,100)"
|
||||
find_fg=#ffffa5
|
||||
find_font="Segoe UI,9,-1,5,50,0,0,0,0,0,Regular"
|
||||
font="Segoe UI,9,-1,5,50,0,0,0,0,0,Regular"
|
||||
font_antialiasing=true
|
||||
hover_item_css=
|
||||
icon_size=20
|
||||
item_css=
|
||||
item_spacing=
|
||||
menu_bar_css="\n ;background: ${bg}\n ;color: ${fg}"
|
||||
menu_bar_disabled_css="\n ;color: ${bg - #666}"
|
||||
menu_bar_selected_css="\n ;background: ${sel_bg}\n ;color: ${sel_fg}"
|
||||
menu_css="\n ;border: 1px solid ${sel_bg}\n ;background: ${bg}\n ;color: ${fg}"
|
||||
notes_bg=#44475a
|
||||
notes_css=
|
||||
notes_fg=#d6acff
|
||||
notes_font="Serif,10,-1,5,50,0,0,0,0,0"
|
||||
notification_bg=#44475a
|
||||
notification_fg=#f8f8f2
|
||||
notification_font=
|
||||
num_fg=#a4ffff
|
||||
num_font="Monospace,7,-1,5,25,0,0,0,0,0"
|
||||
num_margin=2
|
||||
search_bar="\n ;background: ${edit_bg}\n ;color: ${edit_fg}\n ;border: 1px solid ${alt_bg}\n ;margin: 2px"
|
||||
search_bar_focused="\n ;border: 1px solid ${sel_bg}"
|
||||
sel_bg=#44475a
|
||||
sel_fg=#f8f8f2
|
||||
sel_item_css=
|
||||
show_number=true
|
||||
show_scrollbars=true
|
||||
style_main_window=true
|
||||
tab_bar_css="\n ;background: ${bg - #222}"
|
||||
tab_bar_item_counter="\n ;color: ${fg - #044 + #400}\n ;font-size: 6pt"
|
||||
tab_bar_scroll_buttons_css="\n ;background: ${bg - #222}\n ;color: ${fg}\n ;border: 0"
|
||||
tab_bar_sel_item_counter="\n ;color: ${sel_bg - #044 + #400}"
|
||||
tab_bar_tab_selected_css="\n ;padding: 0.5em\n ;background: ${bg}\n ;border: 0.05em solid ${bg}\n ;color: ${fg}"
|
||||
tab_bar_tab_unselected_css="\n ;border: 0.05em solid ${bg}\n ;padding: 0.5em\n ;background: ${bg - #222}\n ;color: ${fg - #333}"
|
||||
tab_tree_css="\n ;color: ${fg}\n ;background-color: ${bg}"
|
||||
tab_tree_item_counter="\n ;color: ${fg - #044 + #400}\n ;font-size: 6pt"
|
||||
tab_tree_sel_item_counter="\n ;color: ${sel_fg - #044 + #400}"
|
||||
tab_tree_sel_item_css="\n ;color: ${sel_fg}\n ;background-color: ${sel_bg}\n ;border-radius: 2px"
|
||||
tool_bar_css="\n ;color: ${fg}\n ;background-color: ${bg}\n ;border: 0"
|
||||
tool_button_css="\n ;color: ${fg}\n ;background: ${bg}\n ;border: 0\n ;border-radius: 2px"
|
||||
tool_button_pressed_css="\n ;background: ${sel_bg}"
|
||||
tool_button_selected_css="\n ;background: ${sel_bg - #222}\n ;color: ${sel_fg}\n ;border: 1px solid ${sel_bg}"
|
||||
use_system_icons=true
|
6
.config/copyq/copyq_geometry.ini
Normal file
|
@ -0,0 +1,6 @@
|
|||
[Options]
|
||||
ConfigurationManager_geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x2k\0\0\0\xe4\0\0\x5\xbd\0\0\x3H\0\0\x2l\0\0\0\xe5\0\0\x5\xbc\0\0\x3G\0\0\0\0\0\0\0\0\a\x80\0\0\x2l\0\0\0\xe5\0\0\x5\xbc\0\0\x3G)
|
||||
ConfigurationManager_geometry_1920x1080=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x2k\0\0\0\xe4\0\0\x5\xbd\0\0\x3H\0\0\x2l\0\0\0\xe5\0\0\x5\xbc\0\0\x3G\0\0\0\0\0\0\0\0\a\x80\0\0\x2l\0\0\0\xe5\0\0\x5\xbc\0\0\x3G)
|
||||
MainWindow_geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x16\0\0\a\x7f\0\0\x4\x37\0\0\0\0\0\0\0\x16\0\0\a\x7f\0\0\x4\x37\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\x16\0\0\a\x7f\0\0\x4\x37)
|
||||
MainWindow_geometry_1920x1080=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x16\0\0\a\x7f\0\0\x4\x37\0\0\0\0\0\0\0\x16\0\0\a\x7f\0\0\x4\x37\0\0\0\0\0\0\0\0\a\x80\0\0\0\0\0\0\0\x16\0\0\a\x7f\0\0\x4\x37)
|
||||
MainWindow_state=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x1\0\0\0\x3\0\0\0\0\0\0\0\0\xfc\x1\0\0\0\x1\xfb\0\0\0*\0\x64\0o\0\x63\0k\0W\0i\0\x64\0g\0\x65\0t\0I\0t\0\x65\0m\0P\0r\0\x65\0v\0i\0\x65\0w\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x43\0\xff\xff\xff\0\0\x3\xa5\0\0\x3\xf6\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x3\0\0\0\0\0\0\0\x1\0\0\0\x1c\0t\0o\0o\0l\0\x42\0\x61\0r\0T\0\x61\0\x62\0T\0r\0\x65\0\x65\x2\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x1\0\0\0\x1\0\0\0\xe\0t\0o\0o\0l\0\x42\0\x61\0r\x3\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0\0\0\0\x2\0\0\0\x1\0\0\0\x1a\0t\0o\0o\0l\0\x42\0\x61\0r\0T\0\x61\0\x62\0\x42\0\x61\0r\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)
|
3
.config/copyq/copyq_tabs.ini
Normal file
|
@ -0,0 +1,3 @@
|
|||
[TabWidget]
|
||||
collapsed_tabs=@Invalid()
|
||||
tab_item_counters=@Variant(\0\0\0\b\0\0\0\x1\0\0\0\x14\0&\0\x63\0l\0i\0p\0\x62\0o\0\x61\0r\0\x64\0\0\0\x2\0\0\0\xc8)
|
59
.config/copyq/themes/dracula.ini
Normal file
|
@ -0,0 +1,59 @@
|
|||
[General]
|
||||
alt_bg=#21222c
|
||||
alt_item_css=
|
||||
bg=#282a36
|
||||
css=
|
||||
css_template_items=items
|
||||
css_template_main_window=main_window
|
||||
css_template_notification=notification
|
||||
css_template_tooltip=tooltip
|
||||
cur_item_css="\n ;border: 0.1em solid ${sel_bg}"
|
||||
edit_bg=#282a36
|
||||
edit_fg=#a4ffff
|
||||
edit_font="Monospace,9,-1,5,50,0,0,0,0,0"
|
||||
fg=#f8f8f2
|
||||
find_bg="rgba(40,42,54,100)"
|
||||
find_fg=#ffffa5
|
||||
find_font="Segoe UI,9,-1,5,50,0,0,0,0,0,Regular"
|
||||
font="Segoe UI,9,-1,5,50,0,0,0,0,0,Regular"
|
||||
font_antialiasing=true
|
||||
hover_item_css=
|
||||
icon_size=20
|
||||
item_css=
|
||||
item_spacing=
|
||||
menu_bar_css="\n ;background: ${bg}\n ;color: ${fg}"
|
||||
menu_bar_disabled_css="\n ;color: ${bg - #666}"
|
||||
menu_bar_selected_css="\n ;background: ${sel_bg}\n ;color: ${sel_fg}"
|
||||
menu_css="\n ;border: 1px solid ${sel_bg}\n ;background: ${bg}\n ;color: ${fg}"
|
||||
notes_bg=#44475a
|
||||
notes_css=
|
||||
notes_fg=#d6acff
|
||||
notes_font="Serif,10,-1,5,50,0,0,0,0,0"
|
||||
notification_bg=#44475a
|
||||
notification_fg=#f8f8f2
|
||||
notification_font=
|
||||
num_fg=#a4ffff
|
||||
num_font="Monospace,7,-1,5,25,0,0,0,0,0"
|
||||
search_bar="\n ;background: ${edit_bg}\n ;color: ${edit_fg}\n ;border: 1px solid ${alt_bg}\n ;margin: 2px"
|
||||
search_bar_focused="\n ;border: 1px solid ${sel_bg}"
|
||||
sel_bg=#44475a
|
||||
sel_fg=#f8f8f2
|
||||
sel_item_css=
|
||||
show_number=true
|
||||
show_scrollbars=true
|
||||
style_main_window=true
|
||||
tab_bar_css="\n ;background: ${bg - #222}"
|
||||
tab_bar_item_counter="\n ;color: ${fg - #044 + #400}\n ;font-size: 6pt"
|
||||
tab_bar_scroll_buttons_css="\n ;background: ${bg - #222}\n ;color: ${fg}\n ;border: 0"
|
||||
tab_bar_sel_item_counter="\n ;color: ${sel_bg - #044 + #400}"
|
||||
tab_bar_tab_selected_css="\n ;padding: 0.5em\n ;background: ${bg}\n ;border: 0.05em solid ${bg}\n ;color: ${fg}"
|
||||
tab_bar_tab_unselected_css="\n ;border: 0.05em solid ${bg}\n ;padding: 0.5em\n ;background: ${bg - #222}\n ;color: ${fg - #333}"
|
||||
tab_tree_css="\n ;color: ${fg}\n ;background-color: ${bg}"
|
||||
tab_tree_item_counter="\n ;color: ${fg - #044 + #400}\n ;font-size: 6pt"
|
||||
tab_tree_sel_item_counter="\n ;color: ${sel_fg - #044 + #400}"
|
||||
tab_tree_sel_item_css="\n ;color: ${sel_fg}\n ;background-color: ${sel_bg}\n ;border-radius: 2px"
|
||||
tool_bar_css="\n ;color: ${fg}\n ;background-color: ${bg}\n ;border: 0"
|
||||
tool_button_css="\n ;color: ${fg}\n ;background: ${bg}\n ;border: 0\n ;border-radius: 2px"
|
||||
tool_button_pressed_css="\n ;background: ${sel_bg}"
|
||||
tool_button_selected_css="\n ;background: ${sel_bg - #222}\n ;color: ${sel_fg}\n ;border: 1px solid ${sel_bg}"
|
||||
use_system_icons=true
|
96
.config/doom/config.el
Normal file
|
@ -0,0 +1,96 @@
|
|||
;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
|
||||
|
||||
;; Place your private configuration here! Remember, you do not need to run 'doom
|
||||
;; sync' after modifying this file!
|
||||
|
||||
|
||||
;; Some functionality uses this to identify you, e.g. GPG configuration, email
|
||||
;; clients, file templates and snippets. It is optional.
|
||||
(setq user-full-name "Anas Elgarhy"
|
||||
user-mail-address "anas.elgarhy.dev@gmail.com")
|
||||
|
||||
|
||||
|
||||
;; There are two ways to load a theme. Both assume the theme is installed and
|
||||
;; available. You can either set `doom-theme' or manually load a theme with the
|
||||
;; `Load-theme' function. This is the default:
|
||||
;doom-theme 'doom-xcode
|
||||
;doom-theme 'doom-one
|
||||
;doom-theme 'consult-theme
|
||||
;doom-theme 'doom-henna
|
||||
(setq doom-theme 'doom-dracula)
|
||||
|
||||
|
||||
;; doom exposes five (optional) variables for controlling fonts in doom:
|
||||
;;
|
||||
;; - `doom-font' -- the primary font to use
|
||||
;; - `doom-variable-pitch-font' -- a non-monospace font (where applicable)
|
||||
;; - `doom-big-font' -- used for `doom-big-font-mode'; use this for
|
||||
;; presentations or streaming.
|
||||
;; - `doom-unicode-font' -- for unicode glyphs
|
||||
;; - `doom-serif-font' -- for the `fixed-pitch-serif' face
|
||||
;;
|
||||
;; see 'c-h v doom-font' for documentation and more examples of what they
|
||||
;; accept. for example:
|
||||
;;
|
||||
;; (setq doom-font (font-spec :family "FiraCode Nerd Font" :size 12 :weight 'semi-light))
|
||||
|
||||
;; Defult directory
|
||||
(setq default-directory "~")
|
||||
|
||||
;; Maps
|
||||
(map! :ne "M-/" #'comment-or-uncomment-region)
|
||||
;; (map! :ne "SPC / r" #'deadgrep)
|
||||
;; (map! :ne "SPC n b" #'org-brain-visualize)
|
||||
|
||||
;; This determines the style of line numbers in effect. If set to `nil', line
|
||||
;; numbers are disabled. For relative line numbers, set this to `relative'.
|
||||
(setq display-line-numbers-type 'relative)
|
||||
|
||||
;; If you use `org' and don't want your org files in the default location below,
|
||||
;; change `org-directory'. It must be set before org loads!
|
||||
(setq org-directory "~/org/")
|
||||
|
||||
|
||||
;; Whenever you reconfigure a package, make sure to wrap your config in an
|
||||
;; `after!' block, otherwise Doom's defaults may override your settings. E.g.
|
||||
;;
|
||||
;; (after! PACKAGE
|
||||
;; (setq x y))
|
||||
;;
|
||||
;; The exceptions to this rule:
|
||||
;;
|
||||
;; - Setting file/directory variables (like `org-directory')
|
||||
;; - Setting variables which explicitly tell you to set them before their
|
||||
;; package is loaded (see 'C-h v VARIABLE' to look up their documentation).
|
||||
;; - Setting doom variables (which start with 'doom-' or '+').
|
||||
;;
|
||||
;; Here are some additional functions/macros that will help you configure Doom.
|
||||
;;
|
||||
;; - `load!' for loading external *.el files relative to this one
|
||||
;; - `use-package!' for configuring packages
|
||||
;; - `after!' for running code after a package has loaded
|
||||
;; - `add-load-path!' for adding directories to the `load-path', relative to
|
||||
;; this file. Emacs searches the `load-path' when you load packages with
|
||||
;; `require' or `use-package'.
|
||||
;; - `map!' for binding new keys
|
||||
;;
|
||||
;; To get information about any of these functions/macros, move the cursor over
|
||||
;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k').
|
||||
;; This will open documentation for it, including demos of how they are used.
|
||||
;; Alternatively, use `C-h o' to look up a symbol (functions, variables, faces,
|
||||
;; etc).
|
||||
;;
|
||||
;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how
|
||||
;; they are implemented.
|
||||
|
||||
;; accept completion from copilot and fallback to company
|
||||
(use-package! copilot
|
||||
:hook (prog-mode . copilot-mode)
|
||||
:bind (("C-TAB" . 'copilot-accept-completion-by-word)
|
||||
("C-<tab>" . 'copilot-accept-completion-by-word)
|
||||
:map copilot-completion-map
|
||||
("<tab>" . 'copilot-accept-completion)
|
||||
("TAB" . 'copilot-accept-completion)))
|
||||
|
||||
(global-wakatime-mode)
|
198
.config/doom/init.el
Normal file
|
@ -0,0 +1,198 @@
|
|||
;;; init.el -*- lexical-binding: t; -*-
|
||||
|
||||
;; This file controls what Doom modules are enabled and what order they load
|
||||
;; in. Remember to run 'doom sync' after modifying it!
|
||||
|
||||
;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's
|
||||
;; documentation. There you'll find a link to Doom's Module Index where all
|
||||
;; of our modules are listed, including what flags they support.
|
||||
|
||||
;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or
|
||||
;; 'C-c c k' for non-vim users) to view its documentation. This works on
|
||||
;; flags as well (those symbols that start with a plus).
|
||||
;;
|
||||
;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its
|
||||
;; directory (for easy access to its source code).
|
||||
|
||||
(doom! :input
|
||||
;;bidi ; (tfel ot) thgir etirw uoy gnipleh
|
||||
;;chinese
|
||||
japanese
|
||||
;;layout ; auie,ctsrnm is the superior home row
|
||||
|
||||
:completion
|
||||
(company ; the ultimate code completion backend
|
||||
+tng ; a snazzy tab completion backend for Emacs
|
||||
+auto ; as-you-type code completion
|
||||
+childframe ; a nicer company UI (Emacs 26+ only)
|
||||
)
|
||||
helm ; the *other* search engine for love and life
|
||||
;;ido ; the other *other* search engine...
|
||||
(ivy +fuzzy) ; a search engine for love and life
|
||||
vertico ; the search engine of the future
|
||||
|
||||
:ui
|
||||
deft ; notational velocity for Emacs
|
||||
doom ; what makes DOOM look the way it does
|
||||
doom-dashboard ; a nifty splash screen for Emacs
|
||||
doom-quit ; DOOM quit-message prompts when you quit Emacs
|
||||
(emoji +unicode) ; 🙂
|
||||
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
|
||||
hydra
|
||||
indent-guides ; highlighted indent columns
|
||||
ligatures ; ligatures and symbols to make your code pretty again
|
||||
minimap ; show a map of the code on the side
|
||||
modeline ; snazzy, Atom-inspired modeline, plus API
|
||||
nav-flash ; blink cursor line after big motions
|
||||
;;neotree ; a project drawer, like NERDTree for vim
|
||||
ophints ; highlight the region an operation acts on
|
||||
(popup +defaults) ; tame sudden yet inevitable temporary windows
|
||||
tabs ; a tab bar for Emacs
|
||||
treemacs ; a project drawer, like neotree but cooler
|
||||
unicode ; extended unicode support for various languages
|
||||
(vc-gutter +pretty) ; vcs diff in the fringe
|
||||
vi-tilde-fringe ; fringe tildes to mark beyond EOB
|
||||
window-select ; visually switch windows
|
||||
workspaces ; tab emulation, persistence & separate workspaces
|
||||
;;zen ; distraction-free coding or writing
|
||||
|
||||
:editor
|
||||
(evil +everywhere); come to the dark side, we have cookies
|
||||
file-templates ; auto-snippets for empty files
|
||||
fold ; (nigh) universal code folding
|
||||
(format +onsave) ; automated prettiness
|
||||
;;god ; run Emacs commands without modifier keys
|
||||
;;lispy ; vim for lisp, for people who don't like vim
|
||||
multiple-cursors ; editing in many places at once
|
||||
objed ; text object editing for the innocent
|
||||
;;parinfer ; turn lisp into python, sort of
|
||||
rotate-text ; cycle region at point between text candidates
|
||||
snippets ; my elves. They type so I don't have to
|
||||
word-wrap ; soft wrapping with language-aware indent
|
||||
|
||||
:emacs
|
||||
(dired +icons) ; making dired pretty [functional]
|
||||
electric ; smarter, keyword-based electric-indent
|
||||
ibuffer ; interactive buffer management
|
||||
undo ; persistent, smarter undo for your inevitable mistakes
|
||||
vc ; version-control and Emacs, sitting in a tree
|
||||
|
||||
:term
|
||||
eshell ; the elisp shell that works everywhere
|
||||
;;shell ; simple shell REPL for Emacs
|
||||
;;term ; basic terminal emulator for Emacs
|
||||
vterm ; the best terminal emulation in Emacs
|
||||
|
||||
:checkers
|
||||
syntax ; tasing you for every semicolon you forget
|
||||
(spell +flyspell) ; tasing you for misspelling mispelling
|
||||
grammar ; tasing grammar mistake every you make
|
||||
|
||||
:tools
|
||||
;;ansible
|
||||
biblio ; Writes a PhD for you (citation needed)
|
||||
debugger ; FIXME stepping through code, to help you add bugs
|
||||
direnv
|
||||
docker
|
||||
editorconfig ; let someone else argue about tabs vs spaces
|
||||
ein ; tame Jupyter notebooks with emacs
|
||||
(eval +overlay) ; run code, run (also, repls)
|
||||
gist ; interacting with github gists
|
||||
lookup ; navigate your code and its documentation
|
||||
lsp ; M-x vscode
|
||||
magit ; a git porcelain for Emacs
|
||||
make ; run make tasks from Emacs
|
||||
;;pass ; password manager for nerds
|
||||
pdf ; pdf enhancements
|
||||
;;prodigy ; FIXME managing external services & code builders
|
||||
;;rgb ; creating color strings
|
||||
taskrunner ; taskrunner for all your projects
|
||||
;;terraform ; infrastructure as code
|
||||
;;tmux ; an API for interacting with tmux
|
||||
tree-sitter ; syntax and parsing, sitting in a tree...
|
||||
;;upload ; map local to remote projects via ssh/ftp
|
||||
|
||||
:os
|
||||
(:if IS-MAC macos) ; improve compatibility with macOS
|
||||
;;tty ; improve the terminal Emacs experience
|
||||
|
||||
:lang
|
||||
;;agda ; types of types of types of types...
|
||||
;;beancount ; mind the GAAP
|
||||
;;(cc +lsp) ; C > C++ == 1
|
||||
;;clojure ; java with a lisp
|
||||
;;common-lisp ; if you've seen one lisp, you've seen them all
|
||||
;;coq ; proofs-as-programs
|
||||
;;crystal ; ruby at the speed of c
|
||||
;;csharp ; unity, .NET, and mono shenanigans
|
||||
;;data ; config/data formats
|
||||
;;(dart +flutter) ; paint ui and not much else
|
||||
;;dhall
|
||||
;;elixir ; erlang done right
|
||||
;;elm ; care for a cup of TEA?
|
||||
emacs-lisp ; drown in parentheses
|
||||
;;erlang ; an elegant language for a more civilized age
|
||||
;;ess ; emacs speaks statistics
|
||||
;;factor
|
||||
;;faust ; dsp, but you get to keep your soul
|
||||
;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER)
|
||||
;;fsharp ; ML stands for Microsoft's Language
|
||||
;;fstar ; (dependent) types and (monadic) effects and Z3
|
||||
;;gdscript ; the language you waited for
|
||||
(go +lsp) ; the hipster dialect
|
||||
(graphql +lsp) ; Give queries a REST
|
||||
;;(haskell +lsp) ; a language that's lazier than I am
|
||||
;;hy ; readability of scheme w/ speed of python
|
||||
;;idris ; a language you can depend on
|
||||
;;json ; At least it ain't XML
|
||||
(java +lsp) ; the poster child for carpal tunnel syndrome
|
||||
javascript ; all(hope(abandon(ye(who(enter(here))))))
|
||||
;;julia ; a better, faster MATLAB
|
||||
;;kotlin ; a better, slicker Java(Script)
|
||||
latex ; writing papers in Emacs has never been so fun
|
||||
;;lean ; for folks with too much to prove
|
||||
;;ledger ; be audit you can be
|
||||
lua ; one-based indices? one-based indices
|
||||
markdown ; writing docs for people to ignore
|
||||
nim ; python + lisp at the speed of c
|
||||
;;nix ; I hereby declare "nix geht mehr!"
|
||||
ocaml ; an objective camel
|
||||
org ; organize your plain life in plain text
|
||||
;;php ; perl's insecure younger brother
|
||||
plantuml ; diagrams for confusing people more
|
||||
;;purescript ; javascript, but functional
|
||||
python ; beautiful is better than ugly
|
||||
qt ; the 'cutest' gui framework ever
|
||||
;;racket ; a DSL for DSLs
|
||||
;;raku ; the artist formerly known as perl6
|
||||
;;rest ; Emacs as a REST client
|
||||
;;rst ; ReST in peace
|
||||
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
|
||||
(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
|
||||
;;scala ; java, but good
|
||||
;;(scheme +guile) ; a fully conniving family of lisps
|
||||
sh ; she sells {ba,z,fi}sh shells on the C xor
|
||||
;;sml
|
||||
;;solidity ; do you need a blockchain? No.
|
||||
swift ; who asked for emoji variables?
|
||||
;;terra ; Earth and Moon in alignment for performance.
|
||||
;;web ; the tubes
|
||||
yaml ; JSON, but readable
|
||||
zig ; C, but simpler
|
||||
|
||||
:email
|
||||
(mu4e +org +gmail)
|
||||
;;notmuch
|
||||
;;(wanderlust +gmail)
|
||||
|
||||
:app
|
||||
calendar
|
||||
emms
|
||||
everywhere ; *leave* Emacs!? You must be joking
|
||||
;;irc ; how neckbeards socialize
|
||||
(rss +org) ; emacs as an RSS reader
|
||||
;;twitter ; twitter client https://twitter.com/vnought
|
||||
|
||||
:config
|
||||
;;literate
|
||||
(default +bindings +smartparens))
|
58
.config/doom/packages.el
Normal file
|
@ -0,0 +1,58 @@
|
|||
;; -*- no-byte-compile: t; -*-
|
||||
;;; $DOOMDIR/packages.el
|
||||
|
||||
;; To install a package with Doom you must declare them here and run 'doom sync'
|
||||
;; on the command line, then restart Emacs for the changes to take effect -- or
|
||||
;; use 'M-x doom/reload'.
|
||||
|
||||
|
||||
;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:
|
||||
;(package! some-package)
|
||||
|
||||
;; To install a package directly from a remote git repo, you must specify a
|
||||
;; `:recipe'. You'll find documentation on what `:recipe' accepts here:
|
||||
;; https://github.com/radian-software/straight.el#the-recipe-format
|
||||
;(package! another-package
|
||||
; :recipe (:host github :repo "username/repo"))
|
||||
|
||||
;; If the package you are trying to install does not contain a PACKAGENAME.el
|
||||
;; file, or is located in a subdirectory of the repo, you'll need to specify
|
||||
;; `:files' in the `:recipe':
|
||||
;(package! this-package
|
||||
; :recipe (:host github :repo "username/repo"
|
||||
; :files ("some-file.el" "src/lisp/*.el")))
|
||||
|
||||
;; If you'd like to disable a package included with Doom, you can do so here
|
||||
;; with the `:disable' property:
|
||||
;(package! builtin-package :disable t)
|
||||
|
||||
;; You can override the recipe of a built in package without having to specify
|
||||
;; all the properties for `:recipe'. These will inherit the rest of its recipe
|
||||
;; from Doom or MELPA/ELPA/Emacsmirror:
|
||||
;(package! builtin-package :recipe (:nonrecursive t))
|
||||
;(package! builtin-package-2 :recipe (:repo "myfork/package"))
|
||||
|
||||
;; Specify a `:branch' to install a package from a particular branch or tag.
|
||||
;; This is required for some packages whose default branch isn't 'master' (which
|
||||
;; our package manager can't deal with; see radian-software/straight.el#279)
|
||||
;(package! builtin-package :recipe (:branch "develop"))
|
||||
|
||||
;; Use `:pin' to specify a particular commit to install.
|
||||
;(package! builtin-package :pin "1a2b3c4d5e")
|
||||
|
||||
|
||||
;; Doom's packages are pinned to a specific commit and updated from release to
|
||||
;; release. The `unpin!' macro allows you to unpin single packages...
|
||||
;(unpin! pinned-package)
|
||||
;; ...or multiple packages
|
||||
;(unpin! pinned-package another-pinned-package)
|
||||
;; ...Or *all* packages (NOT RECOMMENDED; will likely break things)
|
||||
;(unpin! t)
|
||||
|
||||
; GitHub Copilot
|
||||
(package! copilot
|
||||
:recipe (:host github :repo "zerolfx/copilot.el" :files ("*.el" "dist")))
|
||||
|
||||
; Wakatime
|
||||
(package! wakatime-mode
|
||||
:recipe (:host github :repo "wakatime/wakatime-mode" :files ("*.el")))
|
|
@ -17,7 +17,7 @@
|
|||
#
|
||||
# If this option is set to mouse or keyboard, the monitor option
|
||||
# will be ignored.
|
||||
follow = none
|
||||
follow = mouse
|
||||
|
||||
### Geometry ###
|
||||
|
||||
|
@ -33,7 +33,7 @@
|
|||
origin = top-right
|
||||
|
||||
# Offset from the origin
|
||||
offset = 10x40
|
||||
offset = 10x50
|
||||
|
||||
# Scale factor. It is auto-detected if value is 0.
|
||||
scale = 0
|
||||
|
@ -68,35 +68,28 @@
|
|||
# The transparency of the window. Range: [0; 100].
|
||||
# This option will only work if a compositing window manager is
|
||||
# present (e.g. xcompmgr, compiz, etc.). (X11 only)
|
||||
transparency = 20
|
||||
transparency = 15
|
||||
|
||||
# Draw a line of "separator_height" pixel height between two
|
||||
# notifications.
|
||||
# Set to 0 to disable.
|
||||
# If gap_size is greater than 0, this setting will be ignored.
|
||||
separator_height = 2
|
||||
separator_height = 1
|
||||
|
||||
# Padding between text and separator.
|
||||
padding = 10
|
||||
padding = 8
|
||||
|
||||
# Horizontal padding.
|
||||
horizontal_padding = 10
|
||||
|
||||
# Padding between text and icon.
|
||||
text_icon_padding = 5
|
||||
text_icon_padding = 0
|
||||
|
||||
# Defines width in pixels of frame around the notification window.
|
||||
# Set to 0 to disable.
|
||||
frame_width = 1
|
||||
frame_width = 0
|
||||
|
||||
# Defines color of the frame around the notification window.
|
||||
frame_color = "#d22e3f"
|
||||
|
||||
# Size of gap to display between notifications - requires a compositor.
|
||||
# If value is greater than 0, separator_height will be ignored and a border
|
||||
# of size frame_width will be drawn around each notification instead.
|
||||
# Click events on gaps do not currently propagate to applications below.
|
||||
gap_size = 2
|
||||
frame_color = "#282a36"
|
||||
|
||||
# Define a color for the separator.
|
||||
# possible values are:
|
||||
|
@ -104,7 +97,7 @@
|
|||
# * foreground: use the same color as the foreground;
|
||||
# * frame: use the same color as the frame;
|
||||
# * anything else will be interpreted as a X color.
|
||||
separator_color = auto
|
||||
separator_color = frame
|
||||
|
||||
# Sort messages by urgency.
|
||||
sort = yes
|
||||
|
@ -114,15 +107,15 @@
|
|||
# Set to 0 to disable.
|
||||
# A client can set the 'transient' hint to bypass this. See the rules
|
||||
# section for how to disable this if necessary
|
||||
# idle_threshold = 120
|
||||
idle_threshold = 120
|
||||
|
||||
### Text ###
|
||||
|
||||
font = DroidSansMono Nerd Font 9
|
||||
font = FiraCode Nerd Font 10
|
||||
|
||||
# The spacing between lines. If the height is smaller than the
|
||||
# font height, it will get raised to the font height.
|
||||
line_height = 9
|
||||
line_height = 0
|
||||
|
||||
# Possible values are:
|
||||
# full: Allow a small subset of html markup in notifications:
|
||||
|
@ -132,7 +125,7 @@
|
|||
# <u>underline</u>
|
||||
#
|
||||
# For a complete reference see
|
||||
# <https://docs.gtk.org/Pango/pango_markup.html>.
|
||||
# <https://developer.gnome.org/pango/stable/pango-Markup.html>.
|
||||
#
|
||||
# strip: This setting is provided for compatibility with some broken
|
||||
# clients that send markup even though it's not enabled on the
|
||||
|
@ -158,7 +151,7 @@
|
|||
# %n progress value if set without any extra characters
|
||||
# %% Literal %
|
||||
# Markup is allowed
|
||||
format = "<b>%s</b>\n%b"
|
||||
format = "%s %p\n%b"
|
||||
|
||||
# Alignment of message text.
|
||||
# Possible values are "left", "center" and "right".
|
||||
|
@ -191,27 +184,18 @@
|
|||
|
||||
### Icons ###
|
||||
|
||||
# Recursive icon lookup. You can set a single theme, instead of having to
|
||||
# define all lookup paths.
|
||||
enable_recursive_icon_lookup = true
|
||||
|
||||
# Set icon theme (only used for recursive icon lookup)
|
||||
icon_theme = Adwaita
|
||||
# You can also set multiple icon themes, with the leftmost one being used first.
|
||||
# icon_theme = "Adwaita, breeze"
|
||||
|
||||
# Align icons left/right/top/off
|
||||
# Align icons left/right/off
|
||||
icon_position = left
|
||||
|
||||
# Scale small icons up to this size, set to 0 to disable. Helpful
|
||||
# for e.g. small files or high-dpi screens. In case of conflict,
|
||||
# max_icon_size takes precedence over this.
|
||||
min_icon_size = 24
|
||||
min_icon_size = 0
|
||||
|
||||
# Scale larger icons down to this size, set to 0 to disable
|
||||
max_icon_size = 128
|
||||
max_icon_size = 64
|
||||
|
||||
# Paths to default icons (only neccesary when not using recursive icon lookup)
|
||||
# Paths to default icons.
|
||||
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
|
||||
|
||||
### History ###
|
||||
|
@ -229,7 +213,7 @@
|
|||
dmenu = /usr/bin/dmenu -p dunst:
|
||||
|
||||
# Browser for opening urls in context menu.
|
||||
browser = /usr/bin/brave
|
||||
browser = /usr/bin/firefox-developer-edition -new-tab
|
||||
|
||||
# Always run rule-defined scripts, even if the notification is suppressed
|
||||
always_run_script = true
|
||||
|
@ -241,7 +225,11 @@
|
|||
class = Dunst
|
||||
|
||||
# Define the corner radius of the notification window
|
||||
corner_radius = 18
|
||||
# in pixel size. If the radius is 0, you have no rounded
|
||||
# corners.
|
||||
# The radius will be automatically lowered if it exceeds half of the
|
||||
# notification height to avoid clipping text and/or icons.
|
||||
corner_radius = 0
|
||||
|
||||
# Ignore the dbus closeNotification message.
|
||||
# Useful to enforce the timeout set by dunst configuration. Without this
|
||||
|
@ -286,8 +274,8 @@
|
|||
# * context_all: Open context menu for all notifications.
|
||||
# These values can be strung together for each mouse event, and
|
||||
# will be executed in sequence.
|
||||
mouse_left_click = close_current
|
||||
mouse_middle_click = do_action, close_current
|
||||
mouse_left_click = do_action, close_current
|
||||
mouse_middle_click = open_url, close_current
|
||||
mouse_right_click = close_all
|
||||
|
||||
# Experimental features that may or may not work correctly. Do not expect them
|
||||
|
@ -304,26 +292,26 @@
|
|||
[urgency_low]
|
||||
# IMPORTANT: colors have to be defined in quotation marks.
|
||||
# Otherwise the "#" and following would be interpreted as a comment.
|
||||
background = "#0f161e"
|
||||
foreground = "#ffffff"
|
||||
background = "#282a36"
|
||||
foreground = "#6272a4"
|
||||
timeout = 10
|
||||
# Icon for notifications with low urgency, uncomment to enable
|
||||
#default_icon = /path/to/icon
|
||||
#new_icon = /path/to/icon
|
||||
|
||||
[urgency_normal]
|
||||
background = "#0f161e"
|
||||
foreground = "#ffffff"
|
||||
background = "#282a36"
|
||||
foreground = "#bd93f9"
|
||||
timeout = 10
|
||||
# Icon for notifications with normal urgency, uncomment to enable
|
||||
#default_icon = /path/to/icon
|
||||
#new_icon = /path/to/icon
|
||||
|
||||
[urgency_critical]
|
||||
background = "#650f28"
|
||||
foreground = "#ffffff"
|
||||
frame_color = "#900C30"
|
||||
timeout = 20
|
||||
background = "#ff5555"
|
||||
foreground = "#f8f8f2"
|
||||
frame_color = "#ff5555"
|
||||
timeout = 0
|
||||
# Icon for notifications with critical urgency, uncomment to enable
|
||||
#default_icon = /path/to/icon
|
||||
#new_icon = /path/to/icon
|
||||
|
||||
# Every section that isn't one of the above is interpreted as a rules to
|
||||
# override settings for certain messages.
|
||||
|
@ -351,14 +339,12 @@
|
|||
# set_category
|
||||
# timeout
|
||||
# urgency
|
||||
# icon_position
|
||||
# skip_display
|
||||
# history_ignore
|
||||
# action_name
|
||||
# word_wrap
|
||||
# ellipsize
|
||||
# alignment
|
||||
# hide_text
|
||||
#
|
||||
# Shell-like globbing will get expanded.
|
||||
#
|
||||
|
|
|
@ -1,29 +0,0 @@
|
|||
alias clear='clear && ufetch'
|
||||
alias cls='/usr/bin/clear'
|
||||
alias lsc='/usr/bin/ls --color=auto' # Default ls with colors
|
||||
# alias ls='logo-ls -Dh' # Modern ls https://github.com/Yash-Handa/logo-ls
|
||||
alias jls='jls -lh'
|
||||
alias ls='jls'
|
||||
alias cmus='cmus-rpc-rs --link &>/dev/null & /bin/cmus'
|
||||
alias neofetch='neofetch --kitty /mnt/Data/Personalize/Wallpapers/anime --crop_mode fill --crop_offset center --xoffset 1 --yoffset 1'
|
||||
alias nfe='neofetch'
|
||||
|
||||
# navigation
|
||||
alias ..='cd ..'
|
||||
alias ...='cd ../..'
|
||||
alias .3='cd ../../..'
|
||||
alias .4='cd ../../../..'
|
||||
alias .5='cd ../../../../..'
|
||||
|
||||
|
||||
# Colorize grep output (good for log files)
|
||||
alias grep='grep --color=auto'
|
||||
alias egrep='egrep --color=auto'
|
||||
alias fgrep='fgrep --color=auto'
|
||||
|
||||
|
||||
# confirm before overwriting something
|
||||
alias cp="cp -i"
|
||||
alias mv='mv -i'
|
||||
alias rm='rm -i'
|
||||
|
177
.config/fish/completions/gh-prx.fish
Normal file
|
@ -0,0 +1,177 @@
|
|||
# fish completion for prx -*- shell-script -*-
|
||||
|
||||
function __prx_debug
|
||||
set -l file "$BASH_COMP_DEBUG_FILE"
|
||||
if test -n "$file"
|
||||
echo "$argv" >> $file
|
||||
end
|
||||
end
|
||||
|
||||
function __prx_perform_completion
|
||||
__prx_debug "Starting __prx_perform_completion"
|
||||
|
||||
# Extract all args except the last one
|
||||
set -l args (commandline -opc)
|
||||
# Extract the last arg and escape it in case it is a space
|
||||
set -l lastArg (string escape -- (commandline -ct))
|
||||
|
||||
__prx_debug "args: $args"
|
||||
__prx_debug "last arg: $lastArg"
|
||||
|
||||
# Disable ActiveHelp which is not supported for fish shell
|
||||
set -l requestComp "PRX_ACTIVE_HELP=0 $args[1] __complete $args[2..-1] $lastArg"
|
||||
|
||||
__prx_debug "Calling $requestComp"
|
||||
set -l results (eval $requestComp 2> /dev/null)
|
||||
|
||||
# Some programs may output extra empty lines after the directive.
|
||||
# Let's ignore them or else it will break completion.
|
||||
# Ref: https://github.com/spf13/cobra/issues/1279
|
||||
for line in $results[-1..1]
|
||||
if test (string trim -- $line) = ""
|
||||
# Found an empty line, remove it
|
||||
set results $results[1..-2]
|
||||
else
|
||||
# Found non-empty line, we have our proper output
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
set -l comps $results[1..-2]
|
||||
set -l directiveLine $results[-1]
|
||||
|
||||
# For Fish, when completing a flag with an = (e.g., <program> -n=<TAB>)
|
||||
# completions must be prefixed with the flag
|
||||
set -l flagPrefix (string match -r -- '-.*=' "$lastArg")
|
||||
|
||||
__prx_debug "Comps: $comps"
|
||||
__prx_debug "DirectiveLine: $directiveLine"
|
||||
__prx_debug "flagPrefix: $flagPrefix"
|
||||
|
||||
for comp in $comps
|
||||
printf "%s%s\n" "$flagPrefix" "$comp"
|
||||
end
|
||||
|
||||
printf "%s\n" "$directiveLine"
|
||||
end
|
||||
|
||||
# This function does two things:
|
||||
# - Obtain the completions and store them in the global __prx_comp_results
|
||||
# - Return false if file completion should be performed
|
||||
function __prx_prepare_completions
|
||||
__prx_debug ""
|
||||
__prx_debug "========= starting completion logic =========="
|
||||
|
||||
# Start fresh
|
||||
set --erase __prx_comp_results
|
||||
|
||||
set -l results (__prx_perform_completion)
|
||||
__prx_debug "Completion results: $results"
|
||||
|
||||
if test -z "$results"
|
||||
__prx_debug "No completion, probably due to a failure"
|
||||
# Might as well do file completion, in case it helps
|
||||
return 1
|
||||
end
|
||||
|
||||
set -l directive (string sub --start 2 $results[-1])
|
||||
set --global __prx_comp_results $results[1..-2]
|
||||
|
||||
__prx_debug "Completions are: $__prx_comp_results"
|
||||
__prx_debug "Directive is: $directive"
|
||||
|
||||
set -l shellCompDirectiveError 1
|
||||
set -l shellCompDirectiveNoSpace 2
|
||||
set -l shellCompDirectiveNoFileComp 4
|
||||
set -l shellCompDirectiveFilterFileExt 8
|
||||
set -l shellCompDirectiveFilterDirs 16
|
||||
|
||||
if test -z "$directive"
|
||||
set directive 0
|
||||
end
|
||||
|
||||
set -l compErr (math (math --scale 0 $directive / $shellCompDirectiveError) % 2)
|
||||
if test $compErr -eq 1
|
||||
__prx_debug "Received error directive: aborting."
|
||||
# Might as well do file completion, in case it helps
|
||||
return 1
|
||||
end
|
||||
|
||||
set -l filefilter (math (math --scale 0 $directive / $shellCompDirectiveFilterFileExt) % 2)
|
||||
set -l dirfilter (math (math --scale 0 $directive / $shellCompDirectiveFilterDirs) % 2)
|
||||
if test $filefilter -eq 1; or test $dirfilter -eq 1
|
||||
__prx_debug "File extension filtering or directory filtering not supported"
|
||||
# Do full file completion instead
|
||||
return 1
|
||||
end
|
||||
|
||||
set -l nospace (math (math --scale 0 $directive / $shellCompDirectiveNoSpace) % 2)
|
||||
set -l nofiles (math (math --scale 0 $directive / $shellCompDirectiveNoFileComp) % 2)
|
||||
|
||||
__prx_debug "nospace: $nospace, nofiles: $nofiles"
|
||||
|
||||
# If we want to prevent a space, or if file completion is NOT disabled,
|
||||
# we need to count the number of valid completions.
|
||||
# To do so, we will filter on prefix as the completions we have received
|
||||
# may not already be filtered so as to allow fish to match on different
|
||||
# criteria than the prefix.
|
||||
if test $nospace -ne 0; or test $nofiles -eq 0
|
||||
set -l prefix (commandline -t | string escape --style=regex)
|
||||
__prx_debug "prefix: $prefix"
|
||||
|
||||
set -l completions (string match -r -- "^$prefix.*" $__prx_comp_results)
|
||||
set --global __prx_comp_results $completions
|
||||
__prx_debug "Filtered completions are: $__prx_comp_results"
|
||||
|
||||
# Important not to quote the variable for count to work
|
||||
set -l numComps (count $__prx_comp_results)
|
||||
__prx_debug "numComps: $numComps"
|
||||
|
||||
if test $numComps -eq 1; and test $nospace -ne 0
|
||||
# We must first split on \t to get rid of the descriptions to be
|
||||
# able to check what the actual completion will be.
|
||||
# We don't need descriptions anyway since there is only a single
|
||||
# real completion which the shell will expand immediately.
|
||||
set -l split (string split --max 1 \t $__prx_comp_results[1])
|
||||
|
||||
# Fish won't add a space if the completion ends with any
|
||||
# of the following characters: @=/:.,
|
||||
set -l lastChar (string sub -s -1 -- $split)
|
||||
if not string match -r -q "[@=/:.,]" -- "$lastChar"
|
||||
# In other cases, to support the "nospace" directive we trick the shell
|
||||
# by outputting an extra, longer completion.
|
||||
__prx_debug "Adding second completion to perform nospace directive"
|
||||
set --global __prx_comp_results $split[1] $split[1].
|
||||
__prx_debug "Completions are now: $__prx_comp_results"
|
||||
end
|
||||
end
|
||||
|
||||
if test $numComps -eq 0; and test $nofiles -eq 0
|
||||
# To be consistent with bash and zsh, we only trigger file
|
||||
# completion when there are no other completions
|
||||
__prx_debug "Requesting file completion"
|
||||
return 1
|
||||
end
|
||||
end
|
||||
|
||||
return 0
|
||||
end
|
||||
|
||||
# Since Fish completions are only loaded once the user triggers them, we trigger them ourselves
|
||||
# so we can properly delete any completions provided by another script.
|
||||
# Only do this if the program can be found, or else fish may print some errors; besides,
|
||||
# the existing completions will only be loaded if the program can be found.
|
||||
if type -q "prx"
|
||||
# The space after the program name is essential to trigger completion for the program
|
||||
# and not completion of the program name itself.
|
||||
# Also, we use '> /dev/null 2>&1' since '&>' is not supported in older versions of fish.
|
||||
complete --do-complete "prx " > /dev/null 2>&1
|
||||
end
|
||||
|
||||
# Remove any pre-existing completions for the program since we will be handling all of them.
|
||||
complete -c prx -e
|
||||
|
||||
# The call to __prx_prepare_completions will setup __prx_comp_results
|
||||
# which provides the program's completion choices.
|
||||
complete -c prx -n '__prx_prepare_completions' -f -a '$__prx_comp_results'
|
||||
|
|
@ -6,7 +6,9 @@ set VISUAL "neovide" # $VISUAL use neovide in GUI m
|
|||
|
||||
source $HOME/.config/fish/completions/*
|
||||
source $HOME/.config/fish/functions/functions.fish # Loads the functions file
|
||||
source $HOME/.config/fish/aliases.sh # Loads the aliases file
|
||||
source $HOME/.config/shell/aliases.sh # Loads the aliases file
|
||||
clear
|
||||
source $HOME/.config/nnn/config.sh
|
||||
|
||||
export GTK_IM_MODULE="fcitx"
|
||||
export QT_IM_MODULE="fcitx"
|
||||
|
@ -44,4 +46,18 @@ set fish_color_error '#ff6c6b'
|
|||
set fish_color_param brcyan
|
||||
|
||||
### SETTING THE STARSHIP PROMPT ###
|
||||
starship init fish | source
|
||||
# starship init fish | source
|
||||
# thefuck --alias | source
|
||||
|
||||
# pnpm
|
||||
set -gx PNPM_HOME "/home/anas/.local/share/pnpm"
|
||||
if not string match -q -- $PNPM_HOME $PATH
|
||||
set -gx PATH "$PNPM_HOME" $PATH
|
||||
end
|
||||
# pnpm end
|
||||
|
||||
# Auto run
|
||||
echo "Don't worry I'm here for you <3"
|
||||
oh-my-posh init fish --config ~/.config/ohmyposh/1_shell.omp.json | source
|
||||
|
||||
|
||||
|
|
|
@ -41,4 +41,4 @@ SETUVAR fish_pager_color_selected_background:\x2d\x2dbackground\x3dbrblack
|
|||
SETUVAR fish_pager_color_selected_completion:\x1d
|
||||
SETUVAR fish_pager_color_selected_description:\x1d
|
||||
SETUVAR fish_pager_color_selected_prefix:\x1d
|
||||
SETUVAR fish_user_paths:/snap/bin\x1e/home/anas/\x2elocal/bin\x1e/home/anas/Android/Sdk/platform\x2dtools\x1e/home/anas/\x2ecargo/bin\x1e/home/anas/\x2escripts
|
||||
SETUVAR fish_user_paths:/home/anas/\x2econfig/emacs/bin\x1e/usr/lib/jvm/default/bin\x1e/home/anas/\x2eemacs\x2ed/bin\x1e/snap/bin\x1e/home/anas/\x2elocal/bin\x1e/home/anas/Android/Sdk/platform\x2dtools\x1e/home/anas/\x2ecargo/bin\x1e/home/anas/\x2escripts
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
background #1d1f21
|
||||
background_opacity 0.26
|
||||
|
||||
include themes/dracula.conf
|
||||
|
||||
font_family FiraCode Nerd Font
|
||||
bold_font FiraCode Nerd Font Bold
|
||||
|
|
56
.config/kitty/themes/dracula.conf
Normal file
|
@ -0,0 +1,56 @@
|
|||
foreground #f8f8f2
|
||||
background #282a36
|
||||
selection_foreground #ffffff
|
||||
selection_background #44475a
|
||||
|
||||
url_color #8be9fd
|
||||
|
||||
# black
|
||||
color0 #21222c
|
||||
color8 #6272a4
|
||||
|
||||
# red
|
||||
color1 #ff5555
|
||||
color9 #ff6e6e
|
||||
|
||||
# green
|
||||
color2 #50fa7b
|
||||
color10 #69ff94
|
||||
|
||||
# yellow
|
||||
color3 #f1fa8c
|
||||
color11 #ffffa5
|
||||
|
||||
# blue
|
||||
color4 #bd93f9
|
||||
color12 #d6acff
|
||||
|
||||
# magenta
|
||||
color5 #ff79c6
|
||||
color13 #ff92df
|
||||
|
||||
# cyan
|
||||
color6 #8be9fd
|
||||
color14 #a4ffff
|
||||
|
||||
# white
|
||||
color7 #f8f8f2
|
||||
color15 #ffffff
|
||||
|
||||
# Cursor colors
|
||||
cursor #f8f8f2
|
||||
cursor_text_color background
|
||||
|
||||
# Tab bar colors
|
||||
active_tab_foreground #282a36
|
||||
active_tab_background #f8f8f2
|
||||
inactive_tab_foreground #282a36
|
||||
inactive_tab_background #6272a4
|
||||
|
||||
# Marks
|
||||
mark1_foreground #282a36
|
||||
mark1_background #ff5555
|
||||
|
||||
# Splits/Windows
|
||||
active_border_color #f8f8f2
|
||||
inactive_border_color #6272a4
|
2
.config/nnn/config.sh
Normal file
|
@ -0,0 +1,2 @@
|
|||
export NNN_ARCHIVE="\\.(7z|a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|rar|rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip)\$"
|
||||
|
113
.config/ohmyposh/1_shell.omp.json
Normal file
|
@ -0,0 +1,113 @@
|
|||
{
|
||||
"$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
|
||||
"blocks": [
|
||||
{
|
||||
"alignment": "left",
|
||||
"newline": true,
|
||||
"segments": [
|
||||
{
|
||||
"foreground": "#ffbebc",
|
||||
"leading_diamond": "<#ff70a6> \ue200 </>",
|
||||
"properties": {
|
||||
"display_host": true
|
||||
},
|
||||
"style": "diamond",
|
||||
"template": "{{ .UserName }} <#ffffff>on</>",
|
||||
"type": "session"
|
||||
},
|
||||
{
|
||||
"foreground": "#bc93ff",
|
||||
"properties": {
|
||||
"time_format": "Monday <#ffffff>at</> 3:04 PM"
|
||||
},
|
||||
"style": "diamond",
|
||||
"template": " {{ .CurrentDate | date .Format }} ",
|
||||
"type": "time"
|
||||
}
|
||||
],
|
||||
"type": "prompt"
|
||||
},
|
||||
{
|
||||
"alignment": "right",
|
||||
"segments": [
|
||||
{
|
||||
"foreground": "#a9ffb4",
|
||||
"style": "plain",
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"foreground": "#a9ffb4",
|
||||
"properties": {
|
||||
"style": "dallas",
|
||||
"threshold": 0
|
||||
},
|
||||
"style": "diamond",
|
||||
"template": " {{ .FormattedMs }}s <#ffffff>\ue601</>",
|
||||
"type": "executiontime"
|
||||
},
|
||||
{
|
||||
"properties": {
|
||||
"root_icon": "\uf292 "
|
||||
},
|
||||
"style": "diamond",
|
||||
"template": " \uf0e7 ",
|
||||
"type": "root"
|
||||
},
|
||||
{
|
||||
"foreground": "#ee79d1",
|
||||
"properties": {
|
||||
"branch_icon": "\ue725 ",
|
||||
"fetch_stash_count": true,
|
||||
"fetch_status": true,
|
||||
"fetch_upstream_icon": true,
|
||||
"fetch_worktree_count": true
|
||||
},
|
||||
"style": "diamond",
|
||||
"template": " {{ .UpstreamIcon }}{{ .HEAD }}{{if .BranchStatus }} {{ .BranchStatus }}{{ end }}{{ if .Working.Changed }} \uf044 {{ .Working.String }}{{ end }}{{ if and (.Working.Changed) (.Staging.Changed) }} |{{ end }}{{ if .Staging.Changed }} \uf046 {{ .Staging.String }}{{ end }}{{ if gt .StashCount 0 }} \uf692 {{ .StashCount }}{{ end }} ",
|
||||
"type": "git"
|
||||
}
|
||||
],
|
||||
"type": "prompt"
|
||||
},
|
||||
{
|
||||
"alignment": "left",
|
||||
"newline": true,
|
||||
"segments": [
|
||||
{
|
||||
"foreground": "#ffafd2",
|
||||
"leading_diamond": "<#00c7fc> \ue285 </><#ffafd2>{</>",
|
||||
"properties": {
|
||||
"folder_icon": "\uf07b",
|
||||
"folder_separator_icon": "\uf9e0",
|
||||
"home_icon": "home",
|
||||
"style": "agnoster_full"
|
||||
},
|
||||
"style": "diamond",
|
||||
"template": " \ue5ff {{ .Path }} ",
|
||||
"trailing_diamond": "<#ffafd2>}</>",
|
||||
"type": "path"
|
||||
},
|
||||
{
|
||||
"foreground": "#A9FFB4",
|
||||
"foreground_templates": [
|
||||
"{{ if gt .Code 0 }}#ef5350{{ end }}"
|
||||
],
|
||||
"properties": {
|
||||
"always_enabled": true
|
||||
},
|
||||
"style": "plain",
|
||||
"template": " \ue286 ",
|
||||
"type": "exit"
|
||||
}
|
||||
],
|
||||
"type": "prompt"
|
||||
}
|
||||
],
|
||||
"console_title_template": "{{ .Folder }}",
|
||||
"transient_prompt": {
|
||||
"background": "transparent",
|
||||
"foreground": "#FEF5ED",
|
||||
"template": "\ue285 "
|
||||
},
|
||||
"version": 2
|
||||
}
|
|
@ -22,8 +22,10 @@ blur-strength = 3;
|
|||
# ];
|
||||
|
||||
#### Transparency / Opacity #####
|
||||
|
||||
frame-opacity = 1;
|
||||
inactive-opacity = 0.77;
|
||||
frame-opacity = 0.9;
|
||||
inactive-opacity-override = true;
|
||||
opacity-rule = [
|
||||
"70:class_g = 'Alacritty'",
|
||||
"80:class_g = 'dwm'",
|
||||
];
|
||||
|
|
4
.config/qt5ct/colors/Dracula.conf
Normal file
|
@ -0,0 +1,4 @@
|
|||
[ColorScheme]
|
||||
active_colors=#ffbd93f9, #ff424559, #ff484d6b, #ff6272a4, #ff44475a, #ff44475a, #ff6272a4, #ff44475a, #ffbd93f9, #ff282a36, #ff282a36, #ff44475a, #ff6272a4, #ffbd93f9, #ff8be9fd, #ff8be9fd, #ff44475a, #ff6272a4, #ff44475a, #fff8f8f2, #ff44475a
|
||||
disabled_colors=#ffbd93f9, #ff424559, #ff484d6b, #ff6272a4, #ff44475a, #ff44475a, #ff6272a4, #ff44475a, #ffbd93f9, #ff282a36, #ff282a36, #ff44475a, #ff6272a4, #ffbd93f9, #ff8be9fd, #ff8be9fd, #ff44475a, #ff6272a4, #ff44475a, #fff8f8f2, #ff44475a
|
||||
inactive_colors=#ffbd93f9, #ff424559, #ff484d6b, #ff6272a4, #ff44475a, #ff44475a, #ff6272a4, #ff44475a, #ffbd93f9, #ff282a36, #ff282a36, #ff44475a, #ff6272a4, #ffbd93f9, #ff8be9fd, #ff8be9fd, #ff44475a, #ff6272a4, #ff44475a, #fff8f8f2, #ff44475a
|
32
.config/qt5ct/qt5ct.conf
Normal file
|
@ -0,0 +1,32 @@
|
|||
[Appearance]
|
||||
color_scheme_path=/home/anas/.config/qt5ct/colors/Dracula.conf
|
||||
custom_palette=true
|
||||
icon_theme=Dracula
|
||||
standard_dialogs=default
|
||||
style=Breeze
|
||||
|
||||
[Fonts]
|
||||
fixed="Sans Serif,9,-1,5,50,0,0,0,0,0"
|
||||
general="Sans Serif,9,-1,5,50,0,0,0,0,0"
|
||||
|
||||
[Interface]
|
||||
activate_item_on_single_click=1
|
||||
buttonbox_layout=2
|
||||
cursor_flash_time=1000
|
||||
dialog_buttons_have_icons=1
|
||||
double_click_interval=400
|
||||
gui_effects=@Invalid()
|
||||
keyboard_scheme=2
|
||||
menus_have_icons=true
|
||||
show_shortcuts_in_context_menus=true
|
||||
stylesheets=@Invalid()
|
||||
toolbutton_style=4
|
||||
underline_shortcut=1
|
||||
wheel_scroll_lines=3
|
||||
|
||||
[SettingsWindow]
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x16\0\0\x4\x1f\0\0\x4\x37\0\0\0\x1\0\0\0\x17\0\0\x4\x1e\0\0\x4\x36\0\0\0\0\0\0\0\0\a\x80\0\0\0\x1\0\0\0\x17\0\0\x4\x1e\0\0\x4\x36)
|
||||
|
||||
[Troubleshooting]
|
||||
force_raster_widgets=1
|
||||
ignored_applications=@Invalid()
|
56
.config/shell/aliases.sh
Normal file
|
@ -0,0 +1,56 @@
|
|||
alias lsc='/usr/bin/ls --color=auto' # Default ls with colors
|
||||
# alias ls='logo-ls -Dh' # Modern ls https://github.com/Yash-Handa/logo-ls
|
||||
alias jls='jls -lh'
|
||||
alias ls='jls'
|
||||
alias neofetch='neofetch --kitty /mnt/Data/Personalize/Wallpapers --crop_mode fill --crop_offset center --xoffset 1 --yoffset 1'
|
||||
alias nfe='neofetch'
|
||||
|
||||
# navigation
|
||||
alias ~='cd ~'
|
||||
alias .-='cd -'
|
||||
alias cd..='cd ..'
|
||||
alias ..='cd ..'
|
||||
alias ...='cd ../..'
|
||||
alias .3='cd ../../..'
|
||||
alias .4='cd ../../../..'
|
||||
alias .5='cd ../../../../..'
|
||||
|
||||
# Show the current path with (jpwd)
|
||||
alias .='jpwd'
|
||||
|
||||
# Edit something
|
||||
alias e="$EDITOR"
|
||||
|
||||
# Read the file
|
||||
alias r='bat'
|
||||
|
||||
# Git
|
||||
alias push='git push'
|
||||
alias commit='git commit -S'
|
||||
alias clone='git clone'
|
||||
alias add='git add'
|
||||
alias status='git status'
|
||||
alias pull='git pull'
|
||||
alias fetch='git fetch'
|
||||
|
||||
# Colorize grep output (good for log files)
|
||||
alias grep='grep --color=auto'
|
||||
alias egrep='egrep --color=auto'
|
||||
alias fgrep='fgrep --color=auto'
|
||||
|
||||
# confirm before overwriting something
|
||||
alias cp="cp -i"
|
||||
alias mv='mv -i'
|
||||
# alias rm='rm -i'
|
||||
|
||||
# Update
|
||||
alias fuck-my-lap='sudo pacman -Syyu'
|
||||
|
||||
|
||||
#youtube download
|
||||
alias yta-aac="yt-dlp --extract-audio --audio-format aac "
|
||||
alias yta-best="yt-dlp --extract-audio --audio-format best "
|
||||
alias yta-flac="yt-dlp --extract-audio --audio-format flac "
|
||||
alias yta-mp3="yt-dlp --extract-audio --audio-format mp3 "
|
||||
alias ytv-best="yt-dlp -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio' --merge-output-format mp4 "
|
||||
|
33
.config/shell/public-env.sh
Normal file
|
@ -0,0 +1,33 @@
|
|||
export BROWSER='firefox-developer-edition'
|
||||
# ls colors from https://github.com/body20002/nova/blob/main/nova.zsh-theme + *.jar and *.mp4, *.mkv from me :D
|
||||
export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.jar=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.mp4=01;35:*.mkv=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:'
|
||||
|
||||
# XDG
|
||||
export XDG_CACHE_HOME=$HOME/.cache
|
||||
export XDG_CONFIG_HOME=$HOME/.config
|
||||
export XDG_DATA_HOME=$HOME/.local/share
|
||||
export XDG_STATE_HOME=$HOME/.local/state
|
||||
|
||||
# Editor
|
||||
export EDITOR='lvim'
|
||||
export VISUAL="lvim"
|
||||
|
||||
export HISTCONTROL=ignoreboth:erasedups
|
||||
export PAGER='bat'
|
||||
|
||||
export JAVA_HOME='/usr/lib/jvm/java-19-openjdk'
|
||||
### PATH ###
|
||||
# export PATH="$HOME/.local/bin:/usr/local/bin:/usr/bin:$PATH"
|
||||
if [ -d "$HOME/.bin" ] ;
|
||||
then PATH="$HOME/.bin:$PATH"
|
||||
fi
|
||||
|
||||
if [ -d "$HOME/.local/bin" ] ;
|
||||
then PATH="$HOME/.local/bin:$PATH"
|
||||
fi
|
||||
export PATH="$HOME/.local/share/bin:$PATH"
|
||||
export PATH="$JAVA_HOME/bin:$HOME/.local/share/gem/ruby/3.0.0/bin:$HOME/Android/Sdk/platform-tools:$PATH"
|
||||
export PATH="$HOME/.scripts:$PATH"
|
||||
export PATH="$HOME/.config/emacs/bin:$HOME/.emacs.d/bin:$PATH"
|
||||
export PATH="/snap/bin:$PATH"
|
||||
export PATH="$HOME/.cargo/bin:$PATH"
|
25
.config/shell/setup.sh
Normal file
|
@ -0,0 +1,25 @@
|
|||
PROMPT=ohmyposh
|
||||
# Fix cava not showing bars
|
||||
LC_MESSAGES=en_US.UTF-8
|
||||
LANGUAGE=en_US
|
||||
LANG=en_US.UTF-8
|
||||
|
||||
# Enable the autojump
|
||||
[[ -s /etc/profile.d/autojump.sh ]] && source /etc/profile.d/autojump.sh
|
||||
# Setup the github-copilot-cli alias `??`
|
||||
if command -v github-copilot-cli >/dev/null 2>&1; then
|
||||
eval "$(github-copilot-cli alias -- "$0")"
|
||||
fi
|
||||
|
||||
# The prompt
|
||||
if command -v oh-my-posh >/dev/null 2>&1 && [[ $PROMPT == "ohmyposh" ]]; then
|
||||
eval "$(oh-my-posh init $(basename $SHELL) --config ~/.config/ohmyposh/1_shell.omp.json)"
|
||||
fi
|
||||
if command -v starship >/dev/null 2>&1 && [[ $PROMPT == "starship" ]]; then
|
||||
eval "$(starship init $(basename $SHELL))"
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# Auto run
|
||||
echo "Don't worry I'm here for you <3"
|
26
.config/shell/utils.sh
Normal file
|
@ -0,0 +1,26 @@
|
|||
# # ex = EXtractor for all kinds of archives
|
||||
# # usage: ex <file>
|
||||
ex ()
|
||||
{
|
||||
if [ -f "$1" ] ; then
|
||||
case "$1" in
|
||||
*.tar.bz2) tar xjf "$1" ;;
|
||||
*.tar.gz) tar xzf "$1" ;;
|
||||
*.bz2) bunzip2 "$1" ;;
|
||||
*.rar) unrar x "$1" ;;
|
||||
*.gz) gunzip "$1" ;;
|
||||
*.tar) tar xf "$1" ;;
|
||||
*.tbz2) tar xjf "$1" ;;
|
||||
*.tgz) tar xzf "$1" ;;
|
||||
*.zip) unzip "$1" ;;
|
||||
*.Z) uncompress "$1";;
|
||||
*.7z) 7z x "$1" ;;
|
||||
*.deb) ar x "$1" ;;
|
||||
*.tar.xz) tar xf "$1" ;;
|
||||
*.tar.zst) tar xf "$1" ;;
|
||||
*) echo "'$1' cannot be extracted via ex()" ;;
|
||||
esac
|
||||
else
|
||||
echo "'$1' is not a valid file"
|
||||
fi
|
||||
}
|
|
@ -2,7 +2,7 @@
|
|||
keybinds {
|
||||
normal {
|
||||
// uncomment this and adjust key if using copy_on_select=false
|
||||
// bind "Alt c" { Copy; }
|
||||
bind "Alt c" { Copy; }
|
||||
}
|
||||
locked {
|
||||
bind "Ctrl g" { SwitchToMode "Normal"; }
|
||||
|
@ -76,7 +76,7 @@ keybinds {
|
|||
bind "d" { HalfPageScrollDown; }
|
||||
bind "u" { HalfPageScrollUp; }
|
||||
// uncomment this and adjust key if using copy_on_select=false
|
||||
// bind "Alt c" { Copy; }
|
||||
bind "Alt c" { Copy; }
|
||||
}
|
||||
search {
|
||||
bind "Ctrl s" { SwitchToMode "Normal"; }
|
||||
|
@ -181,14 +181,14 @@ plugins {
|
|||
// - detach (Default)
|
||||
// - quit
|
||||
//
|
||||
// on_force_close "quit"
|
||||
on_force_close "detach"
|
||||
|
||||
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||
// Options:
|
||||
// - true
|
||||
// - false (Default)
|
||||
//
|
||||
// simplified_ui true
|
||||
simplified_ui false
|
||||
|
||||
// Choose the path to the default shell that zellij will use for opening new panes
|
||||
// Default: $SHELL
|
||||
|
@ -200,7 +200,7 @@ plugins {
|
|||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// pane_frames true
|
||||
pane_frames false
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
|
@ -210,7 +210,7 @@ theme "dracula"
|
|||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
//
|
||||
// default_layout "compact"
|
||||
default_layout "compact"
|
||||
|
||||
// Choose the mode that zellij uses when starting up.
|
||||
// Default: normal
|
||||
|
@ -220,26 +220,19 @@ theme "dracula"
|
|||
// Toggle enabling the mouse mode.
|
||||
// On certain configurations, or terminals this could
|
||||
// potentially interfere with copying text.
|
||||
// Options:
|
||||
// - true (default)
|
||||
// - false
|
||||
//
|
||||
// mouse_mode false
|
||||
mouse_mode true
|
||||
|
||||
// Configure the scroll back buffer size
|
||||
// This is the number of lines zellij stores for each pane in the scroll back
|
||||
// buffer. Excess number of lines are discarded in a FIFO fashion.
|
||||
// Valid values: positive integers
|
||||
// Default value: 10000
|
||||
//
|
||||
// scroll_buffer_size 10000
|
||||
scroll_buffer_size 100000
|
||||
|
||||
// Provide a command to execute when copying text. The text will be piped to
|
||||
// the stdin of the program to perform the copy. This can be used with
|
||||
// terminal emulators which do not support the OSC 52 ANSI control sequence
|
||||
// that will be used by default if this option is not set.
|
||||
// Examples:
|
||||
//
|
||||
// copy_command "xclip -selection clipboard" // x11
|
||||
// copy_command "wl-copy" // wayland
|
||||
// copy_command "pbcopy" // osx
|
||||
|
@ -251,12 +244,10 @@ theme "dracula"
|
|||
// - system (default)
|
||||
// - primary
|
||||
//
|
||||
// copy_clipboard "primary"
|
||||
copy_clipboard "system"
|
||||
|
||||
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||
// Default: true
|
||||
//
|
||||
// copy_on_select false
|
||||
copy_on_select false
|
||||
|
||||
// Path to the default editor to use to edit pane scrollbuffer
|
||||
// Default: $EDITOR or $VISUAL
|
||||
|
@ -266,9 +257,7 @@ theme "dracula"
|
|||
// When attaching to an existing session with other users,
|
||||
// should the session be mirrored (true)
|
||||
// or should each user have their own cursor (false)
|
||||
// Default: false
|
||||
//
|
||||
// mirror_session true
|
||||
mirror_session false
|
||||
|
||||
// The folder in which Zellij will look for layouts
|
||||
//
|
||||
|
|
60
.gitconfig
Normal file
|
@ -0,0 +1,60 @@
|
|||
# INCLUDES
|
||||
# --------
|
||||
# Local/Private config goes in the include
|
||||
[include]
|
||||
path = ~/.gitconfig.local
|
||||
# URL ALIASES
|
||||
# -----------
|
||||
# Alias for my mian account
|
||||
[url "git@github.com:anas-elgarhy/"]
|
||||
insteadOf = me://
|
||||
# Alias for AUR
|
||||
[url "ssh://aur@aur.archlinux.org/"]
|
||||
insteadOf = aur://
|
||||
# COLORS
|
||||
# ------
|
||||
# Dracula Dark Theme
|
||||
[color]
|
||||
ui = auto
|
||||
[color "branch"]
|
||||
current = cyan bold reverse
|
||||
local = white
|
||||
plain =
|
||||
remote = cyan
|
||||
[color "diff"]
|
||||
commit =
|
||||
func = cyan
|
||||
plain =
|
||||
whitespace = magenta reverse
|
||||
meta = white
|
||||
frag = cyan bold reverse
|
||||
old = red
|
||||
new = green
|
||||
[color "grep"]
|
||||
context =
|
||||
filename =
|
||||
function =
|
||||
linenumber = white
|
||||
match =
|
||||
selected =
|
||||
separator =
|
||||
[color "interactive"]
|
||||
error =
|
||||
header =
|
||||
help =
|
||||
prompt =
|
||||
[color "status"]
|
||||
added = green
|
||||
changed = yellow
|
||||
header =
|
||||
localBranch =
|
||||
nobranch =
|
||||
remoteBranch = cyan bold
|
||||
unmerged = magenta bold reverse
|
||||
untracked = red
|
||||
updated = green bold
|
||||
[user]
|
||||
name = Anas Elgarhy
|
||||
email = anas.elgarhy.dev@gmail.com
|
||||
[core]
|
||||
editor = lvim
|
11
.github/workflows/mirror.yml
vendored
|
@ -39,3 +39,14 @@ jobs:
|
|||
REMOTE_NAME: codeberg
|
||||
GIT_USERNAME: anas-elgarhy
|
||||
GIT_PASSWORD: ${{ secrets.CODEBERG_TOKEN }}
|
||||
|
||||
- name: mirror in git.disroot
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- uses: yesolutions/mirror-action@master
|
||||
with:
|
||||
REMOTE: 'https://git.disroot.org/anas-elgarhy/dotfiles.git'
|
||||
REMOTE_NAME: disroot
|
||||
GIT_USERNAME: anas-elgarhy
|
||||
GIT_PASSWORD: ${{ secrets.DISROOT_TOKEN }}
|
||||
|
|
38
.ideavimrc
|
@ -1,38 +0,0 @@
|
|||
"" Source your .vimrc
|
||||
"source ~/.vimrc
|
||||
|
||||
" variables
|
||||
let mapleader = ","
|
||||
|
||||
"" -- Suggested options --
|
||||
" Show a few lines of context around the cursor. Note that this makes the
|
||||
" text scroll if you mouse-click near the start or end of the window.
|
||||
set scrolloff=5
|
||||
set clipboard+=unnamedplus " Allow ideavim to copy/paste from/to the clipboard
|
||||
set incsearch " Do incremental searching.
|
||||
set history=2000 " Set the number of commands to remember.
|
||||
|
||||
|
||||
" Don't use Ex mode, use Q for formatting.
|
||||
map Q gq
|
||||
|
||||
|
||||
"" -- Map IDE actions to IdeaVim -- https://jb.gg/abva4t
|
||||
"" Map \r to the Reformat Code action
|
||||
map \r <Action>(ReformatCode)
|
||||
|
||||
"" Map <leader>d to start debug
|
||||
map <leader>d <Action>(Debug)
|
||||
|
||||
"" Map \b to toggle the breakpoint on the current line
|
||||
map <leader>b <Action>(ToggleLineBreakpoint)
|
||||
|
||||
map <C-R> <Action>(Rename)
|
||||
|
||||
" Plugins
|
||||
Plug 'easymotion/vim-easymotion'
|
||||
Plug 'preservim/nerdtree'
|
||||
Plug 'tpope/vim-surround'
|
||||
|
||||
" Find more examples here: https://jb.gg/share-ideavimrc
|
||||
set ideajoin
|
7
.mergify.yml
Normal file
|
@ -0,0 +1,7 @@
|
|||
pull_request_rules:
|
||||
- name: Automatic merge on approval
|
||||
conditions:
|
||||
- "#approved-reviews-by>=1"
|
||||
actions:
|
||||
merge:
|
||||
method: merge
|
36
.mozilla/firefox/chrome/userChrome.css
Normal file
|
@ -0,0 +1,36 @@
|
|||
@-moz-document url(chrome://browser/content/browser.xhtml) {
|
||||
/* tabs on bottom of window */
|
||||
/* requires that you set
|
||||
* toolkit.legacyUserProfileCustomizations.stylesheets = true
|
||||
* in about:config
|
||||
*/
|
||||
#main-window body { flex-direction: column-reverse !important; }
|
||||
#navigator-toolbox { flex-direction: column-reverse !important; }
|
||||
#urlbar {
|
||||
top: unset !important;
|
||||
bottom: calc((var(--urlbar-toolbar-height) - var(--urlbar-height)) / 2) !important;
|
||||
box-shadow: none !important;
|
||||
display: flex !important;
|
||||
flex-direction: column !important;
|
||||
}
|
||||
#urlbar-input-container {
|
||||
order: 2;
|
||||
}
|
||||
#urlbar > .urlbarView {
|
||||
order: 1;
|
||||
border-bottom: 1px solid #666;
|
||||
}
|
||||
#urlbar-results {
|
||||
display: flex;
|
||||
flex-direction: column-reverse;
|
||||
}
|
||||
.search-one-offs { display: none !important; }
|
||||
.tab-background { border-top: none !important; }
|
||||
#navigator-toolbox::after { border: none; }
|
||||
#TabsToolbar .tabbrowser-arrowscrollbox,
|
||||
#tabbrowser-tabs, .tab-stack { min-height: 28px !important; }
|
||||
.tabbrowser-tab { font-size: 80%; }
|
||||
.tab-content { padding: 0 5px; }
|
||||
.tab-close-button .toolbarbutton-icon { width: 12px !important; height: 12px !important; }
|
||||
toolbox[inFullscreen=true] { display: none; }
|
||||
}
|
|
@ -1,5 +0,0 @@
|
|||
#!/bin/bash
|
||||
# Generated by JetBrains Toolbox 1.25.12627 at 2022-08-15T20:10:08.786343048
|
||||
|
||||
"/home/anas/.local/share/JetBrains/Toolbox/apps/CLion/ch-0/221.5921.27/bin/clion.sh" "$@"
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
#!/bin/bash
|
||||
# Generated by JetBrains Toolbox 1.25.12627 at 2022-08-15T20:10:08.773876178
|
||||
|
||||
"/home/anas/.local/share/JetBrains/Toolbox/apps/IDEA-U/ch-0/222.3345.118/bin/idea.sh" "$@"
|
||||
|
38
.xinitrc
Normal file
|
@ -0,0 +1,38 @@
|
|||
#!/bin/sh
|
||||
|
||||
userresources=$HOME/.Xresources
|
||||
usermodmap=$HOME/.Xmodmap
|
||||
sysresources=/etc/X11/xinit/.Xresources
|
||||
sysmodmap=/etc/X11/xinit/.Xmodmap
|
||||
|
||||
# merge in defaults and keymaps
|
||||
|
||||
if [ -f $sysresources ]; then
|
||||
xrdb -merge $sysresources
|
||||
fi
|
||||
|
||||
if [ -f $sysmodmap ]; then
|
||||
xmodmap $sysmodmap
|
||||
fi
|
||||
|
||||
if [ -f "$userresources" ]; then
|
||||
xrdb -merge "$userresources"
|
||||
fi
|
||||
|
||||
if [ -f "$usermodmap" ]; then
|
||||
xmodmap "$usermodmap"
|
||||
fi
|
||||
|
||||
# start some nice programs
|
||||
|
||||
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
|
||||
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
|
||||
[ -x "$f" ] && . "$f"
|
||||
done
|
||||
unset f
|
||||
fi
|
||||
|
||||
[ -f /etc/xprofile ] && . /etc/xprofile
|
||||
[ -f ~/.xprofile ] && . ~/.xprofile
|
||||
|
||||
exec archy-dwm 2> .logs/archy-dwm.err > .logs/archy-dwm.log
|
29
.xprofile
Normal file
|
@ -0,0 +1,29 @@
|
|||
#!/bin/sh
|
||||
|
||||
export XIM=nabi
|
||||
export XIM_ARGS=
|
||||
export XIM_PROGRAM="nabi"
|
||||
export XMODIFIERS="@im=nabi"
|
||||
export GTK_IM_MODULE=xim
|
||||
export QT_IM_MODULE=xim
|
||||
|
||||
# gnupg keyring agent
|
||||
# ensure it's started so SSH will work
|
||||
# https://www.gnupg.org/faq/whats-new-in-2.1.html#autostart
|
||||
dbus-update-activation-environment --systemd DISPLAY
|
||||
gpgconf --launch gpg-agent
|
||||
export "SSH_AUTH_SOCK=/run/user/$(id -u)/gnupg/S.gpg-agent.ssh"
|
||||
|
||||
# Keyboard layouts switch (requires setxkbmap)
|
||||
setxkbmap -model pc104 -layout us,ara -variant dvorak-l, -option grp:win_space_toggle
|
||||
# Start compositor , for transparency
|
||||
picom &
|
||||
# Restores the wallpaper
|
||||
nitrogen --restore &
|
||||
# Start the network manger
|
||||
nm-applet &
|
||||
# Start the clipboard manger
|
||||
copyq &
|
||||
# sticky keys script
|
||||
stickykeys &
|
||||
|
74
.zshrc
|
@ -1,30 +1,25 @@
|
|||
### EXPORT ###
|
||||
export EDITOR='nvim'
|
||||
export VISUAL='nvim'
|
||||
export TERMINAL='alacritty'
|
||||
export JAVA_HOME='/usr/lib/jvm/java-18-openjdk'
|
||||
# ls colors from https://github.com/body20002/nova/blob/main/nova.zsh-theme + *.jar and *.mp4, *.mkv from me :D
|
||||
export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.jar=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.mp4=01;35:*.mkv=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:'
|
||||
|
||||
### PATH ###
|
||||
export PATH="$java_home/bin:$HOME/.local/share/gem/ruby/3.0.0/bin:$HOME/.scripts:$PATH"
|
||||
source "$HOME/.config/shell/public-env.sh"
|
||||
source "$HOME/.config/shell/aliases.sh"
|
||||
source "$HOME/.config/shell/utils.sh"
|
||||
source "$HOME/.config/shell/setup.sh"
|
||||
|
||||
USE_POWERLINE="true"
|
||||
setopt correct # Auto corect mistakes
|
||||
setopt nobeep # No beep
|
||||
|
||||
ZSH_THEME="nova"
|
||||
setopt dvorak # Use the Dvorak keyboard instead of the standard qwerty keyboard
|
||||
setopt correctall # Try to correct the spelling of all arguments in a line.
|
||||
setopt aliases # Expand aliases
|
||||
|
||||
# Enable colors and change prompt:
|
||||
autoload -U colors && colors
|
||||
# PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%}%~%{$fg[red]%}]%{$reset_color%}$%b "
|
||||
PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%}%~%{$fg[red]%}]%{$reset_color%}$%b "
|
||||
|
||||
# PROMPT="%B%{$fg[cyan]%}%(4~|%-1~/.../%2~|%~)%u%b >%{$fg[cyan]%}>%B%(?.% "
|
||||
|
||||
# History in cache directory:
|
||||
HISTSIZE=100000
|
||||
SAVEHIST=100000
|
||||
HISTFILE=~/.zsh_history
|
||||
HISTSIZE=1000000000
|
||||
SAVEHIST=1000000000
|
||||
HISTFILE=~/.shell_history
|
||||
|
||||
# Basic auto/tab complete:
|
||||
autoload -U compinit
|
||||
|
@ -40,20 +35,11 @@ zstyle ':completion:*' cache-path ~/.zsh/cache
|
|||
|
||||
## Plugins section:
|
||||
# Enable fish style features
|
||||
source /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme
|
||||
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
|
||||
# Wakatime plugin:
|
||||
source $HOME/.oh-my-zsh/custom/plugins/wakatime/wakatime.plugin.zsh
|
||||
|
||||
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
||||
# Initialization code that may require console input (password prompts, [y/n]
|
||||
# confirmations, etc.) must go above this block; everything else may go below.
|
||||
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
||||
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
||||
fi
|
||||
|
||||
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||
# Use syntax highlighting
|
||||
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||
# Use history substring search
|
||||
source /usr/share/zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh
|
||||
|
||||
|
||||
# Offer to install missing package if command is not found
|
||||
|
@ -62,11 +48,6 @@ if [[ -r /usr/share/zsh/functions/command-not-found.zsh ]]; then
|
|||
export PKGFILE_PROMPT_INSTALL_MISSING=1
|
||||
fi
|
||||
|
||||
# Use syntax highlighting
|
||||
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||
# Use history substring search
|
||||
source /usr/share/zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh
|
||||
|
||||
# Key bindings section
|
||||
# vi mode
|
||||
bindkey -v
|
||||
|
@ -128,28 +109,3 @@ bindkey '^[[B' history-substring-search-down
|
|||
# exec tmux
|
||||
# fi
|
||||
|
||||
# Aliases
|
||||
alias clear='clear && ufetch'
|
||||
alias cls='/usr/bin/clear'
|
||||
alias lsc='/usr/bin/ls --color=auto' # Default ls with colors
|
||||
# alias ls='logo-ls -Dh' # Modern ls https://github.com/Yash-Handa/logo-ls
|
||||
alias jls='jls -lh'
|
||||
alias ls='jls'
|
||||
alias cmus='cmus-rpc-rs --link &>/dev/null & cmus'
|
||||
alias neofetch='neofetch --kitty /mnt/Data/Personalize/Wallpapers/anime --crop_mode fill --crop_offset center --xoffset 1 --yoffset 1'
|
||||
alias nfe='neofetch'
|
||||
|
||||
|
||||
# Fix cava not showing bars
|
||||
LC_MESSAGES=en_US.UTF-8
|
||||
LANGUAGE=en_US
|
||||
LANG=en_US.UTF-8
|
||||
|
||||
# Auto run
|
||||
ufetch
|
||||
|
||||
#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
|
||||
export SDKMAN_DIR="$HOME/.sdkman"
|
||||
[[ -s "$HOME/.sdkman/bin/sdkman-init.sh" ]] && source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||
|
||||
eval "$(starship init zsh)"
|
||||
|
|
60
README.md
|
@ -1,42 +1,26 @@
|
|||
# My configs 😃
|
||||
### I use arch btw 🥰
|
||||
## Screenshots
|
||||
![](./Screenshots/zsh-neofetch-kitty-cmus-notify-v0.3.png)
|
||||
![](./Screenshots/zsh-neofetch-kitty-cava-tty_clock-v0.3.png)
|
||||
![](./Screenshots/zsh-kitty-v0.3.png)
|
||||
|
||||
```bash
|
||||
-` anas@archLegion
|
||||
.o+` ---------------
|
||||
`ooo/ OS: Arch Linux x86_64
|
||||
`+oooo: Host: 81SX Legion Y540-15IRH
|
||||
`+oooooo: Kernel: 5.18.10-zen1-1-zen
|
||||
-+oooooo+: Uptime: 8 hours, 13 mins
|
||||
`/:-:++oooo+: Packages: 1005 (pacman)
|
||||
`/++++/+++++++: Shell: zsh 5.9
|
||||
`/++++++++++++++: Resolution: 1920x1080 @ 144.00Hz
|
||||
`/+++ooooooooooooo/` WM: dwm
|
||||
./ooosssso++osssssso+` Theme: Breeze [GTK2/3]
|
||||
.oossssso-````/ossssss+` Icons: breeze [GTK2/3]
|
||||
-osssssso. :ssssssso. Terminal: alacritty
|
||||
:osssssss/ osssso+++. CPU: Intel i7-9750H (12) @ 4.500GHz [57.0°C]
|
||||
/ossssssss/ +ssssooo/- GPU: NVIDIA GeForce GTX 1660 Ti Mobile
|
||||
`/ossssso+/:- -:/+osssso+- Memory: 3700MiB / 15917MiB (23%)
|
||||
`+sso+:-` `.-/+oso: Battery0: 59% [Unknown]
|
||||
`++:. `-/+/
|
||||
.` `/
|
||||
```
|
||||
## Ref
|
||||
### Laptop stuff
|
||||
* If u use a laptop like me and only use [yo-dwm][yo-dwm on github] or any other standalone WM u may notch that the touchpad doesn't work as you expect (like u can't perform the mouse button clicks with it), in this case, you need to configure the touchpad driver(and maybe download the driver itself). In most cases [libinput][libinput on arch wiki] is more than enough and it's installed by default with Xorg-server and Wayland, and this is what I'll go with. see [30-touchpad.conf](./etc/X11/xorg.conf.d/30-touchpad.conf), but you maybe want to use [synaptics][synaptics on arch wiki] instant if u want a specific feature that doesn't exist in libinput yet like the Circular scrolling
|
||||
> I notch that the disable touchpad while typing option doesn't work with me when I trayd synaptics idk why but it works just fine with libinput
|
||||
* When u use ur laptop as a daily driver then u may be concerned about the battery life (especially when u using a gaming laptop) and if ur laptop is from Lenovo like me u maybe used to have control over the charger to select a specific percentage for the battery and when the battery reaches it the laptop will stop the charging and it'll run on the charger only without taking anything from the battery and u save your battery life by reducing the charging cycles and the all is happy :D, so u can use [tlp][tlp on arch wiki] for this job and u can see(or steal) my configure from [tlp.conf](./etc/tlp.conf) which is just the default one with enabling the threshold mode to stop charging at 60%
|
||||
|
||||
#### Index
|
||||
- [/etc](./etc)
|
||||
- [.config](./.config)
|
||||
- [.zshrc](./.zshrc) my main shell
|
||||
- [.tmux.conf](./.tmux.conf)
|
||||
### other
|
||||
#### Browser
|
||||
* If u want to put the tabs on the bottom of the window on Firefox then u have to move the [userChrome.css](./.mozilla/firefox/chrome/userChrome.css) file into ur Firefox user directory(u can find it in `~/.mozilla/firefox/`) in the `chrome` dir or create it if doesn't exist, and then u have to enable the `legacy user profile customizations stylesheets feature from [about:config](about:config)
|
||||
|
||||
## Also available on
|
||||
* [GitLab](https://gitlab.com/Anas-Elgarhy/dotfiles)
|
||||
* [BitBucket](https://bitbucket.org/anas_elgarhy/dotfiles)
|
||||
* [Codeberg](https://codeberg.org/anas-elgarhy/dotfiles)
|
||||
* [Notabug](https://notabug.org/anas-elgarhy/dotfiles) not instant updated
|
||||
* [disroot](https://git.disroot.org/anas-elgarhy/dotfiles)
|
||||
|
||||
#### Screenshots
|
||||
![terminal and tmux and dwm and cava and cmus and zsh and ufetch and cmatrix](./Screenshots/1.png)
|
||||
![neovim with a java code](./Screenshots/neovim.png "NeoVim")
|
||||
- I use [Nvchad](https://github.com/NvChad/NvChad)
|
||||
|
||||
#### Also available on
|
||||
- [GitLab](https://gitlab.com/Anas-Elgarhy/dotfiles)
|
||||
- [BitBucket](https://bitbucket.org/anas_elgarhy/dotfiles)
|
||||
- [Codeberg](https://codeberg.org/anas-elgarhy/dotfiles)
|
||||
- [Notabug](https://notabug.org/anas-elgarhy/dotfiles) not instant updated
|
||||
[yo-dwm on github]: https://github.com/anas-elgarhy/yo-dwm
|
||||
[libinput on arch wiki]: https://wiki.archlinux.org/title/Libinput
|
||||
[synaptics on arch wiki]: https://wiki.archlinux.org/title/Touchpad_Synaptics
|
||||
[tlp on arch wiki]: https://wiki.archlinux.org/title/TLP
|
||||
|
|
Before Width: | Height: | Size: 522 KiB |
Before Width: | Height: | Size: 410 KiB |
Before Width: | Height: | Size: 500 KiB |
BIN
Screenshots/zsh-kitty-v0.3.png
Normal file
After Width: | Height: | Size: 772 KiB |
BIN
Screenshots/zsh-neofetch-kitty-cava-tty_clock-v0.3.png
Normal file
After Width: | Height: | Size: 992 KiB |
BIN
Screenshots/zsh-neofetch-kitty-cmus-notify-v0.2.png
Normal file
After Width: | Height: | Size: 1.1 MiB |
BIN
Screenshots/zsh-neofetch-kitty-cmus-notify-v0.3.png
Normal file
After Width: | Height: | Size: 1.2 MiB |
BIN
Screenshots/zsh-neofetch-kitty-v0.2.png
Normal file
After Width: | Height: | Size: 722 KiB |
12
etc/X11/xorg.conf.d/30-touchpad.conf
Normal file
|
@ -0,0 +1,12 @@
|
|||
Section "InputClass"
|
||||
Identifier "touchpad"
|
||||
Driver "libinput"
|
||||
MatchIsTouchpad "on"
|
||||
Option "Tapping" "on"
|
||||
Option "TappingButtonMap" "lrm"
|
||||
Option "ClickMethod" "clickfinger"
|
||||
Option "TappingDrag" "true"
|
||||
Option "TappingDragLock" "true"
|
||||
Option "NaturalScrolling" "false"
|
||||
Option "DisableWhileTyping" "true"
|
||||
EndSection
|
108
etc/tlp.conf
|
@ -24,9 +24,7 @@
|
|||
# tlp - Parameters for power saving
|
||||
|
||||
# Set to 0 to disable, 1 to enable TLP.
|
||||
# Default: 1
|
||||
|
||||
#TLP_ENABLE=1
|
||||
TLP_ENABLE=1
|
||||
|
||||
# Control how warnings about invalid settings are issued:
|
||||
# 0=disabled,
|
||||
|
@ -39,15 +37,11 @@
|
|||
|
||||
# Operation mode when no power supply can be detected: AC, BAT.
|
||||
# Concerns some desktop and embedded hardware only.
|
||||
# Default: <none>
|
||||
|
||||
#TLP_DEFAULT_MODE=AC
|
||||
TLP_DEFAULT_MODE=AC
|
||||
|
||||
# Operation mode select: 0=depend on power source, 1=always use TLP_DEFAULT_MODE
|
||||
# Note: use in conjunction with TLP_DEFAULT_MODE=BAT for BAT settings on AC.
|
||||
# Default: 0
|
||||
|
||||
#TLP_PERSISTENT_DEFAULT=0
|
||||
TLP_PERSISTENT_DEFAULT=0
|
||||
|
||||
# Power supply classes to ignore when determining operation mode: AC, USB, BAT.
|
||||
# Separate multiple classes with spaces.
|
||||
|
@ -58,10 +52,8 @@
|
|||
|
||||
# Seconds laptop mode has to wait after the disk goes idle before doing a sync.
|
||||
# Non-zero value enables, zero disables laptop mode.
|
||||
# Default: 0 (AC), 2 (BAT)
|
||||
|
||||
#DISK_IDLE_SECS_ON_AC=0
|
||||
#DISK_IDLE_SECS_ON_BAT=2
|
||||
DISK_IDLE_SECS_ON_AC=0
|
||||
DISK_IDLE_SECS_ON_BAT=2
|
||||
|
||||
# Dirty page values (timeouts in secs).
|
||||
# Default: 15 (AC), 60 (BAT)
|
||||
|
@ -82,10 +74,8 @@
|
|||
# and therefore kernel and most distributions have chosen them as defaults.
|
||||
# You should have done your research about advantages/disadvantages *before*
|
||||
# changing the governor.
|
||||
# Default: <none>
|
||||
|
||||
#CPU_SCALING_GOVERNOR_ON_AC=powersave
|
||||
#CPU_SCALING_GOVERNOR_ON_BAT=powersave
|
||||
CPU_SCALING_GOVERNOR_ON_AC=performance
|
||||
CPU_SCALING_GOVERNOR_ON_BAT=powersave
|
||||
|
||||
# Set the min/max frequency available for the scaling governor.
|
||||
# Possible values depend on your CPU. For available frequencies see
|
||||
|
@ -131,26 +121,20 @@
|
|||
# Set the CPU "turbo boost" (Intel) or "turbo core" (AMD) feature:
|
||||
# 0=disable, 1=allow.
|
||||
# Note: a value of 1 does *not* activate boosting, it just allows it.
|
||||
# Default: <none>
|
||||
|
||||
#CPU_BOOST_ON_AC=1
|
||||
#CPU_BOOST_ON_BAT=0
|
||||
CPU_BOOST_ON_AC=1
|
||||
CPU_BOOST_ON_BAT=0
|
||||
|
||||
# Set the Intel CPU HWP dynamic boost feature:
|
||||
# 0=disable, 1=enable.
|
||||
# Requires intel_pstate scaling driver in 'active' mode and Intel Core i
|
||||
# 6th gen. or newer CPU.
|
||||
# Default: <none>
|
||||
|
||||
#CPU_HWP_DYN_BOOST_ON_AC=1
|
||||
#CPU_HWP_DYN_BOOST_ON_BAT=0
|
||||
CPU_HWP_DYN_BOOST_ON_AC=1
|
||||
CPU_HWP_DYN_BOOST_ON_BAT=0
|
||||
|
||||
# Minimize number of used CPU cores/hyper-threads under light load conditions:
|
||||
# 0=disable, 1=enable.
|
||||
# Default: 0 (AC), 1 (BAT)
|
||||
|
||||
#SCHED_POWERSAVE_ON_AC=0
|
||||
#SCHED_POWERSAVE_ON_BAT=1
|
||||
SCHED_POWERSAVE_ON_AC=0
|
||||
SCHED_POWERSAVE_ON_BAT=1
|
||||
|
||||
# Kernel NMI Watchdog:
|
||||
# 0=disable (default, saves power), 1=enable (for kernel debugging only).
|
||||
|
@ -164,10 +148,8 @@
|
|||
# thermal and fan speed. Values are given in order of increasing power saving.
|
||||
# Note: check the output of tlp-stat -p to determine availability on your
|
||||
# hardware and additional profiles such as: balanced-performance, quiet, cool.
|
||||
# Default: <none>
|
||||
|
||||
#PLATFORM_PROFILE_ON_AC=performance
|
||||
#PLATFORM_PROFILE_ON_BAT=low-power
|
||||
PLATFORM_PROFILE_ON_AC=balanced_performance
|
||||
PLATFORM_PROFILE_ON_BAT=balance_power
|
||||
|
||||
# Define disk devices on which the following DISK/AHCI_RUNTIME parameters act.
|
||||
# Separate multiple devices with spaces.
|
||||
|
@ -202,10 +184,8 @@
|
|||
# See 'man hdparm' for details.
|
||||
# Separate values for multiple disks with spaces. Use the special value 'keep'
|
||||
# to keep the hardware default for the particular disk.
|
||||
# Default: <none>
|
||||
|
||||
#DISK_SPINDOWN_TIMEOUT_ON_AC="0 0"
|
||||
#DISK_SPINDOWN_TIMEOUT_ON_BAT="0 0"
|
||||
DISK_SPINDOWN_TIMEOUT_ON_AC="keep"
|
||||
DISK_SPINDOWN_TIMEOUT_ON_BAT="keep"
|
||||
|
||||
# Select I/O scheduler for the disk devices.
|
||||
# Multi queue (blk-mq) schedulers:
|
||||
|
@ -310,10 +290,8 @@
|
|||
#RADEON_POWER_PROFILE_ON_BAT=default
|
||||
|
||||
# Wi-Fi power saving mode: on=enable, off=disable.
|
||||
# Default: off (AC), on (BAT)
|
||||
|
||||
#WIFI_PWR_ON_AC=off
|
||||
#WIFI_PWR_ON_BAT=on
|
||||
WIFI_PWR_ON_AC=off
|
||||
WIFI_PWR_ON_BAT=off
|
||||
|
||||
# Disable Wake-on-LAN: Y/N.
|
||||
# Default: Y
|
||||
|
@ -324,10 +302,8 @@
|
|||
# A value of 0 disables, >= 1 enables power saving.
|
||||
# Note: 1 is recommended for Linux desktop environments with PulseAudio,
|
||||
# systems without PulseAudio may require 10.
|
||||
# Default: 1
|
||||
|
||||
#SOUND_POWER_SAVE_ON_AC=1
|
||||
#SOUND_POWER_SAVE_ON_BAT=1
|
||||
SOUND_POWER_SAVE_ON_AC=0
|
||||
SOUND_POWER_SAVE_ON_BAT=10
|
||||
|
||||
# Disable controller too (HDA only): Y/N.
|
||||
# Note: effective only when SOUND_POWER_SAVE_ON_AC/BAT is activated.
|
||||
|
@ -376,9 +352,7 @@
|
|||
#RUNTIME_PM_DISABLE="44:55.6"
|
||||
|
||||
# Set to 0 to disable, 1 to enable USB autosuspend feature.
|
||||
# Default: 1
|
||||
|
||||
#USB_AUTOSUSPEND=1
|
||||
USB_AUTOSUSPEND=1
|
||||
|
||||
# Exclude listed devices from USB autosuspend (separate with spaces).
|
||||
# Use lsusb to get the ids.
|
||||
|
@ -390,9 +364,7 @@
|
|||
|
||||
# Exclude audio devices from USB autosuspend:
|
||||
# 0=do not exclude, 1=exclude.
|
||||
# Default: 1
|
||||
|
||||
#USB_EXCLUDE_AUDIO=1
|
||||
USB_EXCLUDE_AUDIO=1
|
||||
|
||||
# Exclude bluetooth devices from USB autosuspend:
|
||||
# 0=do not exclude, 1=exclude.
|
||||
|
@ -402,9 +374,7 @@
|
|||
|
||||
# Exclude phone devices from USB autosuspend:
|
||||
# 0=do not exclude, 1=exclude (enable charging).
|
||||
# Default: 0
|
||||
|
||||
#USB_EXCLUDE_PHONE=0
|
||||
USB_EXCLUDE_PHONE=0
|
||||
|
||||
# Exclude printers from USB autosuspend:
|
||||
# 0=do not exclude, 1=exclude.
|
||||
|
@ -426,9 +396,7 @@
|
|||
|
||||
# Set to 1 to disable autosuspend before shutdown, 0 to do nothing
|
||||
# Note: use as a workaround for USB devices that cause shutdown problems.
|
||||
# Default: 0
|
||||
|
||||
#USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN=0
|
||||
# USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN=0
|
||||
|
||||
# Restore radio device state (Bluetooth, WiFi, WWAN) from previous shutdown
|
||||
# on system startup: 0=disable, 1=enable.
|
||||
|
@ -440,21 +408,15 @@
|
|||
|
||||
# Radio devices to disable on startup: bluetooth, nfc, wifi, wwan.
|
||||
# Separate multiple devices with spaces.
|
||||
# Default: <none>
|
||||
|
||||
#DEVICES_TO_DISABLE_ON_STARTUP="bluetooth nfc wifi wwan"
|
||||
DEVICES_TO_DISABLE_ON_STARTUP="bluetooth"
|
||||
|
||||
# Radio devices to enable on startup: bluetooth, nfc, wifi, wwan.
|
||||
# Separate multiple devices with spaces.
|
||||
# Default: <none>
|
||||
|
||||
#DEVICES_TO_ENABLE_ON_STARTUP="wifi"
|
||||
# DEVICES_TO_ENABLE_ON_STARTUP="wifi wwan"
|
||||
|
||||
# Radio devices to disable on shutdown: bluetooth, nfc, wifi, wwan.
|
||||
# Note: use as a workaround for devices that are blocking shutdown.
|
||||
# Default: <none>
|
||||
|
||||
#DEVICES_TO_DISABLE_ON_SHUTDOWN="bluetooth nfc wifi wwan"
|
||||
# DEVICES_TO_DISABLE_ON_SHUTDOWN="bluetooth nfc wifi wwan"
|
||||
|
||||
# Radio devices to enable on shutdown: bluetooth, nfc, wifi, wwan.
|
||||
# (to prevent other operating systems from missing radios).
|
||||
|
@ -496,8 +458,6 @@
|
|||
|
||||
# BAT0: Primary / Main / Internal battery (values in %)
|
||||
# Note: also use for batteries BATC, BATT and CMB0
|
||||
# Default: <none>
|
||||
|
||||
START_CHARGE_THRESH_BAT0=50
|
||||
STOP_CHARGE_THRESH_BAT0=1
|
||||
|
||||
|
@ -509,16 +469,12 @@ STOP_CHARGE_THRESH_BAT0=1
|
|||
#STOP_CHARGE_THRESH_BAT1=80
|
||||
|
||||
# Restore charge thresholds when AC is unplugged: 0=disable, 1=enable.
|
||||
# Default: 0
|
||||
|
||||
RESTORE_THRESHOLDS_ON_BAT="0"
|
||||
RESTORE_THRESHOLDS_ON_BAT="1"
|
||||
|
||||
# Control battery care drivers: 0=disable, 1=enable.
|
||||
# Default: 1 (all)
|
||||
|
||||
#NATACPI_ENABLE=1
|
||||
#TPACPI_ENABLE=1
|
||||
#TPSMAPI_ENABLE=1
|
||||
NATACPI_ENABLE=1
|
||||
TPACPI_ENABLE=1
|
||||
TPSMAPI_ENABLE=1
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# tlp-rdw - Parameters for the radio device wizard
|
||||
|
|
1
etc/vconsole.conf
Normal file
|
@ -0,0 +1 @@
|
|||
KEYMAP=dvorak-l
|
6
renovate.json
Normal file
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||
"extends": [
|
||||
"config:base"
|
||||
]
|
||||
}
|