diff --git a/bin/.bin/sshtmux b/bin/.bin/sshtmux
index 47cad92..ae1aa96 100755
--- a/bin/.bin/sshtmux
+++ b/bin/.bin/sshtmux
@@ -4,7 +4,7 @@
session_name="$(whoami)_sess"
if [ ! -z $1 ]; then
- ssh -t "$1" "tmux attach -t $session_name || tmux new -s $session_name"
+ ssh -t "$1" "tmux attach -t $session_name || DISPLAY=:0 tmux new -s $session_name"
else
echo "Usage: sshtmux HOSTNAME"
echo "You must specify a hostname"
diff --git a/bspwm/.config/bspwm/bspwmrc b/bspwm/.config/bspwm/bspwmrc
index b23b2bd..377b0cd 100755
--- a/bspwm/.config/bspwm/bspwmrc
+++ b/bspwm/.config/bspwm/bspwmrc
@@ -25,6 +25,8 @@ bspc config remove_unplugged_monitors true
## Honor size hints: do not make windows smaller than they wish to be
#bspc config honor_size_hints true
+bspc config ignore_ewmh_focus true
+
##Color settings
bspc config focused_border_color "#1ABB9B"
bspc config normal_border_color "#2D2D2D"
@@ -49,52 +51,53 @@ bspc config split_ratio 0.52
workspaces_multimonitor &
bspc rule -a screenkey --unmanage
-bspc rule -a gcolor2 state=floating center=true
-bspc rule -a lxappearance state=floating center=true
-bspc rule -a gmrun state=floating center=true
-bspc rule -a lxterminal state=floating center=true sticky=true
-#bspc rule -a urxvt state=floating center=true
-bspc rule -a viewnior state=floating center=true
-bspc rule -a file-roller state=floating center=true
-bspc rule -a floaterm state=floating center=true
-bspc rule -a spotify state=pseudo_tiled
-#bspc rule -a nautilus state=pseudo_tiled
-#bspc rule -a skype state=pseudo_tiled
-bspc rule -a file-roller state=pseudo_tiled
-bspc rule -a transmission-gtk state=pseudo_tiled
-bspc rule -a conky sticky=on manage=off lower=on
-bspc rule -a astime sticky=on
-bspc rule -a yad state=floating
-bspc rule -a Docky layer=above border=off manage=on
-bspc rule -a Plank layer=above border=off manage=on
-bspc rule -a wbar layer=above
-bspc rule -a dockbarx layer=above
-bspc rule -a google-chrome-unstable private=on
-bspc rule -a google-chrome-stable private=on
-bspc rule -a chromium private=on
-bspc rule -a firefox private=on
-bspc rule -a midori private=on
-bspc rule -a gnome-pie border=off manage=off
-bspc rule -a wpa_gui state=pseudo_tiled
-bspc rule -a libreoffice state=tiled
-bspc rule -a '*:libreofficedev' state=tiled
-bspc rule -a '*:soffice' state=tiled
-#bspc rule -a firefox desktop=I
-#bspc rule -a calibre desktop=II
-#bspc rule -a geany desktop=II
-#bspc rule -a deluge desktop=III
-bspc rule -a 9menu border=off manage=off
-bspc rule -a tint2 border=off manage=off
-#bspc desktop I --layout monocle
-#bspc desktop II --layout monocle
-bspc rule -a Godot state=pseudo_tiled
-bspc rule -a arduino state=pseudo_tiled
-bspc rule -a Tk state=pseudo_tiled
-bspc rule -a mcedit.py state=floating
-bspc rule -a yakuake manage=off layer=above
+#bspc rule -a gcolor2 state=floating center=true
+#bspc rule -a lxappearance state=floating center=true
+#bspc rule -a gmrun state=floating center=true
+#bspc rule -a lxterminal state=floating center=true sticky=true
+##bspc rule -a urxvt state=floating center=true
+#bspc rule -a viewnior state=floating center=true
+#bspc rule -a file-roller state=floating center=true
+#bspc rule -a floaterm state=floating center=true
+#bspc rule -a spotify state=pseudo_tiled
+##bspc rule -a nautilus state=pseudo_tiled
+##bspc rule -a skype state=pseudo_tiled
+#bspc rule -a file-roller state=pseudo_tiled
+#bspc rule -a transmission-gtk state=pseudo_tiled
+#bspc rule -a conky sticky=on manage=off lower=on
+#bspc rule -a astime sticky=on
+#bspc rule -a yad state=floating
+#bspc rule -a Docky layer=above border=off manage=on
+#bspc rule -a Plank layer=above border=off manage=on
+#bspc rule -a wbar layer=above
+#bspc rule -a dockbarx layer=above
+#bspc rule -a google-chrome-unstable private=on
+#bspc rule -a google-chrome-stable private=on
+#bspc rule -a chromium private=on
+#bspc rule -a firefox private=on fullscreen=on
+#bspc rule -a midori private=on
+#bspc rule -a gnome-pie border=off manage=off
+#bspc rule -a wpa_gui state=pseudo_tiled
+#bspc rule -a libreoffice state=tiled
+#bspc rule -a '*:libreofficedev' state=tiled
+#bspc rule -a '*:soffice' state=tiled
+##bspc rule -a firefox desktop=I
+##bspc rule -a calibre desktop=II
+##bspc rule -a geany desktop=II
+##bspc rule -a deluge desktop=III
+#bspc rule -a 9menu border=off manage=off
+#bspc rule -a tint2 border=off manage=off
+##bspc desktop I --layout monocle
+##bspc desktop II --layout monocle
+#bspc rule -a Godot state=pseudo_tiled
+#bspc rule -a Tk state=pseudo_tiled
+#bspc rule -a mcedit.py state=floating
+#bspc rule -a yakuake manage=off layer=above
bspc rule -a xsane manage=off layer=above
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
## Autogap adjusts windowgap automatically according to the number of
## windows on the desktop. Using it disables negative window gap.
diff --git a/picom/.config/picom/picom.conf b/picom/.config/picom/picom.conf
index ba70806..fa24dc5 100644
--- a/picom/.config/picom/picom.conf
+++ b/picom/.config/picom/picom.conf
@@ -1,3 +1,7 @@
active-opacity = 1.0;
inactive-opacity = 0.9;
+opacity-rule = [
+ "100:name ~?= 'YouTube — Mozilla Firefox'",
+ "100:name ~?= 'Twitch — Mozilla Firefox'"
+]
diff --git a/stowed.list b/stowed.list
index 4337f02..e416c20 100644
--- a/stowed.list
+++ b/stowed.list
@@ -2,6 +2,7 @@ bin
bspwm
dmenu
feh
+git
picom
polybar
sxhkd
diff --git a/sxhkd/.config/sxhkd/sxhkdrc b/sxhkd/.config/sxhkd/sxhkdrc
index b79d835..d595996 100755
--- a/sxhkd/.config/sxhkd/sxhkdrc
+++ b/sxhkd/.config/sxhkd/sxhkdrc
@@ -72,16 +72,19 @@ super + ctrl + Return
# bspc node -p \~{west,south,north,east}
# Presel the desktop for splitting in certain direction
-alt + shift + {q,s,z,d}
- bspc node @/ -p \~{west,south,north,east}
+# tonitch: I don't use that and it's more combersome when it happen
+# alt + shift + {q,s,z,d}
+# bspc node @/ -p \~{west,south,north,east}
-alt + shift + {h,j,k,l}
- bspc node @/ -p \~{west,south,north,east}
+# alt + shift + {h,j,k,l}
+# bspc node @/ -p \~{west,south,north,east}
+
+# alt + shift + {Left,Down,Up,Right}
+# bspc node @/ -p \~{west,south,north,east}
-alt + shift + {Left,Down,Up,Right}
- bspc node @/ -p \~{west,south,north,east}
# Set splitting ratio of windows
-alt + ctrl + {1-9}
+# alt + ctrl + {1-9} "to work with azerty"
+alt + ctrl + {ampersand,eacute,quotedbl,apostrophe,parenleft,minus,egrave,underscore,ccedilla}
bspc node -o 0.{1-9}
# Move current window to largest space or preselected area if there is one.
diff --git a/vim/.vim/UltiSnips/make.snippets b/vim/.vim/UltiSnips/make.snippets
new file mode 100644
index 0000000..3474bb2
--- /dev/null
+++ b/vim/.vim/UltiSnips/make.snippets
@@ -0,0 +1,31 @@
+snippet base "tonitch's makefile base" b
+
+.PHONY: all clean run
+VERSION = 0.0.1
+
+LIBS =
+CMACRO = -DVERSION=\"$(VERSION)\"
+
+CC = gcc
+CFLAGS = -g -Wall -Wextra -pedantic $(shell pkg-config $(LIBS) --cflags) $(CMACRO)
+LDFLAGS = $(shell pkg-config $(LIBS) --libs)
+
+all: main
+
+main: main.o
+ $(CC) $(CFLAGS) -o $@ $< $(LDFLAGS)
+
+%.o: %.c
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+clean:
+ rm -f *.o
+ rm -f main
+
+bear: clean
+ bear -- make
+
+run: main
+ ./$<
+
+endsnippet
diff --git a/vim/.vim/UltiSnips/markdown_tex.snippets b/vim/.vim/UltiSnips/markdown_tex.snippets
index b1cb475..5ae1854 100644
--- a/vim/.vim/UltiSnips/markdown_tex.snippets
+++ b/vim/.vim/UltiSnips/markdown_tex.snippets
@@ -62,3 +62,38 @@ priority -1
snippet "(\w+)" "latex default" r
\\`!p snip.rv = match.group(1)` $1
endsnippet
+
+snippet task "Create a task list item"
+- [ ] ${1:${VISUAL:item}}
+endsnippet
+
+snippet rest "add a restAPI endpoint" b
+#### ${1:${VISUAL:Title}}
+
+
+ ${2:${VISUAL:GET}}
/${3:${VISUAL:Endpoint}}
${4:${VISUAL:Description}}
+
+##### Parameters
+
+> | name | type | data type | description |
+> |-----------|-----------|-------------------------|-----------------------------------------------------------------------|
+> | None | required | object (JSON or YAML) | N/A |
+
+
+##### Responses
+
+> | http code | content-type | response |
+> |---------------|-----------------------------------|---------------------------------------------------------------------|
+> | \`200\` | \`text/plain;charset=UTF-8\` | \`Configuration created successfully\` |
+> | \`400\` | \`application/json\` | \`{"code":"400","message":"Bad Request"}\` |
+
+##### Example cURL
+
+> \`\`\`javascript
+> curl -X $2 -H "Content-Type: application/json" http://localhost:8889/$3
+> \`\`\`
+
+
+
+---------------------------------------------------------------------------------------
+endsnippet
diff --git a/vim/.vim/UltiSnips/openapi.snippets b/vim/.vim/UltiSnips/openapi.snippets
new file mode 100644
index 0000000..5d2f5c1
--- /dev/null
+++ b/vim/.vim/UltiSnips/openapi.snippets
@@ -0,0 +1,18 @@
+snippet base "Base" b
+openapi: 3.0.0
+info:
+ title: ${1:${VISUAL:Title}}
+ description: ${2:${VISUAL:Title}}
+ version: 0.0.1
+
+servers:
+ - url: ${3:${VISUAL:https://example.com/api}}
+ description: ${4:${VISUAL:default api point for the service}}
+
+$0
+endsnippet
+
+snippet desc "Description" b
+description: ${1:${VISUAL:Description}}
+endsnippet
+
diff --git a/vim/.vimrc b/vim/.vimrc
index bb31edc..d4622d8 100644
--- a/vim/.vimrc
+++ b/vim/.vimrc
@@ -1,8 +1,3 @@
-autocmd Filetype python noremap :vert term python -i %
-autocmd Filetype python noremap :vert term python %
-
-autocmd Filetype tex noremap :silent !pdflatex % && mupdf %:r.pdf&
-
autocmd FileType asm noremap :execute 'silent !qtspim' expand('%::p')
nnoremap :GFiles
@@ -18,6 +13,8 @@ let g:pymode_python = 'python3'
let g:pymode_options_max_line_length = 120
" let g:ctrlp_cmd = 'CtrlPTag'
let g:htmljinja_disable_detection = 1
+
+let g:vimtex_view_method = 'zathura'
let g:vimtex_grammar_vlty = {'lt_command': 'languagetool'}
let g:vimtex_grammar_textidote = {'jar': '/usr/share/java/textidote.jar'}
@@ -26,10 +23,6 @@ let g:vimtex_view_method = 'zathura'
" nnoremap (YCMFindSymbolInDirectory)
" nnoremap (YCMFindSymbolInWorkspace)
-function ManPage(expr)
- execute 'silent vert term' &keywordprg a:expr
-endfunction
-
nnoremap gd :YcmCompleter GoToDefinition
nnoremap gr :YcmCompleter GoToReferences
nnoremap K :YcmCompleter GetDoc
@@ -40,11 +33,9 @@ nnoremap :Make
nnoremap :Make run
"Documentation
-"nnoremap K :execute 'Man' expand('')
nnoremap K :execute 'vert term' &keywordprg ''
command Curl :execute 'vert term lynx -dump' escape(@+, '#')
command OpenLink :silent w !urlscan
-command -nargs=? Man call fzf#run(fzf#wrap({'source': 'whatis ' . shellescape() . '| sed -r "s/(^\w*)\s\((.*)\).*/\2 \1/"', 'sink': function('ManPage') , 'options': ['--preview', 'MANPAGER=cat MANWIDTH='. (&columns/2-4) .' man {1} {2}']}))
" AgIn: Start ag in the specified directory
"
@@ -85,27 +76,28 @@ let g:ycm_language_server = [
nnoremap za
syntax on
-set nu
-set rnu
-set hls
-set tabstop=4
-set shiftwidth=4
-set encoding=utf-8
-set nocompatible
-set ignorecase
-set nowrap
-set splitbelow splitright
-set spelllang+=fr
-set foldmethod=syntax
-set foldlevel=99
-set incsearch
set autochdir
-" set foldcolumn=1
set clipboard^=unnamed,unnamedplus
-set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<,space:·
set concealcursor=
set conceallevel=2
+set encoding=utf-8
+" set foldcolumn=1
+set foldlevel=99
+set foldmethod=syntax
+set hls
+set ignorecase
+set incsearch
+set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<,space:·
set mouse=a
+set nocompatible
+set nowrap
+set nu
+set rnu
+set shiftwidth=4
+set showcmd
+set spelllang+=fr
+set splitbelow splitright
+set tabstop=4
color desert
hi Normal ctermfg=None ctermbg=None
@@ -182,10 +174,6 @@ Plugin 'tikhomirov/vim-glsl'
"c sharp
" Plugin 'OmniSharp/omnisharp-vim'
-"java
-
-Plugin 'hdiniz/vim-gradle'
-
"latex
Plugin 'lervag/vimtex'