Compare commits

..

8 Commits

Author SHA1 Message Date
0c131fdbfa Radio 2025-02-17 20:55:38 +01:00
d4d4663876 tmux focus-event 2025-02-17 20:55:00 +01:00
076ff6fbe5 sxhkd super + g 2025-02-17 20:54:03 +01:00
082824261b adding a bunch of stuff (vim, nvim, bspwm) 2025-01-06 21:22:17 +01:00
851e88be15 adding emoji green 2025-01-06 21:20:33 +01:00
f755edaa08 Merge branch 'master' of git.herisson.ovh:tonitch/dotfiles 2025-01-06 21:18:17 +01:00
0c5f9af76f Config rounded edge picom 2025-01-06 21:17:33 +01:00
c94010fb12 adding dunst 2024-10-17 16:57:52 +02:00
18 changed files with 40 additions and 179 deletions

View File

@ -1,4 +0,0 @@
#!/bin/bash
curl -F"file=@$@" https://0x0.st | tee >(xclip -sel clip)

View File

@ -1,8 +0,0 @@
#!/bin/sh
tmux ls -F \#S | grep disc && \
tmux attach -t disc \
|| \
tmux new-session -s disc 'scli --save-history' \; \
split-window -h -l 75% 'aerc' \; \
split-window -v 'weechat' \; \

View File

@ -1,141 +0,0 @@
#!/bin/sh
VERSION="0.2.1"
usage() {
echo "emailbook $VERSION"'
A minimalistic address book for e-mails only.
Usage: emailbook FILE [OPTIONS]
Prints all values in FILE if no option is given.
Options:
-a, --add [KEY] VALUE Add KEY/VALUE pair to FILE. If KEY is omitted,
VALUE is used as key, too.
[-s, --search] QUERY Search FILE for entries with keys or values containing QUERY.
-k, --key QUERY Like `--search` but limit search to keys/aliases.
-v, --value QUERY Like `--search` but limit search to values.
-p, --parse SOURCE Parse stdin for e-mail addresses in header and add them to FILE.
SOURCE might be either --from, --to , --cc, --bcc, or --all.
-h, --help Show this help.
-V, --version Print version.
'
}
checkfilename() {
[ $QUIET ] || [ -e "$filename" ] \
|| echo "File $filename not found. Creating it." 1>&2
}
keyexists() {
escaped=$(echo "$*" | sed 's/[][\.|$(){}?+*^]/\\&/g')
# also check display name with/without double quotes
quotestoggled=$(echo "$*" | sed -E 's/^"([^"]+)"( +<[^>]+>)/\1\2/;t;s/^([^"]+?)( +<[^>]+>)/"\1"\2/')
quotestoggledescaped=$(echo "$quotestoggled" | sed 's/[][\.|$(){}?+*^]/\\&/g')
grep -q -E "^$escaped( :|\$)" "$filename" 2> /dev/null \
|| grep -q -E "^$quotestoggledescaped( :|\$)" "$filename" 2> /dev/null
}
addentry() {
if keyexists "$1"; then
[ $QUIET ] || echo "! $1 (skipped)"
else
[ "$2" ] && line="$1 : $2" || line="$1"
[ $QUIET ] || echo "+ $line"
echo "$line" >> "$filename"
fi
}
add() {
checkfilename
case $# in
1|2) addentry "$@" ;;
*) echo "Expected one or two arguments after -a!"; exit 1 ;;
esac
}
addfromstdin() {
# Skip lines without "@", skip lines containing no-reply (or similar),
# strip \r, strip leading spaces, do the following replacements:
# "'John Doe'" <xxx> → "John Doe" <xxx>
# 'John Doe' <xxx> → John Doe <xxx>
# "john.doe@example.com" <john.doe@example.com> → <john.doe@example.com>
# "<john.doe@example.com>" <john.doe@example.com> → <john.doe@example.com>
# john.doe@example.com → <john.doe@example.com>
grep '@' \
| grep -v -i -E '\bnot?[_-]?reply' \
| sed 's/\r$//' \
| sed -E 's/^ +//g' \
| sed -E "s/(\"?)'([^'\"]+)'(\"?)/\1\2\3/" \
| sed -E 's/^"<?([^">]*)>?" +<\1>/<\1>/' \
| sed -E 's/^[^<>@ ]*@[^<>@ ]+$/<\0>/' \
| sort -u \
| while read -r line; do addentry "$line"; done
}
searchall() {
# show entries with matching alias first
searchbyalias "$*"
searchbyvalueonly "$*"
}
searchbyalias() {
grep -i -E "$* :" "$filename" | sed -E 's/^[^:]+:\s*//'
}
searchbyvalue() {
sed -E 's/^[^:]+:\s*//' "$filename" | grep -i -E "$*"
}
searchbyvalueonly() {
# exclude matches found by searchbyalias
grep -i -E -v "$* :" "$filename" | sed -E 's/^[^:]+:\s*//' | grep -i -E "$*"
}
parsefields() {
# Find header fields starting with $1 (p.e. 'To:') plus following lines
# starting with a space. Split entries at commas except when quoted. Skip
# empty lines. Decode encoded strings. Squeeze double spaces.
sed -E '/^\r?$/Q' - \
| sed -E -n "/^$1:/{:a ; \$!N ; s/\n\s+/ / ; ta ; P ; D}" \
| sed -E "s/^$1:\\s*//" \
| grep -v -P '[\x80-\xFF]' \
| awk -vFPAT='([^,"]*)("[^"]+")?([^,]*)?' -vOFS='\n' \
'{for(i=1;i<=NF;i++) printf("%s\n",$i)}' \
| sed -E -e '/^ *$/d' \
| perl -CS -MEncode -ne 'print decode("MIME-Header", $_)' \
| sed -E -e 's/ +/ /g' \
| addfromstdin
}
parse() {
checkfilename
case "$1" in
--all) parsefields '(From|To|Cc|CC|Bcc)' ;;
# TODO: Include References, In-Reply-To, Reply-To, Return-Path?
--from) parsefields 'From' ;;
--to) parsefields 'To' ;;
--cc) parsefields '(Cc|CC)' ;;
--bcc) parsefields 'Bcc' ;;
esac
}
case "$1" in
-h|--help|'') usage; exit ;;
-V|--version) echo "$VERSION"; exit ;;
esac
filename="$1"; shift
case "$1" in
-q|--quiet) shift; QUIET=1 ;;
esac
case "$1" in
-a|--add) shift; add "$@" ;;
-s|--search) shift; searchall "$*" ;;
-k|--key) shift; searchbyalias "$*" ;;
-v|--value) shift; searchbyvalue "$*" ;;
-p|--parse) shift; parse "$@" ;;
*) searchall "$*" ;;
esac

View File

@ -1,9 +0,0 @@
current_resolution=$(xrandr | awk '/DSI1/ {print $4}')
if [[ $current_resolution == 1920x1200* ]];
then
xrandr --size 600x960
else
xrandr --size 1200x1920
fi
chwp

View File

@ -1355,6 +1355,7 @@
🈺 Japanese “open for business” button; U+1F23A
🈵 Japanese “no vacancy” button; U+1F235
🔴 red circle; U+1F534
🟢 green circle; U+1F7E2
🔵 blue circle; U+1F535
⚪ white circle; U+26AA
⚫ black circle; U+26AB

View File

@ -98,6 +98,8 @@ bspc rule -a Zathura state=tiled
bspc rule -a arduino state=pseudo_tiled
bspc rule -a Spotify desktop=VII follow=off focus=off
bspc rule -a discord desktop=VII follow=off focus=off
bspc rule -a steam_app_2666510 state=pseudo_tiled split_dir=south split_ratio 340 locked private layer=above rectangle=1920x340+0+740
#bspc rule -a steam_app_2666510 state=pseudo_tiling locked=on private=on split_dir=south split_ratio 296 layer=above rectangle=1920x296+0+784
## Autogap adjusts windowgap automatically according to the number of
## windows on the desktop. Using it disables negative window gap.

View File

@ -1,6 +1,6 @@
[user]
email = debucquoy.anthony@gmail.com
name = Anthony Debucquoy
email = tonitch@herisson.ovh
name = tonitch
signingkey = 3D06B2E67463D272D769DF59A78D6421F083D42E
[init]
defaultBranch = master
@ -17,3 +17,10 @@
fap = fetch --all --prune
[push]
autoSetupRemote = true
[sendemail]
smtpServer = mail.herisson.ovh
smtpEncryption = tls
smtpServerPort = 587
smtpUser = tonitch
smtpPass = bateaux
annotate = yes

View File

@ -1,3 +1,2 @@
vim.g.vimtex_view_method="zathura"
vim.opt.completeopt="menu,popup,noinsert,noselect"
vim.g.python3_host_prog="/bin/python"

View File

@ -21,4 +21,7 @@ do
vim.keymap.set('i', '<C-S>', function()
vim.lsp.buf.signature_help()
end, { desc = 'vim.lsp.buf.signature_help()' })
vim.keymap.set('n', ']g', vim.diagnostic.goto_next)
vim.keymap.set('n', '[g', vim.diagnostic.goto_prev)
end

View File

@ -1,5 +1,8 @@
active-opacity = 1.0;
inactive-opacity = 0.9;
backend = "glx";
shadow = true;
corner-radius = 10;
opacity-rule = [
"100:name ~?= 'YouTube — Mozilla Firefox'",
@ -7,3 +10,8 @@ opacity-rule = [
"100:name ~?= 'Netflix — Mozilla Firefox'",
"100:class_g = 'Zathura'"
]
animation = ({
triggers = ["open", "close"];
preset = "appear";
})

View File

@ -1,8 +1,8 @@
# bspwm hotkeys
#
# Cleanly quit bspwm
super + shift + q
bspc quit 1
super + shift + a
bspc quit 1 && pkill lemonpanel && pkill lemonbar
# Show keybindings
super + F1
@ -96,7 +96,7 @@ super + Return
# bspc node -n @/
# go (Shift=move) to desktop (and focus the monitor that the desktop is located on. Bspwm style)
super + {_,shift + }{1,2,3,4,5,6,7,8,9,0}
super + {_,shift + }{ampersand,eacute,quotedbl,apostrophe,parenleft,minus,egrave,underscore,ccedilla,agrave}
bspc {desktop -f,node -d} ^{1-9,10}
## Alternative: i3 style behavior (focus nth, desktop of the focused monitor)
@ -125,7 +125,7 @@ super + Tab
WindowSelector
#Focus windows by direction, works with multihead
super + {a,s,w,d}
super + {q,s,z,d}
focusmover {west,south,north,east}
super + {h,j,k,l}
@ -137,7 +137,7 @@ super + {Left,Down,Up,Right}
# Move tiled windows. Moving a tiled window to
# preselected one moves into preselection instead.
# Moving out of the screen should move the window to next monitor if possible
super + shift + {q,s,w,d}
super + shift + {q,s,z,d}
windowgrabber {west,south,north,east}
super + shift + {h,j,k,l}
@ -148,7 +148,7 @@ super + shift + {Left,Down,Up,Right}
euclid_mover {west,south,north,east}
#resize windows
super + ctrl + {a,s,w,d}
super + ctrl + {q,s,z,d}
bspwm_resize.sh {west,south,north,east}
super + ctrl + {h,j,k,l}
@ -192,7 +192,8 @@ super + shift + {comma,period}
# Change window gap
super + g
bspc config -d focused window_gap {$gap,$(($gap+$cgap)),$(($gap+$cgap+$gap))}
{bspc config window_gap 0 && bspc config top_padding 0 && bspc config bottom_padding 0 && bspc config right_padding 0 && bspc config left_padding 0,\
bspc config window_gap $(($gap+$cgap)) && bspc config top_padding $(($PANEL_HEIGHT-($gap-$cgap))) && bspc config bottom_padding -$gap && bspc config right_padding -$gap && bspc config left_padding -$gap}
super + button{4,5}
bspc config -d focused window_gap $((`bspc config -d focused window_gap` {+,-} 2 ))
@ -334,9 +335,6 @@ super + ctrl + space
{pkill picom ,\
picom -b }
ctrl + alt +t
pkill rotateScreen_au || rotateScreen_auto
# Remove receptacles
super + BackSpace
for i in $(bspc query -N -n .leaf.!window.local); do bspc node $i -k; done

View File

@ -1,5 +1,6 @@
set -g mouse
set -g set-clipboard on
set -g focus-events on
bind h selectp -L
bind j selectp -D

View File

@ -20,10 +20,14 @@ $0
clean:
rm -f *.o
rm -f $1
rm -f tags compile_commands.json
bear: clean
bear -- make
tags:
ctags **.{c,h}
run: $1
./$<

View File

@ -1,3 +1,2 @@
set keywordprg=go\ doc
unmap K
set makeprg=go\ run\ .

View File

@ -1 +0,0 @@
set tw=120

View File

@ -72,6 +72,7 @@ alias open="xdg-open"
alias sxiv=nsxiv
alias :q=exit
alias vim=nvim
alias radio="mpv https://radio.freenode.net/radio.ogg --volume=30"
# Theming section
autoload -U compinit colors zcalc
@ -188,8 +189,7 @@ bindkey '^[[B' history-substring-search-down
# Apply different settigns for different terminals
case $(basename "$(cat "/proc/$PPID/comm")") in
login)
RPROMPT="%(?.%{$fg[green]%} %{$reset_color%}.%{$fg[red]%}✗ %{$reset_color%})"
# RPROMPT="%{$fg[red]%} %(?..[%?])"
RPROMPT="%{$fg[red]%} %(?..[%?])"
alias x='startx ~/.xinitrc' # Type name of desired desktop after x, xinitrc is configured for it
;;
# 'tmux: server')