Compare commits
No commits in common. "5623f85d50d32d4229e525833f74e0ffe833e433" and "fd4ba05318ff9f3609f06b0edd87773f1200991e" have entirely different histories.
5623f85d50
...
fd4ba05318
49 changed files with 167 additions and 809 deletions
|
@ -1,11 +0,0 @@
|
|||
. ~/.profile
|
||||
if ! "$REMOTE" && test "$(tty)" = /dev/tty1; then
|
||||
mkdir -p "$HOME/.local/share/river"
|
||||
log="$HOME/.local/share/river/$(date +%Y-%m-%d@%H:%M:%S).log"
|
||||
exec env \
|
||||
XDG_CURRENT_DESKTOP=river \
|
||||
XDG_SESSION_DESKTOP=river \
|
||||
dbus-run-session river -log-level debug >"$log" 2>&1
|
||||
fi
|
||||
. ~/.bashrc
|
||||
|
52
.bashrc
52
.bashrc
|
@ -1,52 +0,0 @@
|
|||
source ~/.profile
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# History config
|
||||
export HISTSIZE=10000
|
||||
export HISTFILESIZE=10000
|
||||
shopt -s histappend # Append to history file instead of overwriting
|
||||
shopt -s cmdhist # Write a multi line command in a single line
|
||||
PROMPT_COMMAND="history -a;$PROMPT_COMMAND" # Save history on every command
|
||||
|
||||
stty -ixon # Make bash receive C-s for history search
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# Aliases
|
||||
alias gitdf='git --git-dir=$HOME/.config/dotfiles/ --work-tree=$HOME'
|
||||
alias ssh='TERM=xterm-256color ssh'
|
||||
alias e="$EDITOR"
|
||||
alias r="trash -r"
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# Notify terminal of current working directory
|
||||
# https://codeberg.org/dnkl/foot/wiki#user-content-bash-and-zsh
|
||||
_urlencode() {
|
||||
local length="${#1}"
|
||||
for (( i = 0; i < length; i++ )); do
|
||||
local c="${1:$i:1}"
|
||||
case $c in
|
||||
%) printf '%%%02X' "'$c" ;;
|
||||
*) printf "%s" "$c" ;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
osc7_cwd() {
|
||||
printf '\e]7;file://%s%s\e\\' "$HOSTNAME" "$(_urlencode "$PWD")"
|
||||
}
|
||||
|
||||
if ! "$REMOTE"; then
|
||||
PROMPT_COMMAND="osc7_cwd;$PROMPT_COMMAND"
|
||||
fi
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# GPG SSH agent
|
||||
if ! "$REMOTE"; then
|
||||
unset SSH_AGENT_PID
|
||||
if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then
|
||||
# Start if not started
|
||||
gpg-agent --daemon 2>/dev/null
|
||||
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
|
||||
fi
|
||||
fi
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
# Puntos
|
||||
|
||||
Mis archivos de configuración
|
||||
|
||||
## Aplicar
|
||||
|
||||
Para bajar la repo y poner los archivos donde van, hacer esto:
|
||||
|
||||
```sh
|
||||
git clone --bare --recurse-submodules https://cgit.nulo.in/puntos ~/.config/dotfiles
|
||||
git --git-dir=$HOME/.config/dotfiles --work-tree=$HOME checkout
|
||||
```
|
||||
|
||||
Después cambiamos la shell por zsh:
|
||||
```sh
|
||||
chsh -s /bin/zsh
|
||||
```
|
||||
|
||||
Ya en zsh, podemos usar `gitdf` para manejar la repo.
|
||||
```sh
|
||||
gitdf submodule update # Descargar (o actualizar) plugins
|
||||
```
|
||||
|
||||
## Dependencias
|
||||
|
||||
Probablemente incompleto.
|
||||
|
||||
### Alpine
|
||||
|
||||
```sh
|
||||
apk add zsh zsh-vcs fzf kakoune
|
||||
```
|
Binary file not shown.
|
@ -82,10 +82,10 @@
|
|||
<!-- Set default monospace font -->
|
||||
<alias>
|
||||
<family>monospace</family>
|
||||
<prefer><family>Input Mono Narrow</family></prefer>
|
||||
<prefer><family>IBM Plex Mono</family></prefer>
|
||||
</alias>
|
||||
<alias>
|
||||
<family>Input Mono Narrow</family>
|
||||
<family>IBM Plex Mono</family>
|
||||
<default><family>monospace</family></default>
|
||||
</alias>
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Beware! This file is rewritten by htop when settings are changed in the interface.
|
||||
# The parser is also very primitive, and not human-friendly.
|
||||
htop_version=3.1.2
|
||||
htop_version=3.1.1
|
||||
config_reader_min_version=2
|
||||
fields=0 48 39 40 2 46 47 1
|
||||
sort_key=46
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
evaluate-commands %sh{
|
||||
black="rgb:000000"
|
||||
dark_gray="rgb:333333"
|
||||
gray="rgb:474747"
|
||||
gray="rgb:666666"
|
||||
white="rgb:FFFFFF"
|
||||
whiteish="rgb:DDDDDD"
|
||||
|
||||
|
@ -31,7 +31,7 @@ evaluate-commands %sh{
|
|||
|
||||
# For markup
|
||||
set-face global title +b
|
||||
set-face global header +b
|
||||
set-face global header Default
|
||||
set-face global block Default
|
||||
set-face global mono Default
|
||||
set-face global link +u
|
||||
|
|
|
@ -1,60 +1,51 @@
|
|||
add-highlighter global/number number-lines -relative -hlcursor
|
||||
# add-highlighter global/ number-lines -relative -hlcursor
|
||||
add-highlighter global/ wrap -word
|
||||
add-highlighter global/search dynregex '%reg{/}' 0:MatchingChar
|
||||
add-highlighter global/ show-matching
|
||||
|
||||
set global scrolloff 5,5
|
||||
|
||||
set-option global ui_options terminal_assistant=off
|
||||
|
||||
eval %sh{
|
||||
. ~/.config/river/colors
|
||||
if test "$dark" = true; then
|
||||
echo "colorscheme selenized-black"
|
||||
else
|
||||
echo "colorscheme grayscale-superiority"
|
||||
fi
|
||||
}
|
||||
colorscheme grayscale-superiority
|
||||
|
||||
eval %sh{kak-lsp --kakoune -s $kak_session}
|
||||
set global lsp_cmd "kak-lsp -s %val{session} -vvv --log /tmp/kak-lsp.log"
|
||||
set global lsp_diagnostic_line_error_sign '║'
|
||||
set global lsp_diagnostic_line_warning_sign '┊'
|
||||
set global lsp_hover_anchor true
|
||||
set global lsp_auto_show_code_actions true
|
||||
set global lsp_auto_highlight_references true
|
||||
hook global WinSetOption filetype=(zig|go) %{
|
||||
map buffer user r ': lsp-rename-prompt<ret>' -docstring "LSP Rename"
|
||||
map buffer user a ': lsp-code-actions<ret>' -docstring "LSP Code actions"
|
||||
map buffer user , ': lsp-hover<ret>' -docstring "LSP hover"
|
||||
map buffer user l ': enter-user-mode lsp<ret>' -docstring "LSP mode"
|
||||
lsp-enable-window
|
||||
lsp-auto-signature-help-enable
|
||||
}
|
||||
hook global KakEnd .* lsp-exit
|
||||
#source "%val{config}/todo-txt.kak"
|
||||
|
||||
# eval %sh{kak-lsp --kakoune -s $kak_session}
|
||||
# set global lsp_cmd "kak-lsp -s %val{session} -vvv --log /tmp/kak-lsp.log"
|
||||
# set global lsp_diagnostic_line_error_sign '║'
|
||||
# set global lsp_diagnostic_line_warning_sign '┊'
|
||||
# set global lsp_hover_anchor true
|
||||
# set global lsp_auto_highlight_references true
|
||||
# #set global lsp_hover_max_lines 3
|
||||
# hook global WinSetOption filetype=(go|javascript|typescript|zig) %{
|
||||
# map buffer user r ': lsp-rename-prompt<ret>' -docstring "LSP Rename"
|
||||
# map buffer user a ': lsp-code-actions<ret>' -docstring "LSP Code actions"
|
||||
# map buffer user , ': lsp-hover<ret>' -docstring "LSP hover"
|
||||
# map buffer user l ': enter-user-mode lsp<ret>' -docstring "LSP mode"
|
||||
# #set buffer idle_timeout 200
|
||||
# #lsp-inlay-diagnostics-enable buffer
|
||||
# lsp-enable-window
|
||||
# #lsp-auto-hover-enable
|
||||
# lsp-auto-signature-help-enable
|
||||
# }
|
||||
# hook global KakEnd .* lsp-exit
|
||||
|
||||
hook global WinSetOption filetype=(javascript|typescript|json|css) %{
|
||||
set-option buffer formatcmd %sh{ echo prettier --stdin-filepath $kak_buffile }
|
||||
hook buffer BufWritePre .* format-buffer
|
||||
}
|
||||
|
||||
source "%val{config}/plugins/zig.kak/rc/zig.kak"
|
||||
hook global WinSetOption filetype=zig %{
|
||||
set-option buffer formatcmd "zig fmt --stdin"
|
||||
hook buffer BufWritePre .* format-buffer
|
||||
}
|
||||
|
||||
hook global WinSetOption filetype=go %{
|
||||
set-option buffer formatcmd "goimports"
|
||||
hook buffer BufWritePre .* format-buffer
|
||||
}
|
||||
|
||||
source "%val{config}/plugins/zig.kak/rc/zig.kak"
|
||||
#hook global WinSetOption filetype=zig %{ zig-auto-run buffer }
|
||||
|
||||
hook global KakBegin .* %{ set-option global termcmd "footclient sh -c" }
|
||||
|
||||
map -docstring "yank the selection into the clipboard" global user y "<a-|> wl-copy<ret>"
|
||||
map -docstring "paste the clipboard" global user p "<a-!> wl-paste --no-newline<ret>"
|
||||
map -docstring "paste the clipboard" global user p "<a-!> wl-paste<ret>"
|
||||
map -docstring "comment" global user c ": comment-line<ret>"
|
||||
map -docstring "stop searching" global user h ": set-register slash ''<ret>"
|
||||
|
||||
|
@ -72,7 +63,28 @@ hook global ModuleLoaded smarttab %{
|
|||
set-option global softtabstop 4
|
||||
}
|
||||
|
||||
source "%val{config}/sleuth.kak"
|
||||
# https://github.com/mawww/kakoune/issues/2108#issuecomment-721313321
|
||||
define-command sleuth -docstring 'Heuristically set buffer options' %{
|
||||
try %{
|
||||
evaluate-commands -draft %{
|
||||
# Search the first indent level
|
||||
execute-keys 'gg' '/' '^\h+' '<ret>'
|
||||
|
||||
# Tab vs. Space
|
||||
# https://youtu.be/V7PLxL8jIl8
|
||||
try %{
|
||||
execute-keys '<a-k>' '\t' '<ret>'
|
||||
noexpandtab
|
||||
set-option buffer indentwidth 0
|
||||
} catch %{
|
||||
expandtab
|
||||
set-option buffer indentwidth %val{selection_length}
|
||||
set-option buffer softtabstop %val{selection_length}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
hook -group sleuth global BufOpenFile .* %{ sleuth }
|
||||
hook -group sleuth global BufWritePost .* %{ sleuth }
|
||||
|
||||
|
@ -84,24 +96,17 @@ evaluate-commands %sh{
|
|||
find -L "$kak_config/plugins/fzf.kak/rc/modules/" -type f -name '*.kak' -exec printf 'source "%s"\n' {} \;
|
||||
}
|
||||
hook global ModuleLoaded fzf %{
|
||||
set-option global fzf_terminal_command 'fzf-terminal kak -c %val{session} -e "%arg{@}"'
|
||||
set-option global fzf_default_opts '--color=light'
|
||||
set-option global fzf_preview_pos 'up'
|
||||
}
|
||||
hook global ModuleLoaded fzf-file %{
|
||||
set-option global fzf_file_command 'rg -L --hidden --files --glob !.git'
|
||||
set-option global fzf_file_command 'rg'
|
||||
}
|
||||
hook global ModuleLoaded fzf-grep %{
|
||||
set-option global fzf_grep_command 'rg'
|
||||
}
|
||||
map -docstring 'search files' global user f ': fzf-mode<ret>f'
|
||||
map -docstring 'search buffers' global user b ': fzf-mode<ret>b'
|
||||
map -docstring 'grep files' global user g ': fzf-mode<ret>g'
|
||||
|
||||
define-command fzf-terminal -params 1.. -shell-completion %{
|
||||
set-option global termcmd "footclient --app-id=fzf sh -c"
|
||||
wayland-terminal %arg{@}
|
||||
set-option global termcmd "footclient sh -c"
|
||||
}
|
||||
map -docstring 'search buffers' global user b ': fzf-mode<ret>b'
|
||||
|
||||
# ------------
|
||||
# Buffer switching
|
||||
|
@ -109,6 +114,8 @@ define-command fzf-terminal -params 1.. -shell-completion %{
|
|||
|
||||
source "%val{config}/plugins/kakoune-buffers/buffers.kak"
|
||||
|
||||
hook global WinDisplay .* info-buffers
|
||||
|
||||
map global normal ^ q
|
||||
map global normal <a-^> Q
|
||||
|
||||
|
@ -117,7 +124,5 @@ map global normal Q B
|
|||
map global normal <a-q> <a-b>
|
||||
map global normal <a-Q> <a-B>
|
||||
|
||||
map global normal b ':pick-buffers<ret>' -docstring 'pick buffers'
|
||||
map global normal b ':enter-buffers-mode<ret>' -docstring 'buffers…'
|
||||
map global normal B ':enter-user-mode -lock buffers<ret>' -docstring 'buffers (lock)…'
|
||||
|
||||
map global normal '<c-p>' '<tab>' -docstring 'jump forward'
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 62a3de575cceeaf9f556b824123a418def8bea7b
|
||||
Subproject commit 68f21eb78638e5a55027f11aa6cbbaebef90c6fb
|
|
@ -1 +1 @@
|
|||
Subproject commit 54e66fcb6adf247e6ea8465ec68fe507eb27f25f
|
||||
Subproject commit 06ec64885d7700be5c14c4adb2d36565bbdfc59d
|
|
@ -1,22 +0,0 @@
|
|||
# https://github.com/mawww/kakoune/issues/2108#issuecomment-721313321
|
||||
define-command sleuth -docstring 'Heuristically set buffer options' %{
|
||||
try %{
|
||||
evaluate-commands -draft %{
|
||||
# Search the first indent level
|
||||
execute-keys 'gg' '/' '^\h+' '<ret>'
|
||||
|
||||
# Tab vs. Space
|
||||
# https://youtu.be/V7PLxL8jIl8
|
||||
try %{
|
||||
execute-keys '<a-k>' '\t' '<ret>'
|
||||
noexpandtab
|
||||
set-option buffer indentwidth 0
|
||||
} catch %{
|
||||
expandtab
|
||||
set-option buffer indentwidth %val{selection_length}
|
||||
set-option buffer softtabstop %val{selection_length}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,20 +4,14 @@ set hidden " Do not save when switching buffers
|
|||
set inccommand=nosplit " Incremental live completion
|
||||
set tabstop=4 shiftwidth=4 " 4 space \t
|
||||
|
||||
set relativenumber cursorline cursorlineopt=number lazyredraw
|
||||
|
||||
set ignorecase smartcase
|
||||
|
||||
set updatetime=250
|
||||
|
||||
set termguicolors
|
||||
" colorscheme rose-pine
|
||||
colorscheme paige
|
||||
highlight! Comment guifg=#474747 guibg=#ffffff
|
||||
highlight! htmlComment guifg=#474747 guibg=#ffffff
|
||||
highlight! htmlCommentPart guifg=#474747 guibg=#ffffff
|
||||
highlight! gitcommitComment guifg=#474747 guibg=#ffffff
|
||||
|
||||
highlight! CursorLineNr ctermfg=232 ctermbg=254 gui=bold guifg=#080808 guibg=#cccccc
|
||||
" autocmd ColorScheme * highlight! Normal guibg=NONE
|
||||
|
||||
set completeopt=menu,menuone,noselect
|
||||
|
||||
|
@ -51,7 +45,7 @@ local on_attach = function(client, bufnr)
|
|||
buf_set_keymap('n', '<space>q', '<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>', opts)
|
||||
end
|
||||
|
||||
local servers = { 'zls', 'gopls' }
|
||||
local servers = { 'zls', 'gopls', 'tsserver', 'svelte' }
|
||||
for _, lsp in ipairs(servers) do
|
||||
nvim_lsp[lsp].setup {
|
||||
on_attach = on_attach,
|
||||
|
|
1
.config/nvim/pack/plugins/start/fzf
Submodule
1
.config/nvim/pack/plugins/start/fzf
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit e4c3ecc57e99f4037199f11b384a7f8758d1a0ff
|
|
@ -1 +1 @@
|
|||
Subproject commit 1f7bfa4007043c30027b2cd79625e8aac5cff1f9
|
||||
Subproject commit d6aa21476b2854694e6aa7b0941b8992a906c5ec
|
|
@ -1 +1 @@
|
|||
Subproject commit 531751ef03d77bf094f1fc07844b6c03ec4862bb
|
||||
Subproject commit 3a22ac6f8d87d42f89b9de791053c98b803f1b6d
|
1
.config/nvim/pack/plugins/start/rose-pine
Submodule
1
.config/nvim/pack/plugins/start/rose-pine
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit e9bf877ded422ce4323980c8347ca8578fe3b408
|
|
@ -1 +1 @@
|
|||
Subproject commit 627308e30639be3e2d5402808ce18690557e8292
|
||||
Subproject commit 349340debb34f6302931f0eb7139b2c11dfdf427
|
|
@ -1 +1 @@
|
|||
Subproject commit 430bc227654abc3eb5e27a9052a857344ca08cdc
|
||||
Subproject commit 2831f4872431685d28fbe3e567cd539a455fe750
|
|
@ -1 +1 @@
|
|||
Subproject commit 65ade2453342062010386e226eaa754889e2b557
|
||||
Subproject commit 38bd4010110614822cde523ebc5724963312ab63
|
|
@ -1 +1 @@
|
|||
Subproject commit 3a37f2a2414fa4c20c70e67e978977c1e2a43187
|
||||
Subproject commit 5f88e5a0fe7dcece0008dae3453edbd99153a042
|
1
.config/nvim/pack/plugins/start/vim-yami
Submodule
1
.config/nvim/pack/plugins/start/vim-yami
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit 716fe223a430a1379ef1e4bec84348a2f07430fd
|
|
@ -1 +1 @@
|
|||
Subproject commit 0762d89c24f5a1da6bf26ca83f3719c379008ff9
|
||||
Subproject commit fb534e7d12be7e529f79ad5ab99c08dc99f53294
|
|
@ -8,26 +8,29 @@ riverctl spawn "/usr/libexec/xdg-desktop-portal-wlr"
|
|||
|
||||
brillo -I
|
||||
riverctl spawn "pgrep -x foot >/dev/null || foot --server"
|
||||
riverctl spawn "pgrep -x mako >/dev/null || mako"
|
||||
if test -f ~/.config/river/coordenadas; then
|
||||
riverctl spawn "pgrep -x wlsunset >/dev/null || wlsunset $(cat ~/.config/river/coordenadas)"
|
||||
else
|
||||
echo "¡Falta ~/.config/river/coordenadas!"
|
||||
fi
|
||||
riverctl spawn "pgrep -x syncthing >/dev/null || syncthing -no-browser"
|
||||
riverctl spawn "pgrep -x river-tag-overl >/dev/null || river-tag-overlay --anchors=1:0:0:0"
|
||||
# yambar spawned by load-colors
|
||||
riverctl spawn "pgrep -x kanshi >/dev/null || kanshi"
|
||||
riverctl spawn "pgrep -x poweralertd >/dev/null || poweralertd"
|
||||
|
||||
riverctl set-repeat 30 290
|
||||
|
||||
riverctl xcursor-theme Adwaita
|
||||
|
||||
riverctl focus-follows-cursor normal
|
||||
riverctl input "2:10:TPPS/2_IBM_TrackPoint" pointer-accel 0.5
|
||||
riverctl input 2:7:SynPS/2_Synaptics_TouchPad tap enabled
|
||||
|
||||
riverctl float-filter-add title Picture-in-Picture
|
||||
riverctl float-filter-add title "Firefox — Sharing Indicator"
|
||||
riverctl float-filter-add app-id fzf
|
||||
|
||||
~/.config/river/keys
|
||||
|
||||
riverctl spawn "pgrep -x stacktile >/dev/null || stacktile --per-tag-config --drop-empty-configs --primary-sublayout=stack --inner-padding=0 --outer-padding=0"
|
||||
riverctl spawn "pgrep -x stacktile >/dev/null || stacktile --per-tag-config --drop-empty-configs --outer-padding=0 --inner-padding=6 --primary-sublayout=stack"
|
||||
riverctl default-layout stacktile
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/sh
|
||||
|
||||
mod="Mod4" # Super
|
||||
mod="Mod4"
|
||||
|
||||
riverctl map normal $mod Q close
|
||||
|
||||
|
@ -57,42 +57,39 @@ riverctl map-pointer normal $mod BTN_RIGHT resize-view
|
|||
define_tag() {
|
||||
riverctl map normal $mod $2 set-focused-tags $1
|
||||
riverctl map normal $mod+Shift $2 set-view-tags $1
|
||||
riverctl map normal $mod+Alt $2 toggle-focused-tags $1
|
||||
riverctl map normal $mod+Shift+Alt $2 toggle-view-tags $1
|
||||
riverctl map normal $mod+Control $2 toggle-focused-tags $1
|
||||
riverctl map normal $mod+Shift+Control $2 toggle-view-tags $1
|
||||
}
|
||||
|
||||
define_tag $((1 << 0)) Z
|
||||
define_tag $((1 << 1)) X
|
||||
define_tag $((1 << 2)) C
|
||||
define_tag $((1 << 3)) B
|
||||
define_tag $((1 << 4)) N
|
||||
define_tag $((1 << 5)) M
|
||||
define_tag $((1 << 6)) less
|
||||
define_tag $((1 << 7)) greater
|
||||
define_tag $((1 << 8)) question
|
||||
define_tag $((1 << 0)) 1
|
||||
define_tag $((1 << 1)) 2
|
||||
define_tag $((1 << 2)) 3
|
||||
define_tag $((1 << 3)) 4
|
||||
define_tag $((1 << 4)) 5
|
||||
define_tag $((1 << 5)) 6
|
||||
define_tag $((1 << 6)) 7
|
||||
define_tag $((1 << 7)) 8
|
||||
define_tag $((1 << 8)) 9
|
||||
|
||||
all_tags=$(((1 << 32) - 1))
|
||||
riverctl map normal $mod 0 set-focused-tags $all_tags
|
||||
riverctl map normal $mod+Shift 0 set-view-tags $all_tags
|
||||
|
||||
riverctl map normal $mod Space toggle-float
|
||||
riverctl map normal $mod G toggle-fullscreen
|
||||
riverctl map normal $mod F toggle-fullscreen
|
||||
|
||||
riverctl map normal $mod Up send-layout-cmd stacktile "primary_position top"
|
||||
riverctl map normal $mod Right send-layout-cmd stacktile "primary_position right"
|
||||
riverctl map normal $mod Down send-layout-cmd stacktile "primary_position bottom"
|
||||
riverctl map normal $mod Left send-layout-cmd stacktile "primary_position left"
|
||||
riverctl map normal $mod H send-layout-cmd stacktile "all_primary toggle"
|
||||
riverctl map normal $mod M send-layout-cmd stacktile "all_primary toggle"
|
||||
|
||||
riverctl declare-mode passthrough
|
||||
riverctl map normal $mod F11 enter-mode passthrough
|
||||
|
||||
riverctl map passthrough $mod F11 enter-mode normal
|
||||
|
||||
riverctl map normal $mod grave spawn 'pamixer --default-source --toggle-mute'
|
||||
|
||||
riverctl map normal $mod A spawn 'fnottctl actions'
|
||||
riverctl map normal $mod S spawn 'fnottctl dismiss'
|
||||
riverctl map normal $mod Z spawn 'pamixer --default-source --toggle-mute'
|
||||
|
||||
for mode in normal locked
|
||||
do
|
||||
|
@ -114,7 +111,7 @@ done
|
|||
|
||||
riverctl map normal $mod+Shift N spawn lock
|
||||
riverctl map normal $mod+Shift M spawn 'lock && doas pm-suspend'
|
||||
riverctl map normal $mod I spawn footclient
|
||||
riverctl map normal $mod U spawn fuzzel-run
|
||||
riverctl map normal $mod backslash spawn buscar-archivos
|
||||
riverctl map normal $mod+Shift T spawn footclient
|
||||
riverctl map normal $mod+Shift Return spawn fuzzel-run
|
||||
riverctl map normal $mod+Shift backslash spawn buscar-archivos
|
||||
riverctl map normal None Print spawn 'grimshot copy area'
|
||||
|
|
|
@ -4,11 +4,9 @@
|
|||
riverctl background-color 0x$background
|
||||
riverctl border-color-focused 0x$border_focused
|
||||
riverctl border-color-unfocused 0x$border_unfocused
|
||||
riverctl border-width 5
|
||||
riverctl border-width 3
|
||||
riverctl spawn 'killall yambar ; yambar'
|
||||
|
||||
riverctl spawn "killall fnott >/dev/null ; fnott"
|
||||
|
||||
if test -n "$bg"; then
|
||||
riverctl spawn "killall swaybg ; swaybg --image '$bg'"
|
||||
riverctl spawn "killall swaybg ; swaybg --image $bg"
|
||||
fi
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/sh
|
||||
|
||||
escape() {
|
||||
printf "%s" "$1" | sed 'sx\\x\\\\xg'
|
||||
printf "%s" "$1" | sed 's#\#\\#g'
|
||||
}
|
||||
notify-send "[$BUFFER] $SENDER" "$(escape "$MESSAGE")"
|
||||
|
|
|
@ -1,248 +0,0 @@
|
|||
### Variables
|
||||
#
|
||||
set $mod Mod4
|
||||
set $left h
|
||||
set $down j
|
||||
set $up k
|
||||
set $right l
|
||||
# Your preferred terminal emulator
|
||||
set $term footclient
|
||||
# Your preferred application launcher
|
||||
# Note: pass the final command to swaymsg so that the resulting window can be opened
|
||||
# on the original workspace that the command was run on.
|
||||
set $menu fuzzel-run
|
||||
|
||||
font Inter Medium 10
|
||||
|
||||
### Output configuration
|
||||
#
|
||||
# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
|
||||
output * bg "~/.config/river/wallpapers/Abyss Reflections - Cat ears.png" fill
|
||||
#
|
||||
# Example configuration:
|
||||
#
|
||||
# output HDMI-A-1 resolution 1920x1080 position 1920,0
|
||||
#
|
||||
# You can get the names of your outputs by running: swaymsg -t get_outputs
|
||||
|
||||
### Idle configuration
|
||||
#
|
||||
# Example configuration:
|
||||
#
|
||||
exec swayidle -w \
|
||||
timeout 300 'swaylock -f -c ffffff' \
|
||||
timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
|
||||
before-sleep 'swaylock -f -c ffffff'
|
||||
bindsym $mod+m exec swaylock
|
||||
bindsym $mod+Shift+m exec "swaylock -f && doas su -c 'echo mem > /sys/power/state'"
|
||||
|
||||
### Input configuration
|
||||
#
|
||||
input * {
|
||||
repeat_delay 290
|
||||
repeat_rate 30
|
||||
}
|
||||
|
||||
### Key bindings
|
||||
#
|
||||
# Basics:
|
||||
#
|
||||
# Start a terminal
|
||||
bindsym $mod+Return exec $term
|
||||
|
||||
# Kill focused window
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
# Start your launcher
|
||||
bindsym $mod+d exec $menu
|
||||
|
||||
# Drag floating windows by holding down $mod and left mouse button.
|
||||
# Resize them with right mouse button + $mod.
|
||||
# Despite the name, also works for non-floating windows.
|
||||
# Change normal to inverse to use left mouse button for resizing and right
|
||||
# mouse button for dragging.
|
||||
floating_modifier $mod normal
|
||||
|
||||
# Reload the configuration file
|
||||
bindsym $mod+Shift+c reload
|
||||
|
||||
# Exit sway (logs you out of your Wayland session)
|
||||
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
|
||||
#
|
||||
# Moving around:
|
||||
#
|
||||
# Move your focus around
|
||||
bindsym $mod+$left focus left
|
||||
bindsym $mod+$down focus down
|
||||
bindsym $mod+$up focus up
|
||||
bindsym $mod+$right focus right
|
||||
bindsym $mod+Left focus left
|
||||
bindsym $mod+Down focus down
|
||||
bindsym $mod+Up focus up
|
||||
bindsym $mod+Right focus right
|
||||
|
||||
# Move the focused window with the same, but add Shift
|
||||
bindsym $mod+Shift+$left move left
|
||||
bindsym $mod+Shift+$down move down
|
||||
bindsym $mod+Shift+$up move up
|
||||
bindsym $mod+Shift+$right move right
|
||||
bindsym $mod+Shift+Left move left
|
||||
bindsym $mod+Shift+Down move down
|
||||
bindsym $mod+Shift+Up move up
|
||||
bindsym $mod+Shift+Right move right
|
||||
|
||||
bindsym $mod+Control+$left move workspace to output left
|
||||
bindsym $mod+Control+$down move workspace to output down
|
||||
bindsym $mod+Control+$up move workspace to output up
|
||||
bindsym $mod+Control+$right move workspace to output right
|
||||
bindsym $mod+Control+Left move workspace to output left
|
||||
bindsym $mod+Control+Down move workspace to output down
|
||||
bindsym $mod+Control+Up move workspace to output up
|
||||
bindsym $mod+Control+Right move workspace to output right
|
||||
#
|
||||
# Workspaces:
|
||||
#
|
||||
# Switch to workspace
|
||||
bindsym $mod+u workspace 1:u
|
||||
bindsym $mod+i workspace 2:i
|
||||
bindsym $mod+o workspace 3:o
|
||||
bindsym $mod+p workspace 4:p
|
||||
bindsym $mod+y workspace 5:y
|
||||
bindsym $mod+6 workspace number 6
|
||||
bindsym $mod+7 workspace number 7
|
||||
bindsym $mod+8 workspace number 8
|
||||
bindsym $mod+9 workspace number 9
|
||||
bindsym $mod+0 workspace number 10
|
||||
# Move focused container to workspace
|
||||
bindsym $mod+Shift+u move container to workspace 1:u
|
||||
bindsym $mod+Shift+i move container to workspace 2:i
|
||||
bindsym $mod+Shift+o move container to workspace 3:o
|
||||
bindsym $mod+Shift+p move container to workspace 4:p
|
||||
bindsym $mod+Shift+y move container to workspace 5:y
|
||||
bindsym $mod+Shift+6 move container to workspace number 6
|
||||
bindsym $mod+Shift+7 move container to workspace number 7
|
||||
bindsym $mod+Shift+8 move container to workspace number 8
|
||||
bindsym $mod+Shift+9 move container to workspace number 9
|
||||
bindsym $mod+Shift+0 move container to workspace number 10
|
||||
#
|
||||
# Layout stuff:
|
||||
#
|
||||
bindsym $mod+w layout toggle split tabbed stacking
|
||||
bindsym $mod+e layout toggle split
|
||||
bindsym $mod+v split toggle
|
||||
bindsym $mod+s sticky toggle
|
||||
|
||||
# Make the current focus fullscreen
|
||||
bindsym $mod+f fullscreen
|
||||
|
||||
# Toggle the current focus between tiling and floating mode
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
|
||||
# Swap focus between the tiling area and the floating area
|
||||
bindsym $mod+space focus mode_toggle
|
||||
|
||||
# Move focus to the parent container
|
||||
bindsym $mod+a focus parent
|
||||
bindsym $mod+Shift+a focus child
|
||||
#
|
||||
# Scratchpad:
|
||||
#
|
||||
# Sway has a "scratchpad", which is a bag of holding for windows.
|
||||
# You can send windows there and get them back later.
|
||||
|
||||
# Move the currently focused window to the scratchpad
|
||||
bindsym $mod+Shift+minus move scratchpad
|
||||
|
||||
# Show the next scratchpad window or hide the focused scratchpad window.
|
||||
# If there are multiple scratchpad windows, this command cycles through them.
|
||||
bindsym $mod+minus scratchpad show
|
||||
#
|
||||
# Resizing containers:
|
||||
#
|
||||
mode "resize" {
|
||||
# left will shrink the containers width
|
||||
# right will grow the containers width
|
||||
# up will shrink the containers height
|
||||
# down will grow the containers height
|
||||
bindsym $left resize shrink width 10px
|
||||
bindsym $down resize grow height 10px
|
||||
bindsym $up resize shrink height 10px
|
||||
bindsym $right resize grow width 10px
|
||||
|
||||
# Ditto, with arrow keys
|
||||
bindsym Left resize shrink width 10px
|
||||
bindsym Down resize grow height 10px
|
||||
bindsym Up resize shrink height 10px
|
||||
bindsym Right resize grow width 10px
|
||||
|
||||
# Return to default mode
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
bindsym $mod+r mode "resize"
|
||||
|
||||
#
|
||||
# Status Bar:
|
||||
#
|
||||
bar {
|
||||
position top
|
||||
|
||||
status_command i3status
|
||||
|
||||
status_edge_padding 6
|
||||
status_padding 0
|
||||
separator_symbol " "
|
||||
workspace_min_width 30
|
||||
|
||||
strip_workspace_numbers yes
|
||||
|
||||
colors {
|
||||
statusline #000000
|
||||
background #ffffff
|
||||
focused_workspace #000000 #000000 #ffffff
|
||||
active_workspace #eca6ff #eca6ff #ffffff
|
||||
inactive_workspace #dfdfdf #dfdfdf #000000
|
||||
}
|
||||
}
|
||||
|
||||
client.focused #000000 #000000 #ffffff
|
||||
client.focused_inactive #eca6ff #eca6ff #000000
|
||||
client.unfocused #dfdfdf #dfdfdf #000000
|
||||
|
||||
bindsym $mod+z exec fnottctl dismiss
|
||||
bindsym $mod+x exec fnottctl actions
|
||||
bindsym Print exec 'grimshot copy area'
|
||||
|
||||
bindsym --locked XF86AudioRaiseVolume exec 'pamixer -i 5'
|
||||
bindsym --locked XF86AudioLowerVolume exec 'pamixer -d 5'
|
||||
bindsym --locked XF86AudioMute exec 'pamixer --toggle-mute'
|
||||
bindsym --locked XF86AudioMicMute exec 'pamixer --default-source --toggle-mute'
|
||||
bindsym --locked $mod+c exec 'pamixer --default-source --toggle-mute'
|
||||
|
||||
# https://github.com/altdesktop/playerctl
|
||||
bindsym --locked XF86AudioMedia exec 'playerctl play-pause'
|
||||
bindsym --locked XF86AudioPlay exec 'playerctl play-pause'
|
||||
bindsym --locked XF86AudioPrev exec 'playerctl previous'
|
||||
bindsym --locked XF86AudioNext exec 'playerctl next'
|
||||
|
||||
bindsym --locked XF86MonBrightnessUp exec 'brillo -A 5; brillo -O'
|
||||
bindsym --locked XF86MonBrightnessDown exec 'brillo -U 5; brillo -O'
|
||||
|
||||
default_border pixel 4
|
||||
smart_borders on
|
||||
|
||||
focus_follows_mouse no
|
||||
|
||||
for_window [title="."] inhibit_idle fullscreen
|
||||
|
||||
for_window [app_id="fzf"] floating enable
|
||||
|
||||
exec brillo -I
|
||||
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
|
||||
exec pipewire
|
||||
exec /usr/libexec/xdg-desktop-portal-wlr
|
||||
exec "foot --server"
|
||||
exec "wlsunset $(cat ~/.config/river/coordenadas)"
|
||||
exec "pgrep -x syncthing >/dev/null || syncthing -no-browser"
|
||||
exec kanshi
|
||||
exec fnott
|
|
@ -1,62 +0,0 @@
|
|||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
# https://github.com/jan-warchol/selenized/blob/e93e0d9fb47c7485f18fa16f9bdb70c2ee7fb5db/the-values.md
|
||||
|
||||
echo "# Autogenerated by ~/.config/themer/fnott.ini.sh
|
||||
|
||||
edge-margin-vertical=5
|
||||
edge-margin-horizontal=5
|
||||
padding-vertical=10
|
||||
padding-horizontal=10
|
||||
notification-margin=5
|
||||
selection-helper=fuzzel-run -d
|
||||
play-sound=mpv \${filename}
|
||||
|
||||
border-color=909090
|
||||
border-size=0
|
||||
title-font=sans serif:style=Italic:size=8
|
||||
summary-font=sans serif:style=Bold:size=16
|
||||
body-font=sans serif:size=12
|
||||
" > ~/.config/fnott/fnott.ini
|
||||
|
||||
rose_pine () {
|
||||
echo "
|
||||
background=$base
|
||||
title-color=$text
|
||||
summary-color=$text
|
||||
body-color=$text
|
||||
" >> ~/.config/fnott/fnott.ini
|
||||
}
|
||||
mono () {
|
||||
echo "
|
||||
background=$backgroundish
|
||||
title-color=$foreground
|
||||
summary-color=$foreground
|
||||
body-color=$foreground
|
||||
" >> ~/.config/fnott/fnott.ini
|
||||
}
|
||||
|
||||
if test "$1" = rose-pine; then
|
||||
. ~/.config/themer/themes/rose-pine.sh
|
||||
rose_pine
|
||||
elif test "$1" = rose-pine-dawn; then
|
||||
. ~/.config/themer/themes/rose-pine-dawn.sh
|
||||
rose_pine
|
||||
elif test "$1" = rose-pine-moon; then
|
||||
. ~/.config/themer/themes/rose-pine-moon.sh
|
||||
rose_pine
|
||||
elif test "$1" = mono; then
|
||||
. ~/.config/themer/themes/mono.sh
|
||||
mono
|
||||
elif test "$1" = mono-light; then
|
||||
. ~/.config/themer/themes/mono-light.sh
|
||||
mono
|
||||
else
|
||||
if test -n "$1"; then
|
||||
echo "I don't know that theme"
|
||||
else
|
||||
echo "No theme specified"
|
||||
fi
|
||||
exit 1
|
||||
fi
|
|
@ -11,13 +11,11 @@ lines = 10000
|
|||
hide-when-typing=yes
|
||||
|
||||
[main]
|
||||
font=monospace:pixelsize=17
|
||||
line-height=26px
|
||||
vertical-letter-offset=4px
|
||||
font=monospace:size=11
|
||||
line-height=18
|
||||
vertical-letter-offset=2
|
||||
|
||||
pad=0x0
|
||||
|
||||
initial-window-size-chars=120x24
|
||||
pad=4x4 center
|
||||
" > ~/.config/foot/foot.ini
|
||||
|
||||
rose_pine () {
|
||||
|
@ -61,7 +59,7 @@ rose_pine () {
|
|||
}
|
||||
mono () {
|
||||
if $dark; then
|
||||
echo "include = /usr/share/foot/themes/selenized-black" >> ~/.config/foot/foot.ini
|
||||
echo "include = /usr/share/foot/themes/tango" >> ~/.config/foot/foot.ini
|
||||
else
|
||||
echo "
|
||||
[colors]
|
||||
|
|
|
@ -18,9 +18,9 @@ export accent=$iris
|
|||
mono () {
|
||||
echo "
|
||||
export background=$background
|
||||
export foreground=$foreground
|
||||
export foreground=$foregroundish
|
||||
export selection_background=$backgroundish
|
||||
export selection_foreground=$foreground
|
||||
export selection_foreground=$foregroundish
|
||||
export border=$foreground
|
||||
export accent=$foreground
|
||||
" >> ~/.local/bin/fuzzel-run
|
||||
|
@ -51,14 +51,13 @@ else
|
|||
fi
|
||||
|
||||
echo "
|
||||
exec fuzzel --terminal=footclient --font='monospace:size=11' \
|
||||
exec fuzzel --terminal=footclient --font='Inter:style=Bold:size=11' \
|
||||
--prompt='➦ ' \
|
||||
--no-icons \
|
||||
--width=40 \
|
||||
--width=20 \
|
||||
--background=\${background}ff --text-color=\${foreground}ff \
|
||||
--match-color=\${accent}ff \
|
||||
--selection-color=\${selection_background}ff --selection-text-color=\${selection_foreground}ff \
|
||||
--horizontal-pad=12 \
|
||||
--border-width=1 --border-color=\${border}ff --border-radius=2 \"\$@\"
|
||||
" >> ~/.local/bin/fuzzel-run
|
||||
chmod +x ~/.local/bin/fuzzel-run
|
||||
|
|
|
@ -15,17 +15,14 @@ rose_pine () {
|
|||
fi
|
||||
echo "
|
||||
export background=$base
|
||||
export foreground=$text
|
||||
export border_focused=$border_focused
|
||||
export border_unfocused=$border_unfocused
|
||||
export dark=$dark
|
||||
" >> ~/.config/river/colors
|
||||
}
|
||||
mono () {
|
||||
test ! "$dark" = true && bg="export bg=~/.config/river/wallpapers/'Abyss Reflections - Cat ears.png'"
|
||||
echo "
|
||||
export background=$background
|
||||
export foreground=$foreground
|
||||
export border_focused=$accent
|
||||
export border_unfocused=$backgroundish
|
||||
export dark=$dark
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/sh
|
||||
export background=ffffff
|
||||
export backgroundish=dfdfdf
|
||||
export backgroundish=cccccc
|
||||
export foreground=000000
|
||||
export foregroundish=333333
|
||||
export accent=cf1bff
|
||||
export accent=56949f
|
||||
export dark=false
|
||||
|
|
|
@ -11,9 +11,8 @@ accent: &accent ${iris}ff
|
|||
mono () {
|
||||
echo "# Autogenerated by ~/.config/themer/yambar.sh
|
||||
background: &bg ${background}ff
|
||||
backgroundish: &bgish ${backgroundish}ff
|
||||
foreground: &fg ${foreground}ff
|
||||
accent: &accent ${accent}ff
|
||||
accent: &accent ${foreground}ff
|
||||
" > ~/.config/yambar/config.yml
|
||||
}
|
||||
|
||||
|
|
|
@ -1,13 +1,12 @@
|
|||
bar:
|
||||
height: 16
|
||||
location: top
|
||||
layer: top
|
||||
height: 20
|
||||
location: bottom
|
||||
spacing: 8
|
||||
right-margin: 8
|
||||
background: *bg
|
||||
foreground: *fg
|
||||
|
||||
font: sans-serif:size=12
|
||||
font: Inter:style=Medium:size=14
|
||||
|
||||
left:
|
||||
- river:
|
||||
|
@ -15,41 +14,9 @@ bar:
|
|||
base: &river_base
|
||||
margin: 8
|
||||
tag: id
|
||||
values: {}
|
||||
default: &river_default
|
||||
default: {string: {text: "{id}"}}
|
||||
values: &river_values
|
||||
1: {string: {text: "I"}}
|
||||
2: {string: {text: "II"}}
|
||||
3: {string: {text: "III"}}
|
||||
4: {string: {text: "IV"}}
|
||||
5: {string: {text: "V"}}
|
||||
6: {string: {text: "VI"}}
|
||||
7: {string: {text: "VII"}}
|
||||
8: {string: {text: "VIII"}}
|
||||
9: {string: {text: "IX"}}
|
||||
10: {empty: {}}
|
||||
11: {empty: {}}
|
||||
12: {empty: {}}
|
||||
13: {empty: {}}
|
||||
14: {empty: {}}
|
||||
15: {empty: {}}
|
||||
16: {empty: {}}
|
||||
17: {empty: {}}
|
||||
18: {empty: {}}
|
||||
19: {empty: {}}
|
||||
20: {empty: {}}
|
||||
21: {empty: {}}
|
||||
22: {empty: {}}
|
||||
23: {empty: {}}
|
||||
24: {empty: {}}
|
||||
25: {empty: {}}
|
||||
26: {empty: {}}
|
||||
27: {empty: {}}
|
||||
28: {empty: {}}
|
||||
29: {empty: {}}
|
||||
30: {empty: {}}
|
||||
31: {empty: {}}
|
||||
32: {empty: {}}
|
||||
content:
|
||||
map:
|
||||
tag: state
|
||||
|
@ -57,38 +24,22 @@ bar:
|
|||
focused:
|
||||
map:
|
||||
<<: *river_base
|
||||
default: {string: {text: "{id}", foreground: *bg}}
|
||||
deco: {background: {color: *accent}}
|
||||
values:
|
||||
<<: *river_values
|
||||
1: {string: {text: "I", foreground: *bg}}
|
||||
2: {string: {text: "II", foreground: *bg}}
|
||||
3: {string: {text: "III", foreground: *bg}}
|
||||
4: {string: {text: "IV", foreground: *bg}}
|
||||
5: {string: {text: "V", foreground: *bg}}
|
||||
6: {string: {text: "VI", foreground: *bg}}
|
||||
7: {string: {text: "VII", foreground: *bg}}
|
||||
8: {string: {text: "VIII", foreground: *bg}}
|
||||
9: {string: {text: "IX", foreground: *bg}}
|
||||
unfocused:
|
||||
map:
|
||||
<<: *river_base
|
||||
values:
|
||||
<<: *river_values
|
||||
default: {string: {text: "{id}"}}
|
||||
invisible:
|
||||
map:
|
||||
tag: occupied
|
||||
values:
|
||||
false: {empty: {}}
|
||||
true:
|
||||
map:
|
||||
deco: {background: {color: *bgish}}
|
||||
<<: *river_base
|
||||
values:
|
||||
<<: *river_values
|
||||
false:
|
||||
map:
|
||||
<<: *river_base
|
||||
values:
|
||||
<<: *river_values
|
||||
default: {string: {text: "{id}"}}
|
||||
|
||||
right:
|
||||
- network:
|
||||
name: eth0
|
||||
|
@ -131,7 +82,6 @@ bar:
|
|||
values:
|
||||
discharging: {string: {text: "{capacity}%"}}
|
||||
unknown: {string: {text: "{capacity}% limite"}}
|
||||
not charging: {string: {text: "{capacity}% limite"}}
|
||||
charging: {string: {text: "{capacity}% cargando"}}
|
||||
full: {string: {text: "{capacity}% full"}}
|
||||
|
||||
|
|
|
@ -1,44 +0,0 @@
|
|||
#!/usr/bin/env zsh
|
||||
# Based on https://github.com/t413/zsh-background-notify/blob/master/bgnotify.plugin.zsh
|
||||
|
||||
[[ -o interactive ]] || return
|
||||
zmodload zsh/datetime || { print "can't load zsh/datetime"; return } # faster than date()
|
||||
autoload -Uz add-zsh-hook || { print "can't add zsh hook!"; return }
|
||||
|
||||
(( ${+bgnotify_threshold} )) || bgnotify_threshold=5 # default 5 seconds
|
||||
|
||||
if ! (type bgnotify_formatted | grep -q 'function'); then ## allow custom function override
|
||||
function bgnotify_formatted { ## args: (exit_status, command, elapsed_seconds)
|
||||
elapsed="$(( $3 % 60 ))s"
|
||||
(( $3 >= 60 )) && elapsed="$((( $3 % 3600) / 60 ))m $elapsed"
|
||||
(( $3 >= 3600 )) && elapsed="$(( $3 / 3600 ))h $elapsed"
|
||||
[ $1 -eq 0 ] && bgnotify "success (took $elapsed)" "$2" || bgnotify "fail (took $elapsed)" "$2"
|
||||
}
|
||||
fi
|
||||
|
||||
bgnotify () { ## args: (title, subtitle)
|
||||
title="$1"
|
||||
"$REMOTE" && title="[$(hostname)] $title"
|
||||
echo -e "\033]777;notify;$title;$2\a"
|
||||
}
|
||||
|
||||
## ZSH hooks ##
|
||||
|
||||
bgnotify_begin() {
|
||||
bgnotify_timestamp=$EPOCHSECONDS
|
||||
bgnotify_lastcmd="$1"
|
||||
}
|
||||
|
||||
bgnotify_end() {
|
||||
didexit=$?
|
||||
elapsed=$(( EPOCHSECONDS - bgnotify_timestamp ))
|
||||
past_threshold=$(( elapsed >= bgnotify_threshold ))
|
||||
if (( bgnotify_timestamp > 0 )) && (( past_threshold )); then
|
||||
print -n "\a"
|
||||
bgnotify_formatted "$didexit" "$bgnotify_lastcmd" "$elapsed"
|
||||
fi
|
||||
bgnotify_timestamp=0
|
||||
}
|
||||
|
||||
add-zsh-hook preexec bgnotify_begin
|
||||
add-zsh-hook precmd bgnotify_end
|
|
@ -1,20 +0,0 @@
|
|||
#!/usr/bin/env zsh
|
||||
# https://codeberg.org/dnkl/foot/wiki#user-content-bash-and-zsh
|
||||
|
||||
_urlencode() {
|
||||
local length="${#1}"
|
||||
for (( i = 0; i < length; i++ )); do
|
||||
local c="${1:$i:1}"
|
||||
case $c in
|
||||
%) printf '%%%02X' "'$c" ;;
|
||||
*) printf "%s" "$c" ;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
osc7_cwd() {
|
||||
printf '\e]7;file://%s%s\e\\' "$HOSTNAME" "$(_urlencode "$PWD")"
|
||||
}
|
||||
|
||||
autoload -Uz add-zsh-hook
|
||||
add-zsh-hook -Uz chpwd osc7_cwd
|
11
.gitmodules
vendored
11
.gitmodules
vendored
|
@ -13,15 +13,24 @@
|
|||
[submodule ".config/nvim/pack/plugins/start/fzf.vim"]
|
||||
path = .config/nvim/pack/plugins/start/fzf.vim
|
||||
url = https://github.com/junegunn/fzf.vim
|
||||
[submodule ".config/nvim/pack/plugins/start/rose-pine"]
|
||||
path = .config/nvim/pack/plugins/start/rose-pine
|
||||
url = https://github.com/rose-pine/neovim
|
||||
[submodule ".config/nvim/pack/plugins/start/vim-go"]
|
||||
path = .config/nvim/pack/plugins/start/vim-go
|
||||
url = https://github.com/fatih/vim-go
|
||||
[submodule ".config/nvim/pack/plugins/start/fzf"]
|
||||
path = .config/nvim/pack/plugins/start/fzf
|
||||
url = https://github.com/junegunn/fzf
|
||||
[submodule ".config/nvim/pack/plugins/start/formatter.nvim"]
|
||||
path = .config/nvim/pack/plugins/start/formatter.nvim
|
||||
url = https://github.com/mhartington/formatter.nvim
|
||||
[submodule ".config/nvim/pack/plugins/start/vim-svelte"]
|
||||
path = .config/nvim/pack/plugins/start/vim-svelte
|
||||
url = https://github.com/evanleck/vim-svelte
|
||||
[submodule ".config/nvim/pack/plugins/start/vim-yami"]
|
||||
path = .config/nvim/pack/plugins/start/vim-yami
|
||||
url = https://github.com/danishprakash/vim-yami
|
||||
[submodule ".config/nvim/pack/plugins/start/paige"]
|
||||
path = .config/nvim/pack/plugins/start/paige
|
||||
url = https://git.sr.ht/~leon_plickat/paige
|
||||
|
@ -33,7 +42,7 @@
|
|||
url = https://gitea.nulo.in/Nulo/zig.kak
|
||||
[submodule ".config/kak/plugins/fzf.kak"]
|
||||
path = .config/kak/plugins/fzf.kak
|
||||
url = https://gitea.nulo.in/Nulo/fzf.kak
|
||||
url = https://github.com/andreyorst/fzf.kak
|
||||
[submodule ".config/kak/plugins/kakoune-buffers"]
|
||||
path = .config/kak/plugins/kakoune-buffers
|
||||
url = https://github.com/Delapouite/kakoune-buffers
|
||||
|
|
8
.inputrc
8
.inputrc
|
@ -1,8 +0,0 @@
|
|||
$include /etc/inputrc
|
||||
set completion-ignore-case on
|
||||
set completion-query-items -1
|
||||
set show-all-if-unmodified on
|
||||
set show-all-if-ambiguous off
|
||||
set colored-completion-prefix on
|
||||
set colored-stats on
|
||||
set visible-stats on
|
|
@ -2,17 +2,37 @@
|
|||
set -e
|
||||
cd ~
|
||||
if test "$1" = "elegir"; then
|
||||
rg --files --hidden \
|
||||
find \
|
||||
Documents Sync Pictures Downloads Proyectos \
|
||||
-iname '*.jpg' -or \
|
||||
-iname '*.png' -or \
|
||||
-iname '*.js' -or \
|
||||
-iname '*.md' -or \
|
||||
-iname '*.txt' -or \
|
||||
-iname '*.pdf' -or \
|
||||
-iname '*.epub' -or \
|
||||
-iname '*.docx' -or \
|
||||
-iname '*.mp3' -or \
|
||||
-type d \
|
||||
| fzf > "$2"
|
||||
exit $?
|
||||
fi
|
||||
|
||||
out="$(mktemp)"
|
||||
footclient --app-id=fzf buscar-archivos elegir $out
|
||||
footclient buscar-archivos elegir $out
|
||||
file="$(cat $out)"
|
||||
rm "$out"
|
||||
# | fuzzel-run --dmenu --width=40)"
|
||||
|
||||
if test -e "$file"; then
|
||||
exec handlr open "$file"
|
||||
if test -d "$file"; then
|
||||
exec thunar "$file"
|
||||
else
|
||||
exec xdg-open "$file"
|
||||
fi
|
||||
fi
|
||||
|
||||
# if test -d "$file"; then
|
||||
# xdg-open "$file"
|
||||
# else
|
||||
# xdg-open "$(dirname "$file")"
|
||||
# fi
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
#!/bin/sh
|
||||
battery="$(upower -i /org/freedesktop/UPower/devices/battery_BAT0)"
|
||||
get_battery_value () {
|
||||
echo "$battery" | grep "$1" | awk '{ print $2 }'
|
||||
}
|
||||
title="$(date +%T)"
|
||||
body="\
|
||||
$(date +"%A %d of %B")
|
||||
$(get_battery_value percentage) $(get_battery_value state)\
|
||||
"
|
||||
notify-send --expire-time=5000 "$title" "$body"
|
|
@ -1,16 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
# Copied in https://git.zx2c4.com/password-store/tree/contrib/dmenu/passmenu
|
||||
|
||||
set -e
|
||||
shopt -s nullglob globstar
|
||||
|
||||
prefix=${PASSWORD_STORE_DIR-~/.password-store}
|
||||
password_files=( "$prefix"/**/*.gpg )
|
||||
password_files=( "${password_files[@]#"$prefix"/}" )
|
||||
password_files=( "${password_files[@]%.gpg}" )
|
||||
|
||||
password=$(printf '%s\n' "${password_files[@]}" | fuzzel-run -d)
|
||||
|
||||
[[ -n $password ]] || exit
|
||||
|
||||
pass show "$password" | wtype -
|
|
@ -2,15 +2,14 @@
|
|||
set -e
|
||||
|
||||
if test -n "$1"; then
|
||||
# ~/.config/themer/river-colors.sh "$1"
|
||||
~/.config/themer/river-colors.sh "$1"
|
||||
~/.config/themer/foot.ini.sh "$1"
|
||||
~/.config/themer/fnott.ini.sh "$1"
|
||||
~/.config/themer/yambar.sh "$1"
|
||||
~/.config/themer/fuzzel.sh "$1"
|
||||
~/.config/themer/lock.sh "$1"
|
||||
~/.config/themer/waylock.sh "$1"
|
||||
~/.config/themer/gtk.sh "$1"
|
||||
# ~/.config/river/load-colors
|
||||
~/.config/river/load-colors
|
||||
else
|
||||
echo "No theme specified"
|
||||
exit 1
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=pass-fuzzel / contraseña / password
|
||||
Exec=pass-fuzzel
|
||||
Terminal=false
|
||||
Type=Application
|
19
.profile
Executable file → Normal file
19
.profile
Executable file → Normal file
|
@ -4,24 +4,23 @@
|
|||
|
||||
ulimit -c unlimited
|
||||
|
||||
export MESA_LOADER_DRIVER_OVERRIDE=crocus
|
||||
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
export PATH="$HOME/go/bin:$PATH"
|
||||
|
||||
export EDITOR=kak
|
||||
|
||||
export FZF_DEFAULT_OPTS='--color=light'
|
||||
export FZF_DEFAULT_COMMAND='rg -L --hidden --files'
|
||||
export FZF_CTRL_T_COMMAND='rg -L --hidden --files'
|
||||
# export PATH="$HOME/.local/share/theme.sh:$PATH"
|
||||
|
||||
export MOZ_ENABLE_WAYLAND=1
|
||||
|
||||
export EDITOR=kak
|
||||
|
||||
export FZF_DEFAULT_COMMAND='rg -L --hidden --files'
|
||||
export FZF_CTRL_T_COMMAND='rg -L --hidden --files'
|
||||
|
||||
export QT_WAYLAND_DISABLE_WINDOWDECORATION=1
|
||||
|
||||
export XKB_DEFAULT_LAYOUT=us
|
||||
export XKB_DEFAULT_LAYOUT=us #-nulo
|
||||
export XKB_DEFAULT_VARIANT=altgr-intl
|
||||
export XKB_DEFAULT_OPTIONS=caps:escape
|
||||
|
||||
export XCURSOR_THEME=Adwaita
|
||||
|
||||
test -f "$HOME/.profile.$(hostname)" && source "$HOME/.profile.$(hostname)"
|
||||
export REMOTE="${REMOTE:-true}"
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
export REMOTE=true
|
|
@ -1,10 +0,0 @@
|
|||
#!/bin/sh
|
||||
export REMOTE=true
|
||||
|
||||
export PATH="$PATH:$HOME/.npm/prefix/bin/"
|
||||
export PATH="$HOME/Sutty/haini.sh:$PATH"
|
||||
|
||||
export ANDROID_SDK_ROOT=$HOME/Android/Sdk
|
||||
export PATH=$PATH:$ANDROID_SDK_ROOT/tools/bin
|
||||
export PATH=$PATH:$ANDROID_SDK_ROOT/cmdline-tools/latest/bin
|
||||
export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools
|
|
@ -1,6 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
export REMOTE=false
|
||||
|
||||
export MESA_LOADER_DRIVER_OVERRIDE=crocus
|
||||
|
10
.zprofile
10
.zprofile
|
@ -1,10 +0,0 @@
|
|||
source ~/.profile
|
||||
if ! "$REMOTE" && test "$(tty)" = /dev/tty1; then
|
||||
mkdir -p "$HOME/.local/share/sway"
|
||||
log="$HOME/.local/share/sway/$(date +%Y-%m-%d@%H:%M:%S).log"
|
||||
exec env \
|
||||
XDG_CURRENT_DESKTOP=sway \
|
||||
XDG_SESSION_DESKTOP=sway \
|
||||
dbus-run-session sway >"$log" 2>&1
|
||||
fi
|
||||
source ~/.zshrc
|
51
.zshrc
51
.zshrc
|
@ -1,51 +0,0 @@
|
|||
source ~/.profile
|
||||
|
||||
HISTFILE=~/.histfile
|
||||
HISTSIZE=100000
|
||||
SAVEHIST=100000
|
||||
|
||||
# Permitir comentarios en la shell
|
||||
setopt interactive_comments
|
||||
|
||||
setopt autocd extendedglob notify
|
||||
bindkey -e
|
||||
bindkey "^[[1;5C" forward-word
|
||||
bindkey "^[[1;5D" backward-word
|
||||
|
||||
zstyle ':completion:*' list-dirs-first yes
|
||||
zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
|
||||
|
||||
zstyle :compinstall filename ~/.zshrc
|
||||
autoload -Uz compinit && compinit
|
||||
|
||||
autoload -Uz vcs_info
|
||||
zstyle ':vcs_info:*' actionformats \
|
||||
'%F{4}[%F{2}%b%F{3}|%F{1}%a%F{4}]%f '
|
||||
zstyle ':vcs_info:*' formats '%F{4}%b%f '
|
||||
zstyle ':vcs_info:*' enable git
|
||||
precmd () { vcs_info }
|
||||
|
||||
setopt promptsubst
|
||||
PS1='%S%F{5} %3~ ${vcs_info_msg_0_}%f%#%s '
|
||||
"$REMOTE" && PS1='%n@%m '$PS1
|
||||
|
||||
alias ls='ls --color=always'
|
||||
alias grep='grep --color=always'
|
||||
|
||||
alias gitdf='git --git-dir=$HOME/.config/dotfiles/ --work-tree=$HOME'
|
||||
alias ssh='TERM=xterm-256color ssh'
|
||||
alias e="$EDITOR"
|
||||
alias r="trash -r"
|
||||
|
||||
source /usr/share/fzf/key-bindings.zsh
|
||||
source ~/.config/zsh/bg_notify.zsh
|
||||
! "$REMOTE" && source ~/.config/zsh/osc_7.zsh
|
||||
|
||||
if ! "$REMOTE"; then
|
||||
unset SSH_AGENT_PID
|
||||
if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then
|
||||
# Start if not started
|
||||
gpg-agent --daemon 2>/dev/null
|
||||
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
|
||||
fi
|
||||
fi
|
Loading…
Reference in a new issue