Compare commits
274 Commits
Author | SHA1 | Date |
---|---|---|
lelgenio | 6e3091d419 | |
lelgenio | c8c40a6abd | |
lelgenio | c576cc29e1 | |
lelgenio | e3bdbbd3dc | |
lelgenio | cb4c21c0bb | |
lelgenio | a8169cdc41 | |
lelgenio | 1026262031 | |
lelgenio | 6397ca360f | |
lelgenio | 1dffd48e38 | |
lelgenio | ea44da0faf | |
lelgenio | 2508fc6a89 | |
lelgenio | cfd141cff4 | |
lelgenio | 79f987141b | |
lelgenio | 7527a862f2 | |
lelgenio | 78d50445ca | |
lelgenio | 20d249b59e | |
lelgenio | d45211ea47 | |
lelgenio | ba57fb58f4 | |
lelgenio | 57d49c14e7 | |
lelgenio | 00a9b4b55b | |
lelgenio | 1d21de79ce | |
lelgenio | e466cab299 | |
lelgenio | 23acfb1fde | |
lelgenio | 8f15260d48 | |
lelgenio | b0d5c84786 | |
lelgenio | 6fd08dab40 | |
lelgenio | 5ed4dc9648 | |
lelgenio | e355e5efd3 | |
lelgenio | 48ec8b5e57 | |
lelgenio | 4ce6ddecda | |
lelgenio | b2005c5861 | |
lelgenio | a9a28656b7 | |
lelgenio | ba91f1fe55 | |
lelgenio | 7412c7cd9a | |
lelgenio | 9e1f9fb2ba | |
lelgenio | 0efcbe0b4d | |
lelgenio | 7524897191 | |
lelgenio | 30594f3d10 | |
lelgenio | 6b80ed57d0 | |
lelgenio | 4e7a55c6f4 | |
lelgenio | 39af56aa61 | |
lelgenio | 680b03819d | |
lelgenio | 93f60bacab | |
lelgenio | 8be7323bba | |
lelgenio | 85a3cc0601 | |
lelgenio | 0f75cd1816 | |
lelgenio | 39c1da87b0 | |
lelgenio | c90a3bb44b | |
lelgenio | 62aadda8a1 | |
lelgenio | 7c33d17c17 | |
lelgenio | 71bb6f47fc | |
lelgenio | 506dbb0f0e | |
lelgenio | 54d0b12586 | |
lelgenio | 17bc20aefe | |
lelgenio | 6061a502dd | |
lelgenio | 31f1ef30d0 | |
lelgenio | 1044517e8f | |
lelgenio | 43e0fdf85e | |
lelgenio | 97642cb85c | |
lelgenio | 181ce3915c | |
lelgenio | 7c09f32f29 | |
lelgenio | 23b60b96a5 | |
lelgenio | 091d90a151 | |
lelgenio | f01ccdcaf8 | |
lelgenio | cbf6e1d520 | |
lelgenio | 710e812c77 | |
lelgenio | 217d46290d | |
lelgenio | bcc4ec40d9 | |
lelgenio | 42e6e90494 | |
lelgenio | f77415ca42 | |
lelgenio | e9f07b41ee | |
lelgenio | aad59fcab4 | |
lelgenio | c4e23d3bcf | |
lelgenio | 7a66f81f7e | |
lelgenio | 225ade6c03 | |
lelgenio | 530c2fd5bf | |
lelgenio | 27983102e4 | |
lelgenio | 9beaf86991 | |
lelgenio | fcfe5a2091 | |
lelgenio | 771ce277cd | |
lelgenio | e00846c5e7 | |
lelgenio | dcd62052a0 | |
lelgenio | 962b2c9e1a | |
lelgenio | d531c0ae37 | |
lelgenio | 6858febb05 | |
lelgenio | 8c528fea32 | |
lelgenio | 67bae56bd3 | |
lelgenio | 8194fca114 | |
lelgenio | bfeaa5b2b7 | |
lelgenio | ca6f41d357 | |
lelgenio | 3a14d5bf9d | |
lelgenio | fbded1e8a4 | |
lelgenio | 5f8d4e8f88 | |
lelgenio | 6a7814e675 | |
lelgenio | 3db13bc10d | |
lelgenio | 7b6dac6f19 | |
lelgenio | c046ec6b33 | |
lelgenio | 9fd08600de | |
lelgenio | 45ef5376f6 | |
lelgenio | 12d5f73aae | |
lelgenio | 24250b7452 | |
lelgenio | c43a2b64d6 | |
lelgenio | 994400fe3f | |
lelgenio | dedcf874c9 | |
lelgenio | 2032f51e43 | |
lelgenio | 2dd9a2130e | |
lelgenio | 901698ddd2 | |
lelgenio | 9bdc810d75 | |
lelgenio | 09aa0c141a | |
lelgenio | c8901181f2 | |
lelgenio | 3353a41950 | |
lelgenio | 129213e46a | |
lelgenio | b9f90acc65 | |
lelgenio | eb683b20dc | |
lelgenio | c39173185f | |
lelgenio | 4a8854000e | |
lelgenio | 0624f8e20d | |
lelgenio | 9331f31e96 | |
lelgenio | c03ba05e16 | |
lelgenio | fd2e4c05aa | |
lelgenio | 445ba4f89a | |
lelgenio | 3e41eec9c0 | |
lelgenio | 637227380b | |
lelgenio | 63b8e37b35 | |
lelgenio | 85801514dd | |
lelgenio | 2ce3948a15 | |
lelgenio | bfcd21e3b4 | |
lelgenio | 7102da428e | |
lelgenio | 17c942e4b1 | |
lelgenio | 36f6544242 | |
lelgenio | 286287778a | |
lelgenio | 119a831e0c | |
lelgenio | bfe6de2495 | |
lelgenio | 0ba4ea0b93 | |
lelgenio | 4ca932b759 | |
lelgenio | c4cf066a18 | |
lelgenio | b278368fca | |
lelgenio | 510f67eb9c | |
lelgenio | 51decdfc62 | |
lelgenio | f80d6412f5 | |
lelgenio | 8d107404cd | |
lelgenio | 8379dd5363 | |
lelgenio | 99cc97b529 | |
lelgenio | 0fbc722d9e | |
lelgenio | f2e8bad010 | |
lelgenio | 80a6bdf2d1 | |
lelgenio | 1c0d53aa21 | |
lelgenio | cfb60eb797 | |
lelgenio | 862ce79c1a | |
lelgenio | 4f39b1fb3f | |
lelgenio | b60af24d89 | |
lelgenio | 14ad330631 | |
lelgenio | 866fe18d9e | |
lelgenio | c9661bbdbe | |
lelgenio | e3987d0531 | |
lelgenio | c6f58a7e57 | |
lelgenio | 57f6cb3611 | |
lelgenio | f6a17f3726 | |
lelgenio | 92d9dee399 | |
lelgenio | f0af27869b | |
lelgenio | de2b28b538 | |
lelgenio | e3a7acecb5 | |
lelgenio | acbe0239cf | |
lelgenio | a774bb98e7 | |
lelgenio | 3c770a2e31 | |
lelgenio | f0ad4b9359 | |
lelgenio | b625acc2e5 | |
lelgenio | 9b52fa57c7 | |
lelgenio | ef61588fc7 | |
lelgenio | 1a5d5c0568 | |
lelgenio | 79e08d9550 | |
lelgenio | ccd519e66f | |
lelgenio | f5f3954ebf | |
lelgenio | 0dee833dcf | |
lelgenio | 41d9da9109 | |
lelgenio | b10ef6ac39 | |
lelgenio | 91272f517e | |
lelgenio | f733fe22e4 | |
lelgenio | be307d1237 | |
lelgenio | 65c9774be7 | |
lelgenio | 20957a948c | |
lelgenio | f4adb3c4ef | |
lelgenio | a1162d0e57 | |
lelgenio | fcca15ecb7 | |
lelgenio | 3b6c652038 | |
lelgenio | 6ffad17c49 | |
lelgenio | 514bd598c4 | |
lelgenio | 7de7c71687 | |
lelgenio | 03763a612d | |
lelgenio | ecc685531d | |
lelgenio | 62ac3a11c6 | |
lelgenio | c9abf23171 | |
lelgenio | 25453694f9 | |
lelgenio | 0ba44075eb | |
lelgenio | 0b3175a068 | |
lelgenio | 688088ba0b | |
lelgenio | b6d5b09932 | |
lelgenio | 935fe52f65 | |
lelgenio | c90b77d44a | |
lelgenio | a367bdb346 | |
lelgenio | 42f3d649e6 | |
lelgenio | 2cc1f70805 | |
lelgenio | fa849710a8 | |
lelgenio | 953c4ac318 | |
lelgenio | 8a413ee398 | |
lelgenio | d6b82c0fb0 | |
lelgenio | c35ba50557 | |
lelgenio | f1a30ce286 | |
lelgenio | 03795e14f9 | |
lelgenio | e7be236cce | |
lelgenio | c34c0e50d2 | |
lelgenio | 66369b78f5 | |
lelgenio | d567a3f77a | |
lelgenio | c4c73bafee | |
lelgenio | f0312168d0 | |
lelgenio | a887e0ddd3 | |
lelgenio | 4314b39af6 | |
lelgenio | fcc16b734c | |
lelgenio | 97adb26a97 | |
lelgenio | 14cf8609db | |
lelgenio | c400dafbd1 | |
lelgenio | 444d11c309 | |
lelgenio | d8a58fad41 | |
lelgenio | e68bdf6cec | |
lelgenio | e59c5b8ccb | |
lelgenio | 83eb1f1ede | |
lelgenio | 2764ccc54f | |
lelgenio | 780d086058 | |
lelgenio | 80ffdf4039 | |
lelgenio | 665b12a7aa | |
lelgenio | ff2e358aa5 | |
lelgenio | 6cf627c123 | |
lelgenio | e53ad18e5e | |
lelgenio | c1dda1e13f | |
lelgenio | a3c11f1d7a | |
lelgenio | 7a358afc5f | |
lelgenio | 36f1418bb8 | |
lelgenio | f58c755441 | |
lelgenio | f046ed2a8f | |
lelgenio | c83c22bfe0 | |
lelgenio | 98c2989589 | |
lelgenio | 85c439898d | |
lelgenio | ea495b6f51 | |
lelgenio | 06534f41d5 | |
lelgenio | a76acb0a93 | |
lelgenio | b42eebf3b1 | |
lelgenio | 2f6fbdb731 | |
lelgenio | 59f3a32292 | |
lelgenio | 2d9d33a859 | |
lelgenio | 6638d461a2 | |
lelgenio | 56b904ccfa | |
lelgenio | 106f368446 | |
lelgenio | ff740e16d5 | |
lelgenio | bdb101fb87 | |
lelgenio | 7185f73b47 | |
lelgenio | 2a3a6d9f52 | |
lelgenio | 937f745b43 | |
lelgenio | 75aa7204be | |
lelgenio | 5b1362e686 | |
lelgenio | da19ae06e9 | |
lelgenio | d15c78fe17 | |
lelgenio | 0b4d249702 | |
lelgenio | eee3921022 | |
lelgenio | be53f1b7d8 | |
lelgenio | 0e37f9bad1 | |
lelgenio | 533916999c | |
lelgenio | 5ba6864964 | |
lelgenio | 4ede4792c3 | |
lelgenio | ee3b2c816a | |
lelgenio | cf7120d836 | |
lelgenio | 9088b4058c | |
lelgenio | b9e3f52761 | |
lelgenio | 21cd2b1e24 | |
lelgenio | 44f0cd9077 |
|
@ -0,0 +1,252 @@
|
|||
alacritty
|
||||
alsa-utils
|
||||
archlinux-appstream-data-pamac
|
||||
autoconf
|
||||
automake
|
||||
autopep8
|
||||
base
|
||||
bash-language-server
|
||||
bat
|
||||
bc
|
||||
bemenu-wayland
|
||||
binutils
|
||||
bison
|
||||
blade-formatter
|
||||
blender
|
||||
bluez-plugins
|
||||
bluez-utils
|
||||
bpython
|
||||
bpytop
|
||||
breeze-obsidian-cursor-theme
|
||||
btrfs-progs
|
||||
caffeinated
|
||||
capitaine-cursors
|
||||
cargo-edit
|
||||
cargo-watch
|
||||
clyrics
|
||||
composer
|
||||
cronie
|
||||
deemix
|
||||
deluge
|
||||
deluge-gtk
|
||||
dhcpcd
|
||||
diffr
|
||||
direnv
|
||||
discord_arch_electron
|
||||
docker
|
||||
docker-compose
|
||||
dotdrop
|
||||
efibootmgr
|
||||
emmet-cli
|
||||
engrampa
|
||||
entr
|
||||
exa
|
||||
fail2ban
|
||||
fakeroot
|
||||
fd
|
||||
ffmpegthumbnailer
|
||||
firefox
|
||||
fish
|
||||
flex
|
||||
fuzzel
|
||||
fzf
|
||||
gammastep
|
||||
gcc
|
||||
gdb
|
||||
gimp
|
||||
git
|
||||
gnu-netcat
|
||||
grim
|
||||
grub
|
||||
gst-editing-services
|
||||
gst-libav
|
||||
gst-plugin-gtk
|
||||
gst-plugin-pipewire
|
||||
gst-plugins-bad
|
||||
gst-plugins-bad-libs
|
||||
gst-plugins-base
|
||||
gst-plugins-base-libs
|
||||
gst-plugins-good
|
||||
gstreamer
|
||||
gtk-engine-murrine
|
||||
gtk3-nocsd-legacy-git
|
||||
helix
|
||||
htop
|
||||
hunspell-pt-br
|
||||
inetutils
|
||||
intel-compute-runtime
|
||||
intel-gpu-tools
|
||||
intel-media-driver
|
||||
intel-ucode
|
||||
inter-font
|
||||
inxi
|
||||
iotop
|
||||
ipython
|
||||
isync
|
||||
iwd
|
||||
j4-dmenu-desktop
|
||||
jitsi-meet-desktop-bin
|
||||
kakoune
|
||||
kanshi
|
||||
kdeconnect
|
||||
khal
|
||||
khard
|
||||
kitty
|
||||
kvantum
|
||||
lib32-libappindicator-gtk2
|
||||
lib32-libappindicator-gtk3
|
||||
libappindicator-gtk2
|
||||
libopenraw
|
||||
libpipewire02
|
||||
libreoffice-fresh
|
||||
libreoffice-fresh-pt-br
|
||||
libtool
|
||||
libva-intel-driver
|
||||
libva-mesa-driver
|
||||
libva-utils
|
||||
libva-vdpau-driver
|
||||
libvdpau-va-gl
|
||||
light
|
||||
linux-firmware
|
||||
linux-zen
|
||||
lutris
|
||||
lutris-wine-meta
|
||||
lynx
|
||||
m4
|
||||
make
|
||||
mako
|
||||
man-db
|
||||
mariadb
|
||||
mesa-vdpau
|
||||
meson
|
||||
micro
|
||||
mpc
|
||||
mpd
|
||||
mpdris2
|
||||
mpv
|
||||
mtr
|
||||
ncmpcpp
|
||||
neofetch
|
||||
neomutt
|
||||
nerd-fonts-fira-code
|
||||
nerd-fonts-hack
|
||||
net-tools
|
||||
networkmanager
|
||||
nmap
|
||||
nodejs-intelephense
|
||||
nodejs-less
|
||||
nodejs-less-plugin-clean-css
|
||||
noto-fonts
|
||||
noto-fonts-cjk
|
||||
noto-fonts-emoji
|
||||
noto-fonts-extra
|
||||
ntp
|
||||
obs-studio
|
||||
orchis-kde-theme-git
|
||||
orchis-theme-git
|
||||
otf-font-awesome
|
||||
p7zip
|
||||
pacman-contrib
|
||||
pamixer
|
||||
papirus-folders
|
||||
papirus-icon-theme
|
||||
papirus-libreoffice-theme
|
||||
paru
|
||||
pass
|
||||
patch
|
||||
pavucontrol
|
||||
php7
|
||||
php7-apache
|
||||
phpmyadmin
|
||||
pikaur
|
||||
pipewire-alsa
|
||||
pipewire-jack
|
||||
pipewire-media-session
|
||||
pkgconf
|
||||
pkgfile
|
||||
playerctl
|
||||
postgresql
|
||||
powertop
|
||||
pqiv
|
||||
prettier
|
||||
pulseaudio
|
||||
pulseaudio-alsa
|
||||
pulsemixer
|
||||
python-pydocstyle
|
||||
python-pyflakes
|
||||
python-pylint
|
||||
python-pynvim
|
||||
python-rope
|
||||
qemu
|
||||
qt5-styleplugins
|
||||
qt5ct
|
||||
qt6ct
|
||||
qt6gtk2
|
||||
qutebrowser
|
||||
ranger
|
||||
rclone
|
||||
reflector
|
||||
ripgrep
|
||||
rsync
|
||||
ruby-fusuma
|
||||
rust-analyzer
|
||||
sassc
|
||||
sd
|
||||
shfmt
|
||||
slurp
|
||||
so
|
||||
speedtest-cli
|
||||
sshfs
|
||||
starship
|
||||
steam-native-runtime
|
||||
sudo
|
||||
swappy
|
||||
sway
|
||||
swayidle
|
||||
swaylock
|
||||
syncthing
|
||||
tealdeer
|
||||
telegram-desktop
|
||||
texinfo
|
||||
thunar
|
||||
thunar-archive-plugin
|
||||
thunar-vcs-plugin
|
||||
thunar-volman
|
||||
tlp
|
||||
tor
|
||||
translate-shell
|
||||
transmission-cli
|
||||
trash-cli
|
||||
ttf-dejavu
|
||||
ttf-font-awesome
|
||||
ttf-liberation
|
||||
ttf-ms-fonts
|
||||
tumbler
|
||||
tuxi-git
|
||||
udiskie
|
||||
uglify-js
|
||||
urlview
|
||||
vdirsyncer
|
||||
vdpauinfo
|
||||
visual-studio-code-bin
|
||||
vscode-css-languageserver
|
||||
vscode-html-languageserver
|
||||
vscode-json-languageserver
|
||||
vulkan-intel
|
||||
vulkan-mesa-layers
|
||||
vulkan-tools
|
||||
waybar
|
||||
wf-recorder
|
||||
wget
|
||||
which
|
||||
wine-mono
|
||||
winetricks
|
||||
wl-clipboard
|
||||
wtype
|
||||
xdg-desktop-portal-wlr
|
||||
xorg-xwayland
|
||||
xsettingsd
|
||||
yt-dlp
|
||||
zathura
|
||||
zathura-pdf-mupdf
|
||||
zoxide
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/env fish
|
||||
|
||||
pacman -Qqe > arch.freeze
|
272
config.yaml
272
config.yaml
|
@ -10,8 +10,9 @@ variables:
|
|||
###############################################################
|
||||
|
||||
username: lelgenio
|
||||
cursor_size: 24
|
||||
shell: fish
|
||||
editor: kak
|
||||
cursor_size: 24
|
||||
tabs: false
|
||||
indent_width: 4
|
||||
key_layout: colemak
|
||||
|
@ -21,13 +22,15 @@ variables:
|
|||
bar: waybar
|
||||
bar_pos: top
|
||||
tmux: false
|
||||
supervisor: runit
|
||||
starship: false
|
||||
asdf: false
|
||||
user_svdir: $HOME/.config/runit
|
||||
|
||||
accent_fg: '#ffffff'
|
||||
|
||||
font:
|
||||
mono: Hack Nerd Font
|
||||
interface: Inter
|
||||
interface: Liberation Sans
|
||||
size:
|
||||
small: 12
|
||||
medium: 14
|
||||
|
@ -35,23 +38,30 @@ variables:
|
|||
|
||||
mail:
|
||||
personal:
|
||||
user: lelgenio
|
||||
mail: disroot.org
|
||||
from: Leonardo Eugênio
|
||||
user: lelgenio@disroot.org
|
||||
imap: disroot.org
|
||||
smtp: disroot.org
|
||||
pass: disroot.org
|
||||
work:
|
||||
from: Leonardo Eugênio
|
||||
user: leonardo@wopus.com.br
|
||||
mail: wopus.com.br
|
||||
imap: imap.wopus.com.br
|
||||
smtp: smtp.wopus.com.br
|
||||
pass: Work/wopus_email
|
||||
|
||||
plymouth: true
|
||||
zram: true
|
||||
filesystem:
|
||||
partitions:
|
||||
"/": /mnt/btrfs-root
|
||||
"/@home": /home
|
||||
"/@sql": /var/lib/mysql
|
||||
"/@swap": /swap
|
||||
nextcloud:
|
||||
name: disroot
|
||||
user: lelgenio
|
||||
host: cloud.disroot.org
|
||||
pass: disroot.org
|
||||
|
||||
###############################################################
|
||||
profiles:
|
||||
###############################################################
|
||||
|
||||
###############################################################
|
||||
# Themes
|
||||
###############################################################
|
||||
|
||||
dark:
|
||||
|
@ -68,6 +78,7 @@ profiles:
|
|||
txt: '#FFFFFF'
|
||||
nontxt: '#252525'
|
||||
|
||||
random_range: "[a-f]"
|
||||
normal:
|
||||
black: '#404040'
|
||||
red: '#AB4642'
|
||||
|
@ -86,16 +97,17 @@ profiles:
|
|||
variables:
|
||||
background: ~/.local/share/backgrounds/assembly_light.png
|
||||
|
||||
opacity: 0.95
|
||||
opacity: 0.98
|
||||
|
||||
color:
|
||||
type: light
|
||||
bg: '#EEEEEE'
|
||||
bg: '#FFFFFF'
|
||||
bg_light: '#A0A0A0'
|
||||
bg_dark: '#E0E0E0'
|
||||
bg_dark: '#EEEEEE'
|
||||
txt: '#303030'
|
||||
nontxt: '#D0D0D0'
|
||||
|
||||
random_range: "[0-4]"
|
||||
normal:
|
||||
black: '#555555'
|
||||
red: '#D54E53'
|
||||
|
@ -115,7 +127,7 @@ profiles:
|
|||
# Accents
|
||||
###############################################################
|
||||
|
||||
accent_red: {variables: {accent_color: "#D9534F"}}
|
||||
accent_red: {variables: {accent_color: "#F44336"}}
|
||||
accent_green: {variables: {accent_color: "#159828"}}
|
||||
accent_blue: {variables: {accent_color: "#3465A3"}}
|
||||
accent_pink: {variables: {accent_color: "#E91E63"}}
|
||||
|
@ -141,6 +153,7 @@ profiles:
|
|||
tabR: Y
|
||||
insertMode: s
|
||||
insertQuit: kk
|
||||
menu: s
|
||||
|
||||
qwerty:
|
||||
variables:
|
||||
|
@ -156,26 +169,107 @@ profiles:
|
|||
tabR: O
|
||||
insertMode: i
|
||||
insertQuit: jj
|
||||
menu: d
|
||||
|
||||
|
||||
###############################################################
|
||||
# Main profile
|
||||
common:
|
||||
###############################################################
|
||||
|
||||
main:
|
||||
variables:
|
||||
gtk_theme: "Mint-Y{{@@ '-Dark' if color.type == 'dark' else '' @@}}-{{@@ accent_color_name.capitalize() @@}}"
|
||||
# gtk_theme: "Mint-Y{{@@ '-Dark' if color.type == 'dark' else '' @@}}-{{@@ accent_color_name.capitalize() @@}}"
|
||||
gtk_theme: "Orchis-{{@@ accent_color_name.capitalize() @@}}-{{@@ color.type.capitalize() @@}}"
|
||||
kvantum_theme: "Materia{{@@ color.type.capitalize() @@}}"
|
||||
# icon_theme: "Mint-Y-{{@@ 'Dark' if color.type == 'dark' else 'Darker' @@}}-{{@@ accent_color_name.capitalize() @@}}"
|
||||
icon_theme: "Papirus-{{@@ color.type.capitalize() @@}}"
|
||||
cursor_theme: "capitaine-cursors"
|
||||
dotfiles:
|
||||
- ALL
|
||||
cursor_theme: "Breeze_Obsidian"
|
||||
# cursor_theme: "Breeze_Snow"
|
||||
# cursor_theme: "capitaine-cursors"
|
||||
include:
|
||||
- "{{@@ key_layout @@}}"
|
||||
- "{{@@ color_type @@}}"
|
||||
- "accent_{{@@ accent_color_name @@}}"
|
||||
dotfiles:
|
||||
- alacritty
|
||||
- backgrounds
|
||||
- bat
|
||||
- blender
|
||||
- clang-format
|
||||
- code-oss
|
||||
- crontab
|
||||
- dav
|
||||
- deemix
|
||||
- firefox
|
||||
- fish
|
||||
- fonts
|
||||
- foot
|
||||
- git
|
||||
- gpg-agent
|
||||
- i3
|
||||
- imv
|
||||
- kak-lsp
|
||||
- kakoune
|
||||
- kanshi
|
||||
- kitty
|
||||
- lesskey
|
||||
- libinput-gestures
|
||||
- mako
|
||||
- mangohud
|
||||
- mime
|
||||
- mpd
|
||||
- mpv
|
||||
- mutt
|
||||
- mypy
|
||||
- nvim
|
||||
- pqivrc
|
||||
- prettierrc
|
||||
- qutebrowser
|
||||
- ranger
|
||||
- rclone
|
||||
- rustfmt
|
||||
- scripts
|
||||
- starship
|
||||
- sway
|
||||
- swaylock
|
||||
- telegram-theme
|
||||
- theme
|
||||
- thunar
|
||||
- tmux
|
||||
- vscode
|
||||
- waybar
|
||||
- wofi
|
||||
- xdpw
|
||||
- zathura
|
||||
|
||||
###############################################################
|
||||
# Os profiles
|
||||
###############################################################
|
||||
|
||||
voidlinux:
|
||||
include:
|
||||
- "common"
|
||||
variables:
|
||||
supervisor: runit
|
||||
dotfiles:
|
||||
- runit_services
|
||||
|
||||
artixlinux:
|
||||
include:
|
||||
- "common"
|
||||
dotfiles:
|
||||
- arch-packages
|
||||
- paru
|
||||
variables:
|
||||
supervisor: runit
|
||||
|
||||
archlinux:
|
||||
include:
|
||||
- "common"
|
||||
dotfiles:
|
||||
- arch-packages
|
||||
- paru
|
||||
- systemd
|
||||
variables:
|
||||
supervisor: systemd
|
||||
|
||||
###############################################################
|
||||
config:
|
||||
|
@ -201,18 +295,8 @@ dynvariables:
|
|||
color_type: test -n "$_COLOR_TYPE" && echo "$_COLOR_TYPE" || echo dark
|
||||
accent_color_name: test -n "$_ACCENT_COLOR" && echo "$_ACCENT_COLOR" || echo red
|
||||
firefox_profile: cat ~/.mozilla/firefox/profiles.ini | grep '^Default' | head -n1 | cut -d= -f2
|
||||
blender_version: |
|
||||
pacman -Qi blender | grep "^Version" | cut -d: -f3 | cut -d. -f1-2 ||
|
||||
blender --version | head -n1 | sed -E 's|^Blender (.*)\..*|\1|g'
|
||||
phisical_uuid: sudo blkid /dev/sda2 -s UUID -o value
|
||||
decrypted_uuid: sudo blkid /dev/mapper/main -s UUID -o value
|
||||
boot_uuid: sudo blkid /dev/sda1 -s UUID -o value
|
||||
root_subvol: echo "/@$(lsb_release -i | cut -f 2)-root"
|
||||
nproc: nproc
|
||||
memory_size: env LC_ALL=C free -b | awk '/^Mem:/ {print $2}'
|
||||
deezer_arl: pass show Entertainment/Deezer | awk '/^arl:/ {print $2}'
|
||||
main_password: _pass_get "{{@@ mail.personal.mail @@}}" | base64
|
||||
|
||||
main_password: _pass_get "{{@@ mail.personal.pass @@}}" | base64
|
||||
|
||||
###############################################################
|
||||
actions:
|
||||
|
@ -226,17 +310,32 @@ actions:
|
|||
true
|
||||
|
||||
reload_sway: swaymsg reload & disown
|
||||
reload_mako: pkill -SIGHUP mako
|
||||
reload_waybar: env SVDIR=$HOME/.config/runit/sv sv hup waybar
|
||||
reload_xsettingsd: env SVDIR=$HOME/.config/runit/sv sv hup xsettingsd
|
||||
reload_mako: makoctl reload
|
||||
reload_waybar: pkill -SIGUSR2 waybar
|
||||
reload_runit_sv:
|
||||
which sv 2> /dev/null &&
|
||||
env SVDIR="{{@@ user_svdir @@}}" sv reload "{0}" ||
|
||||
true
|
||||
restart_systemd_sv:
|
||||
systemctl --user restart "${0}"
|
||||
enable_systemd_sv:
|
||||
systemctl --user enable --now "{0}" &
|
||||
groups_install: _groups_install
|
||||
lesskey: lesskey
|
||||
reload_fish: pkill -SIGHUP fish
|
||||
dotdrop_completions: |
|
||||
comp_path="$HOME/.config/fish/completions/dotdrop.fish"
|
||||
comp_url="https://raw.githubusercontent.com/deadc0de6/dotdrop/master/completion/dotdrop.fish"
|
||||
if ! test -f "$comp_path"; then
|
||||
wget -qO "$comp_path" "$comp_url" ||
|
||||
rm "$comp_path"
|
||||
fi
|
||||
|
||||
reload_qutebrowser: qutemsg config-source & disown
|
||||
|
||||
vimplug: >
|
||||
nvim +PlugUpgrade +PlugInstall +PlugUpdate +qall
|
||||
&> /dev/null &
|
||||
> /dev/null &
|
||||
|
||||
reload_kakoune: >
|
||||
kak -l | xargs -r -n1
|
||||
|
@ -247,39 +346,30 @@ actions:
|
|||
crontab ~/.local/share/crontab
|
||||
|
||||
vdirsyncer: |
|
||||
yes | vdirsyncer discover & disown
|
||||
yes | vdirsyncer discover &
|
||||
|
||||
lnMail: |
|
||||
ln -fs ~/.config/neomutt/mbsyncrc ~/.mbsyncrc
|
||||
ln -fs ~/.config/neomutt/urlview ~/.urlview
|
||||
ln -fs ~/.config/neomutt/msmtprc ~/.msmtprc
|
||||
|
||||
ranger_icons:
|
||||
git clone
|
||||
https://github.com/alexanderjeurissen/ranger_devicons
|
||||
~/.config/ranger/plugins/ranger_devicons
|
||||
|
||||
root_install: |
|
||||
sudo dotdrop install -f -p main \
|
||||
-c "{{@@ _dotfile_abs_dst @@}}/config.yaml" ||
|
||||
rm -r "{{@@ _dotfile_abs_dst @@}}"
|
||||
start_services: >
|
||||
_runit_config "{{@@ _dotfile_abs_dst @@}}"
|
||||
dbus-daemon xsettingsd
|
||||
fusuma gpg-agent
|
||||
geoclue redshift light mako
|
||||
mpd mpDris2 telegram
|
||||
pipewire pipewire-media-session xdpw
|
||||
pulseaudio kdeconnectd kdeconnect-indicator
|
||||
kanshi swayidle waybar
|
||||
syncthing udiskie
|
||||
|
||||
# bootstrap scripts
|
||||
pam_gpg: _pam-gpg-strap
|
||||
make_theme: _make_theme
|
||||
install_meta: install_meta
|
||||
qt6ct: |
|
||||
cd "$HOME/.config"
|
||||
rm -rf "qt6ct/"
|
||||
cp -r "qt5ct/" "qt6ct"
|
||||
mv "qt6ct/qt5ct.conf" "qt6ct/qt6ct.conf"
|
||||
install_arch_meta: install_arch_meta
|
||||
install_mpv: _mpv_install
|
||||
filter_backgrounds: _backgrouds_filter
|
||||
git_projects: _git_projects
|
||||
apply_gsetting_gnome: gsettings set org.gnome.desktop.interface {0} {1}
|
||||
|
||||
###############################################################
|
||||
dotfiles: # Just a bunch of paths and action mappings
|
||||
|
@ -303,13 +393,16 @@ dotfiles: # Just a bunch of paths and action mappings
|
|||
src: fish
|
||||
dst: ~/.config/fish
|
||||
actions:
|
||||
- dotdrop_completions
|
||||
- reload_fish
|
||||
|
||||
starship:
|
||||
src: starship.toml
|
||||
dst: ~/.config/starship.toml
|
||||
|
||||
git:
|
||||
src: git
|
||||
dst: ~/.config/git
|
||||
actions:
|
||||
- git_projects
|
||||
|
||||
mako:
|
||||
src: mako.conf
|
||||
|
@ -394,12 +487,36 @@ dotfiles: # Just a bunch of paths and action mappings
|
|||
dst: ~/.local/bin
|
||||
actions:
|
||||
- make_theme
|
||||
- groups_install
|
||||
|
||||
services:
|
||||
runit_services:
|
||||
src: runit_sv
|
||||
dst: ~/.config/runit/sv
|
||||
dst: ~/.config/runit
|
||||
|
||||
systemd:
|
||||
src: systemd
|
||||
dst: ~/.config/systemd/user
|
||||
actions:
|
||||
- start_services
|
||||
- enable_systemd_sv caffeinated.service
|
||||
- enable_systemd_sv gammastep.service
|
||||
- enable_systemd_sv kanshi.service
|
||||
- enable_systemd_sv mako.service
|
||||
- enable_systemd_sv mpDris2.service
|
||||
- enable_systemd_sv notify-mail.service
|
||||
- enable_systemd_sv pipewire.service
|
||||
- enable_systemd_sv kdeconnectd.service
|
||||
- enable_systemd_sv kdeconnect-indicator.service
|
||||
- enable_systemd_sv sway-idle.service
|
||||
- enable_systemd_sv syncthing.service
|
||||
- enable_systemd_sv telegram-desktop.service
|
||||
- enable_systemd_sv waybar.service
|
||||
- enable_systemd_sv xsettingsd.service
|
||||
|
||||
libinput-gestures:
|
||||
src: libinput-gestures.conf
|
||||
dst: ~/.config/libinput-gestures.conf
|
||||
actions:
|
||||
- reload_runit_sv libinput-gestures
|
||||
|
||||
deemix:
|
||||
src: deemix
|
||||
|
@ -429,7 +546,12 @@ dotfiles: # Just a bunch of paths and action mappings
|
|||
src: theme
|
||||
dst: ~/
|
||||
actions:
|
||||
- reload_xsettingsd
|
||||
- qt6ct
|
||||
- restart_systemd_sv xsettingsd
|
||||
- reload_runit_sv xsettingsd
|
||||
- apply_gsetting_gnome gtk-theme '{{@@ gtk_theme @@}}'
|
||||
- apply_gsetting_gnome icon-theme '{{@@ icon_theme @@}}'
|
||||
- apply_gsetting_gnome cursor-theme '{{@@ cursor_theme @@}}'
|
||||
|
||||
prettierrc:
|
||||
src: prettierrc.toml
|
||||
|
@ -449,11 +571,11 @@ dotfiles: # Just a bunch of paths and action mappings
|
|||
actions:
|
||||
- pam_gpg
|
||||
|
||||
packages:
|
||||
arch-packages:
|
||||
src: meta.PKGBUILD
|
||||
dst: ~/.local/share/metapkg/PKGBUILD
|
||||
actions:
|
||||
- install_meta
|
||||
- install_arch_meta
|
||||
|
||||
kak-lsp:
|
||||
src: kak-lsp.toml
|
||||
|
@ -461,14 +583,7 @@ dotfiles: # Just a bunch of paths and action mappings
|
|||
|
||||
rustfmt:
|
||||
src: rustfmt.toml
|
||||
dst: ~/.rustfmt.toml
|
||||
|
||||
root:
|
||||
src: ../root
|
||||
dst: ~/.local/share/root_files
|
||||
actions:
|
||||
- root_install
|
||||
|
||||
dst: ~/.config/rustfmt/rustfmt.toml
|
||||
|
||||
###############################################################
|
||||
# Big pahts
|
||||
|
@ -478,13 +593,17 @@ dotfiles: # Just a bunch of paths and action mappings
|
|||
src: vscode.jsonc
|
||||
dst: "~/.config/Code - OSS/User/settings.json"
|
||||
|
||||
vscode:
|
||||
src: vscode.jsonc
|
||||
dst: "~/.config/Code/User/settings.json"
|
||||
|
||||
telegram-theme:
|
||||
src: ./telegram.palette
|
||||
dst: ~/.local/share/TelegramDesktop/theme.tdesktop-palette
|
||||
|
||||
blender:
|
||||
"src": blenderTheme.xml
|
||||
"dst": "~/.config/blender/{{@@ blender_version @@}}/scripts/presets/interface_theme/blenderTheme.xml"
|
||||
"dst": "~/.config/blender/scripts/presets/interface_theme/blenderTheme.xml"
|
||||
|
||||
firefox:
|
||||
src: firefox
|
||||
|
@ -496,9 +615,10 @@ dotfiles: # Just a bunch of paths and action mappings
|
|||
|
||||
alacritty: { "src":"alacritty.yml", "dst":"~/.config/alacritty.yml" }
|
||||
bat: { "src":"bat", "dst":"~/.config/bat/config" }
|
||||
fusuma: { "src":"fusuma.yml", "dst":"~/.config/fusuma/config.yml" }
|
||||
foot: { "src": "foot.ini", "dst": "~/.config/foot/foot.ini" }
|
||||
imv: { "src":"imv.conf", "dst":"~/.config/imv/config" }
|
||||
kanshi: { "src":"kanshi", "dst":"~/.config/kanshi/config" }
|
||||
mangohud: { "src":"MangoHud.conf", "dst":"~/.config/MangoHud/MangoHud.conf" }
|
||||
mpd: { "src":"mpd.conf", "dst":"~/.config/mpd/mpd.conf" }
|
||||
paru: { "src":"paru.conf", "dst":"~/.config/paru/paru.conf" }
|
||||
pqivrc: { "src":"pqiv.ini", "dst":"~/.config/pqivrc" }
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
full,histogram
|
|
@ -4,6 +4,11 @@
|
|||
# Behaviour
|
||||
############################################################
|
||||
|
||||
shell:
|
||||
program: /usr/bin/env
|
||||
args:
|
||||
- {{@@ shell @@}}
|
||||
|
||||
selection:
|
||||
save_to_clipboard: true
|
||||
|
||||
|
@ -67,7 +72,9 @@ colors:
|
|||
|
||||
draw_bold_text_with_bright_colors: false
|
||||
|
||||
background_opacity: {{@@ opacity @@}}
|
||||
window:
|
||||
opacity: {{@@ opacity @@}}
|
||||
dynamic_padding: true
|
||||
|
||||
|
||||
############################################################
|
||||
|
@ -86,6 +93,8 @@ hints:
|
|||
key: U
|
||||
mods: Control|Shift
|
||||
|
||||
mouse:
|
||||
hide_when_typing: true
|
||||
|
||||
############################################################
|
||||
key_bindings:
|
||||
|
@ -96,6 +105,7 @@ key_bindings:
|
|||
- { key: {{@@ key.right | upper @@}}, mode: Vi|~Search, action: Right }
|
||||
- { key: {{@@ key.insertMode | upper @@}}, mode: Vi|~Search, action: ScrollToBottom }
|
||||
- { key: {{@@ key.insertMode | upper @@}}, mode: Vi|~Search, action: ToggleViMode }
|
||||
- { key: {{@@ key.next | upper @@}}, mode: Vi|~Search, action: SearchNext }
|
||||
- { key: Up, mods: Control|Shift, mode: ~Alt, action: ScrollLineUp, }
|
||||
- { key: Down, mods: Control|Shift, mode: ~Alt, action: ScrollLineDown }
|
||||
- { key: PageUp, mods: Control|Shift, mode: ~Alt, action: ScrollHalfPageUp }
|
||||
|
|
|
@ -5,7 +5,9 @@ PATH={{@@ env['PATH'] @@}}
|
|||
#minute hour day month day_week cmd
|
||||
*/30 * * * * forecast json
|
||||
*/5 * * * * checkmail update
|
||||
*/5 * * * * vdirsyncer sync
|
||||
*/30 * * * * vdirsyncer sync
|
||||
*/30 * * * * pass git pull --rebase; pass git push
|
||||
0 */6 * * * yes | vdirsyncer discover
|
||||
*/30 * * * * savegame_backup
|
||||
*/30 * * * * _gpg-unlock
|
||||
# {%@@ endif @@%} #
|
||||
|
|
|
@ -7,14 +7,33 @@
|
|||
|
||||
|
||||
[default]
|
||||
default_calendar = calendar_local
|
||||
default_calendar = calendar_personal
|
||||
highlight_event_days = true
|
||||
|
||||
[calendars]
|
||||
[[calendar_local]]
|
||||
path = ~/.local/share/calendars/personal
|
||||
[[calendar_personal]]
|
||||
path = ~/.local/share/calendars/personal/
|
||||
color = 'dark magenta'
|
||||
|
||||
[[calendar_work]]
|
||||
path = ~/.local/share/calendars/trabalho/
|
||||
color = 'dark red'
|
||||
|
||||
[[calendar_uni]]
|
||||
path = ~/.local/share/calendars/fsg/
|
||||
color = 'dark blue'
|
||||
|
||||
[[calendar_birthdays]]
|
||||
path = ~/.local/share/calendars/contact_birthdays/
|
||||
color = 'yellow'
|
||||
|
||||
# [[calendar_local]]
|
||||
# path = ~/.local/share/calendars/*/
|
||||
# type = discover
|
||||
# color = 'dark red'
|
||||
|
||||
[[contacts_local]]
|
||||
path = ~/.local/share/contacts/contacts
|
||||
path = ~/.local/share/contacts/*/
|
||||
type = discover
|
||||
|
||||
[locale]
|
||||
|
@ -36,4 +55,8 @@ today= g
|
|||
other = s
|
||||
{%@@ endif @@%}
|
||||
|
||||
# [highlight_days]
|
||||
# # color = ''
|
||||
# default_color = 'light red'
|
||||
|
||||
# vim: ft=toml
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
# {{@@ header() @@}}
|
||||
|
||||
# A glob expression which matches all directories relevant.
|
||||
path = "~/.local/share/calendars/*"
|
||||
date_format = "%Y-%m-%d"
|
||||
time_format = "%H:%M"
|
||||
default_list = "Personal"
|
||||
default_due = 48
|
|
@ -53,9 +53,9 @@ fileext = ".vcf"
|
|||
|
||||
[storage contacts_remote]
|
||||
type = "carddav"
|
||||
url = "https://cloud.{{@@ mail.personal.mail @@}}/remote.php/dav/addressbooks/users/{{@@ mail.personal.user @@}}/contacts/"
|
||||
username = "{{@@ mail.personal.user @@}}@{{@@ mail.personal.mail @@}}"
|
||||
password.fetch = [ "command", "_pass_get", "{{@@ mail.personal.mail @@}}" ]
|
||||
url = "https://{{@@ nextcloud.host @@}}/remote.php/dav/addressbooks/users/{{@@ nextcloud.user @@}}/"
|
||||
username = "{{@@ nextcloud.user @@}}"
|
||||
password.fetch = [ "command", "_pass_get", "{{@@ nextcloud.pass @@}}" ]
|
||||
|
||||
# CALDAV
|
||||
[pair calendar]
|
||||
|
@ -73,8 +73,8 @@ fileext = ".ics"
|
|||
|
||||
[storage calendar_remote]
|
||||
type = "caldav"
|
||||
url = "https://cloud.{{@@ mail.personal.mail @@}}/remote.php/dav/calendars/{{@@ mail.personal.user @@}}/personal/"
|
||||
username = "{{@@ mail.personal.user @@}}@{{@@ mail.personal.mail @@}}"
|
||||
password.fetch = [ "command", "_pass_get", "{{@@ mail.personal.mail @@}}" ]
|
||||
url = "https://{{@@ nextcloud.host @@}}/remote.php/dav/calendars/{{@@ nextcloud.user @@}}/"
|
||||
username = "{{@@ nextcloud.user @@}}"
|
||||
password.fetch = [ "command", "_pass_get", "{{@@ nextcloud.pass @@}}" ]
|
||||
|
||||
# vim: ft=ini
|
||||
|
|
|
@ -9,8 +9,8 @@
|
|||
"artistNameTemplate": "%artist%",
|
||||
"createAlbumFolder": true,
|
||||
"albumNameTemplate": "%album%",
|
||||
"createCDFolder": true,
|
||||
"createStructurePlaylist": true,
|
||||
"createCDFolder": false,
|
||||
"createStructurePlaylist": false,
|
||||
"createSingleFolder": true,
|
||||
"padTracks": true,
|
||||
"paddingSize": "0",
|
||||
|
@ -30,9 +30,9 @@
|
|||
"embeddedArtworkPNG": false,
|
||||
"localArtworkSize": 1400,
|
||||
"localArtworkFormat": "jpg",
|
||||
"saveArtwork": true,
|
||||
"saveArtwork": false,
|
||||
"coverImageTemplate": "cover",
|
||||
"saveArtworkArtist": true,
|
||||
"saveArtworkArtist": false,
|
||||
"artistImageTemplate": "folder",
|
||||
"jpegImageQuality": 80,
|
||||
"dateFormat": "Y-M-D",
|
||||
|
|
|
@ -10,10 +10,10 @@
|
|||
:root {
|
||||
--arrowpanel-menuitem-padding: 2px !important;
|
||||
}
|
||||
.titlebar-color {
|
||||
/* .titlebar-color {
|
||||
color: -moz-accent-color-foreground;
|
||||
background-color: -moz-accent-color;
|
||||
}
|
||||
} */
|
||||
.tab-background {
|
||||
border-radius: 0px 0px !important;
|
||||
margin-bottom: 0px !important;
|
||||
|
@ -80,3 +80,8 @@
|
|||
display: none;
|
||||
}
|
||||
/*** END Remove webRTC indicator ***/
|
||||
/*** BEGIN Remove title bar ***/
|
||||
#titlebar {
|
||||
display: none;
|
||||
}
|
||||
/*** END Remove title bar ***/
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
user_pref("mousewheel.system_scroll_override_on_root_content.enabled", true);
|
||||
user_pref("mousewheel.with_alt.action", 1);
|
||||
user_pref("mousewheel.with_alt.delta_multiplier_y", 5);
|
||||
user_pref("middlemouse.paste", false);
|
||||
|
||||
// don't show menu bar on Alt
|
||||
user_pref("ui.key.menuAccessKeyFocuses", false);
|
||||
|
@ -49,17 +50,23 @@ user_pref("browser.proton.modals.enabled", false);
|
|||
user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
|
||||
|
||||
// Ui customization
|
||||
user_pref("browser.uiCustomization.state", "{\"placements\":{\"widget-overflow-fixed-list\":[\"ublock0_raymondhill_net-browser-action\",\"sponsorblocker_ajay_app-browser-action\",\"addon_darkreader_org-browser-action\",\"tab-session-manager_sienori-browser-action\",\"fxa-toolbar-menu-button\"],\"nav-bar\":[\"back-button\",\"forward-button\",\"stop-reload-button\",\"customizableui-special-spring1\",\"urlbar-container\",\"customizableui-special-spring2\",\"downloads-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"PersonalToolbar\":[\"import-button\",\"personal-bookmarks\"]},\"seen\":[\"save-to-pocket-button\",\"developer-button\",\"chrome-gnome-shell_gnome_org-browser-action\",\"_contain-facebook-browser-action\",\"sponsorblocker_ajay_app-browser-action\",\"ublock0_raymondhill_net-browser-action\",\"addon_darkreader_org-browser-action\",\"_e4a8a97b-f2ed-450b-b12d-ee082ba24781_-browser-action\",\"_48748554-4c01-49e8-94af-79662bf34d50_-browser-action\",\"tab-session-manager_sienori-browser-action\"],\"dirtyAreaCache\":[\"nav-bar\",\"PersonalToolbar\",\"toolbar-menubar\",\"TabsToolbar\",\"widget-overflow-fixed-list\"],\"currentVersion\":17,\"newElementCount\":5}");
|
||||
|
||||
// user_pref("browser.uiCustomization.state", "{\"placements\":{\"widget-overflow-fixed-list\":[\"ublock0_raymondhill_net-browser-action\",\"sponsorblocker_ajay_app-browser-action\",\"addon_darkreader_org-browser-action\",\"tab-session-manager_sienori-browser-action\",\"fxa-toolbar-menu-button\"],\"nav-bar\":[\"back-button\",\"forward-button\",\"stop-reload-button\",\"customizableui-special-spring1\",\"urlbar-container\",\"customizableui-special-spring2\",\"downloads-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"PersonalToolbar\":[\"import-button\",\"personal-bookmarks\"]},\"seen\":[\"save-to-pocket-button\",\"developer-button\",\"chrome-gnome-shell_gnome_org-browser-action\",\"_contain-facebook-browser-action\",\"sponsorblocker_ajay_app-browser-action\",\"ublock0_raymondhill_net-browser-action\",\"addon_darkreader_org-browser-action\",\"_e4a8a97b-f2ed-450b-b12d-ee082ba24781_-browser-action\",\"_48748554-4c01-49e8-94af-79662bf34d50_-browser-action\",\"tab-session-manager_sienori-browser-action\"],\"dirtyAreaCache\":[\"nav-bar\",\"PersonalToolbar\",\"toolbar-menubar\",\"TabsToolbar\",\"widget-overflow-fixed-list\"],\"currentVersion\":17,\"newElementCount\":5}");
|
||||
user_pref("browser.tabs.drawInTitlebar", false);
|
||||
|
||||
user_pref("devtools.chrome.enabled", true);
|
||||
user_pref("devtools.command-button-measure.enabled", true);
|
||||
user_pref("devtools.command-button-rulers.enabled", true);
|
||||
user_pref("devtools.dom.enabled", true);
|
||||
|
||||
user_pref("devtools.editor.keymap", "emacs");
|
||||
// user_pref("devtools.editor.keymap", "emacs");
|
||||
user_pref("devtools.editor.tabsize", 4);
|
||||
user_pref("devtools.inspector.activeSidebar", "ruleview");
|
||||
user_pref("devtools.inspector.three-pane-enabled", false);
|
||||
user_pref("devtools.responsive.leftAlignViewport.enabled", true);
|
||||
user_pref("devtools.theme", "dark");
|
||||
user_pref("devtools.theme", "auto");
|
||||
|
||||
// hardware acceleration
|
||||
user_pref("media.ffmpeg.vaapi.enabled", "true");
|
||||
user_pref("media.ffvpx.enabled", "false");
|
||||
user_pref("media.rdd-vpx.enabled", "false");
|
||||
user_pref("gfx.webrender.compositor.force-enabled", "true");
|
||||
|
|
|
@ -16,12 +16,14 @@ function calias
|
|||
|
||||
abbr -g mpn ncmpcpp
|
||||
abbr -g dot "dotdrop install -f"
|
||||
|
||||
set -l root_cfg (dirname $DOTDROP_CONFIG)/root
|
||||
alias rootdrop 'sudo dotdrop install -f -c "$root_cfg"'
|
||||
cabbr ytd "yt-dlp --merge-output-format mp4"
|
||||
|
||||
cabbr p emerge
|
||||
|
||||
if command -qs xbps-install
|
||||
cabbr p sudo xbps-install -y
|
||||
end
|
||||
|
||||
cabbr p pacman
|
||||
cabbr p pikaur
|
||||
cabbr p yay
|
||||
|
@ -32,9 +34,30 @@ cabbr p paru
|
|||
# Editor
|
||||
################################################################
|
||||
|
||||
{%@@ if editor == "kak" @@%}
|
||||
function kak --wraps kak
|
||||
if contains -- -s $argv > /dev/null
|
||||
or contains -- -c $argv > /dev/null
|
||||
command kak $argv
|
||||
return
|
||||
end
|
||||
set -l session (
|
||||
echo $PWD |
|
||||
string replace -r "$HOME/?" '' |
|
||||
string replace -a '/' '_'
|
||||
)
|
||||
if test $HOME = $PWD
|
||||
set session (basename $PWD)
|
||||
end
|
||||
command kak -c $session $argv 2> /dev/null
|
||||
or command kak -s $session $argv
|
||||
or command kak $argv
|
||||
end
|
||||
{%@@ endif @@%}
|
||||
|
||||
cabbr v {{@@ editor @@}}
|
||||
|
||||
cabbr rv sudo {{@@ editor @@}}
|
||||
cabbr rv sudoedit
|
||||
cabbr rv doas {{@@ editor @@}}
|
||||
|
||||
|
||||
|
@ -49,8 +72,8 @@ abbr -g crm command rm -i
|
|||
# ls and cat
|
||||
################################################################
|
||||
|
||||
calias ls 'exa --git'
|
||||
calias tree 'exa --git --tree --icons'
|
||||
calias ls 'exa --git --sort newest'
|
||||
calias tree 'exa --git --tree --icons --git-ignore'
|
||||
calias cat 'bat -p'
|
||||
calias cp 'cp --reflink=auto'
|
||||
calias ip 'ip --color=auto'
|
||||
|
@ -74,18 +97,19 @@ end
|
|||
# Show reminders on startup
|
||||
################################################################
|
||||
|
||||
command -qs khard &&
|
||||
function fish_greeting
|
||||
command -qs khal
|
||||
or return
|
||||
set -l khalList (khal --color list now 10d --format " {title}")
|
||||
test -n "$khalList"
|
||||
or return
|
||||
echo $khalList | strip-escape | string match -qr '^No events$'
|
||||
and return
|
||||
printf "%s\n" $khalList
|
||||
end
|
||||
function fish_greeting
|
||||
command -qs khal
|
||||
or return
|
||||
set -l khalList (khal --color list now 5d)
|
||||
test -n "$khalList"
|
||||
or return
|
||||
echo $khalList | strip-escape | string match -qr '^No events$'
|
||||
and return
|
||||
printf "%s\n" $khalList
|
||||
end
|
||||
|
||||
function fish_greeting
|
||||
end
|
||||
|
||||
################################################################
|
||||
# Git
|
||||
|
@ -102,44 +126,20 @@ abbr -g gds 'git diff --staged'
|
|||
abbr -g gc 'git commit'
|
||||
abbr -g gca 'git commit --all'
|
||||
abbr -g gcf 'git commit --fixup'
|
||||
abbr -g gp 'git push -u origin (git branch --show-current)'
|
||||
abbr -g gw 'git switch'
|
||||
abbr -g gr 'cd (git root)'
|
||||
abbr -g gri 'git rebase --interactive FETCH_HEAD'
|
||||
|
||||
|
||||
################################################################
|
||||
# work stuff
|
||||
################################################################
|
||||
|
||||
abbr svu sv start apache mariadb
|
||||
abbr svd sv stop apache mariadb
|
||||
abbr svs sv status apache mariadb
|
||||
abbr pname "\
|
||||
set pname (basename (pwd | sd -- - _))
|
||||
sd 'DB_DATABASE=.*' DB_DATABASE=\$pname .env
|
||||
test (count dump/*) -eq 1
|
||||
and mv dump/* dump/\$pname.sql"
|
||||
abbr msv "\
|
||||
string match -r 'DB_DATABASE=(?<db>.*)\$' < .env
|
||||
set margs -v -u root --password=(_pass_get work_db)"
|
||||
abbr msc 'echo "CREATE DATABASE $db" | mysql $margs'
|
||||
abbr msdrop 'echo "DROP DATABASE $db" | mysql $margs'
|
||||
abbr msl 'mysql $margs $db < dump/$db.sql'
|
||||
abbr msd 'mariadb-dump $margs $db | mysql_format > dump/$db.sql'
|
||||
abbr vw 'kak public/**.less resources/**.blade.php app/**.php (fd -E \'*.min.js\' \'.js$\' public/)'
|
||||
abbr gdw 'git diff -- "*.less" "*.js" "*.blade.php"'
|
||||
abbr pl 'php7 artisan serve --host 0.0.0.0 & make watch'
|
||||
|
||||
function mysql_format
|
||||
sd "\),\(" "),\n\t(" | sd "VALUES \(" "VALUES\n\t("
|
||||
end
|
||||
|
||||
|
||||
################################################################
|
||||
# open
|
||||
################################################################
|
||||
|
||||
function open -w xdg-open
|
||||
xdg-open $argv &> /dev/null & disown
|
||||
for i in $argv
|
||||
xdg-open $i &> /dev/null & disown
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
@ -147,7 +147,7 @@ end
|
|||
# Copy files like graphical programs
|
||||
################################################################
|
||||
|
||||
function wl-copy-f -w wl-copy
|
||||
function wl-copy-f
|
||||
set -a file
|
||||
for arg in (seq 1 (count $argv))
|
||||
if test -f "$argv[$arg]"
|
||||
|
@ -197,7 +197,7 @@ end
|
|||
|
||||
function edit-config
|
||||
pushd (dirname "$DOTDROP_CONFIG")
|
||||
set -l dotfile (fd -HE .git | wdmenu)
|
||||
set -l dotfile (fd --strip-cwd-prefix -HE .git | wdmenu)
|
||||
test -n "$dotfile" || return 1
|
||||
{{@@ editor @@}} "$dotfile"
|
||||
popd
|
||||
|
|
|
@ -7,14 +7,20 @@
|
|||
|
||||
set -U fish_features stderr-nocaret qmark-noglob regex-easyesc
|
||||
|
||||
source {$__fish_config_dir}/env.fish
|
||||
source {$__fish_config_dir}/wm.fish
|
||||
source {$__fish_config_dir}/alias.fish
|
||||
source {$__fish_config_dir}/keys.fish
|
||||
source {$__fish_config_dir}/tmux.fish
|
||||
source {$__fish_config_dir}/colors.fish
|
||||
source {$__fish_config_dir}/prompt.fish
|
||||
if status is-interactive
|
||||
{%@@ if asdf @@%}
|
||||
set asdf
|
||||
{%@@ endif @@%}
|
||||
|
||||
source {$__fish_config_dir}/env.fish
|
||||
source {$__fish_config_dir}/wm.fish
|
||||
source {$__fish_config_dir}/alias.fish
|
||||
source {$__fish_config_dir}/keys.fish
|
||||
source {$__fish_config_dir}/tmux.fish
|
||||
source {$__fish_config_dir}/colors.fish
|
||||
source {$__fish_config_dir}/plugins.fish
|
||||
|
||||
end
|
||||
|
||||
function _fish_autoreload --on-signal SIGHUP
|
||||
source {$__fish_config_dir}/config.fish
|
||||
|
|
|
@ -5,13 +5,29 @@
|
|||
# | _| \__ \ | | |
|
||||
# |_| |_|___/_| |_|
|
||||
|
||||
set -x QT_QPA_PLATFORMTHEME qt5ct
|
||||
# set -x QT_QPA_PLATFOR wayland
|
||||
set -x QT_QPA_PLATFORMTHEME gtk2
|
||||
set -x DESKTOP_APP_I_KNOW_ABOUT_GTK_INCOMPATIBILITY 1
|
||||
set -x ALSOFT_DRIVERS "pulse," # Telegram audio library
|
||||
set -x SDL_GAMECONTROLLERCONFIG '050000004c0500006802000000800000,Sony PLAYSTATION(R)3 Controller,a:b0,b:b1,x:b3,y:b2,back:b8,guide:b10,start:b9,leftstick:b11,rightstick:b12,leftshoulder:b4,rightshoulder:b5,dpup:b13,dpdown:b14,dpleft:b15,dpright:b16,leftx:a0,lefty:a1,rightx:a3,righty:a4,lefttrigger:a2,righttrigger:a5,platform:Linux,'
|
||||
|
||||
for i in ~/.local/bin ~/.cargo/bin ~/.factorio/bin/*
|
||||
test -d "$i";and fish_add_path "$i"
|
||||
set -x XDG_DATA_DIRS "$XDG_DATA_DIRS:/var/lib/flatpak/exports/share"
|
||||
set -x XDG_DATA_DIRS "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share"
|
||||
set -x XDG_DATA_DIRS "$XDG_DATA_DIRS:/usr/share"
|
||||
set -x XDG_DATA_DIRS "$XDG_DATA_DIRS:$HOME/.local/share"
|
||||
|
||||
set -x XDG_CONFIG_HOME "$HOME/.config/"
|
||||
|
||||
if set -q asdf
|
||||
set __cargo_asdf_bin ~/.asdf/installs/rust/*/bin/
|
||||
set __yarn_asdf_bin ~/.config/yarn/global/node_modules/.bin/
|
||||
else
|
||||
set __cargo_bin ~/.cargo/bin/
|
||||
set __yarn_bin ~/.yarn/bin/
|
||||
set -x NVM_DIR ~/.local/share/nvm
|
||||
end
|
||||
|
||||
for i in ~/.local/bin $__cargo_bin $__cargo_asdf_bin $__yarn_asdf_bin ~/.yarn/bin ~/.factorio/bin/*
|
||||
test -d "$i";and fish_add_path --global "$i"
|
||||
end
|
||||
|
||||
# needed for tmux
|
||||
|
@ -83,6 +99,6 @@ set -x _COLOR_TYPE "{{@@ color_type @@}}"
|
|||
set -x _ACCENT_COLOR "{{@@ accent_color_name @@}}"
|
||||
|
||||
set -x DOTDROP_CONFIG "{{@@ _dotdrop_cfgpath @@}}"
|
||||
set -x DOTDROP_PROFILE "{{@@ profile @@}}"
|
||||
# set -x DOTDROP_PROFILE "{{@@ profile @@}}"
|
||||
|
||||
set -x DOTDROP_WORKERS (math 2 \* (nproc))
|
||||
|
|
|
@ -34,10 +34,16 @@ end
|
|||
bind \cy 'commandline | wl-copy -n'
|
||||
|
||||
# Enable fzf key bindings
|
||||
fzf_key_bindings
|
||||
if not type -q fzf_key_bindings
|
||||
and test -f /usr/share/fzf/key-bindings.fish
|
||||
source /usr/share/fzf/key-bindings.fish
|
||||
end
|
||||
if type -q fzf_key_bindings
|
||||
fzf_key_bindings
|
||||
end
|
||||
|
||||
|
||||
function rcd #{{{
|
||||
function rcd
|
||||
set file (mktemp)
|
||||
|
||||
ranger --choosedir=$file
|
||||
|
|
|
@ -0,0 +1,89 @@
|
|||
# {{@@ header() @@}}
|
||||
|
||||
##################################################
|
||||
# fundle fish plugin manager
|
||||
##################################################
|
||||
|
||||
if not functions -q fundle
|
||||
and test "$USER" != root
|
||||
eval (curl -sfL https://git.io/fundle-install)
|
||||
end
|
||||
if not set -q asdf
|
||||
fundle plugin 'FabioAntunes/fish-nvm'
|
||||
end
|
||||
fundle plugin 'edc/bass'
|
||||
fundle init
|
||||
|
||||
|
||||
################################################################
|
||||
# Source .env files
|
||||
################################################################
|
||||
|
||||
command -qs direnv &&
|
||||
direnv hook fish | source
|
||||
|
||||
|
||||
##################################################
|
||||
# asdf Version manager
|
||||
##################################################
|
||||
|
||||
if set -q asdf
|
||||
if not test -d ~/.asdf
|
||||
and test "$USER" != root
|
||||
git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.9.0
|
||||
mkdir -p ~/.config/fish/completions
|
||||
and ln -s ~/.asdf/completions/asdf.fish ~/.config/fish/completions
|
||||
|
||||
source ~/.asdf/asdf.fish
|
||||
|
||||
asdf plugin add nodejs
|
||||
asdf install nodejs 12.13.1
|
||||
asdf install nodejs latest
|
||||
asdf global nodejs latest
|
||||
|
||||
asdf plugin-add yarn
|
||||
asdf install yarn latest
|
||||
asdf global yarn latest
|
||||
|
||||
asdf plugin add rust
|
||||
asdf install rust nightly
|
||||
asdf global rust nightly
|
||||
|
||||
end
|
||||
|
||||
test -f ~/.asdf/asdf.fish
|
||||
and source ~/.asdf/asdf.fish
|
||||
end
|
||||
|
||||
|
||||
##################################################
|
||||
# Rust tools
|
||||
##################################################
|
||||
|
||||
command -qs rustup
|
||||
or _install-rustup &> /dev/null &
|
||||
|
||||
command -qs sccache
|
||||
or _install-sccache &> /dev/null &
|
||||
# set -x RUSTC_WRAPPER sccache
|
||||
|
||||
command -qs rust-analyzer
|
||||
or _install-rust-analyzer &> /dev/null &
|
||||
|
||||
command -qs trunk
|
||||
or _install-trunk &> /dev/null &
|
||||
|
||||
command -qs diesel
|
||||
and diesel completions fish | source
|
||||
|
||||
##################################################
|
||||
# Prompt
|
||||
##################################################
|
||||
|
||||
{%@@ if starship @@%}
|
||||
starship init fish | source
|
||||
# Set cursor shape
|
||||
printf '\e[5 q' # Bar
|
||||
{%@@ else @@%}
|
||||
source {$__fish_config_dir}/prompt.fish
|
||||
{%@@ endif @@%}
|
|
@ -48,17 +48,24 @@ function _fish_prompt_git_remote_branches
|
|||
end
|
||||
|
||||
function fish_git_prompt
|
||||
pushd (string replace -r '/\.git(/.*)?$' '' "$PWD")
|
||||
command -qs git
|
||||
or return
|
||||
|
||||
set -l here (string replace -r '/\.git(/.*)?$' '' "$PWD")
|
||||
|
||||
test -d "$here"
|
||||
or return
|
||||
|
||||
pushd "$here"
|
||||
|
||||
############################################################
|
||||
# Check if in a git repo and save branch and status
|
||||
############################################################
|
||||
|
||||
set git_branch (git branch --show-current 2> /dev/null);or return
|
||||
set git_detach (_fish_prompt_git_detached)
|
||||
set git_remote (_fish_prompt_git_remote_branches)
|
||||
set git_remotes (git remote)
|
||||
set git_status_s (timeout 1s git status -s | string collect)
|
||||
set -l git_branch (git branch --show-current 2> /dev/null);or return
|
||||
set -l git_detach (_fish_prompt_git_detached)
|
||||
set -l git_remote_branch (git rev-parse --abbrev-ref (git branch --show-current)@{u} 2> /dev/null)
|
||||
set -l git_status_s (timeout 1s git status -s | string collect)
|
||||
|
||||
_fish_prompt_normal " on "
|
||||
|
||||
|
@ -80,14 +87,23 @@ function fish_git_prompt
|
|||
_fish_prompt_warn "init"
|
||||
end
|
||||
|
||||
# print a "↑" if ahead of origin
|
||||
for git_remote in (echo $git_remotes | sort -u)
|
||||
# Remote has the current branch
|
||||
string match -qr "$git_remote"/"$git_branch" $git_remote
|
||||
# Check if remote is different
|
||||
and not git diff --quiet "$git_branch" "$git_remote"/"$git_branch" --
|
||||
and _fish_prompt_normal '↑'
|
||||
and break
|
||||
# Remote has the current branch
|
||||
if test -n "$git_remote_branch"
|
||||
# print a "↑" if ahead of origin
|
||||
test 0 -ne (git log --oneline "$git_remote_branch"..HEAD -- | wc -l)
|
||||
and set -l _git_sync_ahead '↑'
|
||||
|
||||
# print a "↓" if behind of origin
|
||||
test 0 -lt (git log --oneline HEAD.."$git_remote_branch" -- | wc -l)
|
||||
and set -l _git_sync_behind '↓'
|
||||
|
||||
if set -q _git_sync_ahead _git_sync_behind
|
||||
_fish_prompt_normal '⇅'
|
||||
else if set -q _git_sync_ahead
|
||||
_fish_prompt_normal '↑'
|
||||
else if set -q _git_sync_behind
|
||||
_fish_prompt_normal '↓'
|
||||
end
|
||||
end
|
||||
|
||||
############################################################
|
||||
|
|
|
@ -13,13 +13,16 @@ function esway
|
|||
# You get a wayland, and you get a wayland. Everybody get's a wayland!
|
||||
# set -x MOZ_ENABLE_WAYLAND 1
|
||||
# set -x CLUTTER_BACKEND wayland
|
||||
# set -x QT_QPA_PLATFORM wayland-egl
|
||||
set -x QT_QPA_PLATFORM wayland-egl
|
||||
# set -x ECORE_EVAS_ENGINE wayland-egl
|
||||
# set -x ELM_ENGINE wayland_egl
|
||||
# set -x SDL_VIDEODRIVER wayland
|
||||
# set -x _JAVA_AWT_WM_NONREPARENTING 1
|
||||
set -x _JAVA_AWT_WM_NONREPARENTING 1
|
||||
# set -x NO_AT_BRIDGE 1
|
||||
|
||||
# Hardware acceleration
|
||||
set -x MOZ_DISABLE_RDD_SANDBOX 1
|
||||
|
||||
# Allow sway decoration on gtk3 apps
|
||||
set -x GTK_CSD 0
|
||||
test -f '/usr/lib/libgtk3-nocsd.so.0' &&
|
||||
|
@ -35,14 +38,22 @@ function esway
|
|||
set -x XDG_CURRENT_DESKTOP sway
|
||||
|
||||
# this should not be necessary, but whatever
|
||||
pidof sway &> /dev/null || exec sway
|
||||
|
||||
if not pidof sway &> /dev/null
|
||||
{%@@ if supervisor == "runit" @@%}
|
||||
pkill -HUP -u "$USER" runsvdir
|
||||
exec dbus-launch --exit-with-session sway
|
||||
{%@@ elif supervisor == "systemd" @@%}
|
||||
exec systemd-cat --identifier=sway sway
|
||||
{%@@ else @@%}
|
||||
exec dbus-launch --exit-with-session sway
|
||||
{%@@ endif @@%}
|
||||
end
|
||||
end
|
||||
|
||||
if test "$XDG_VTNR" = 1
|
||||
if test (tty) = /dev/tty1
|
||||
and test -z "$DISPLAY$WAYLAND_DISPLAY"
|
||||
|
||||
esway &> tee .swaylog
|
||||
esway &> .swaylog
|
||||
# ei3 &> .i3log
|
||||
# ebsp &> .bsplog
|
||||
|
||||
|
|
|
@ -0,0 +1,162 @@
|
|||
# -*- conf -*-
|
||||
|
||||
# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
|
||||
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
|
||||
# login-shell=no
|
||||
|
||||
# app-id=foot
|
||||
# title=foot
|
||||
# locked-title=no
|
||||
|
||||
font={{@@ font.mono @@}}:size={{@@ font.size.small @@}}
|
||||
# font-bold=<bold variant of regular font>
|
||||
# font-italic=<italic variant of regular font>
|
||||
# font-bold-italic=<bold+italic variant of regular font>
|
||||
# line-height=<font metrics>
|
||||
# letter-spacing=0
|
||||
# horizontal-letter-offset=0
|
||||
# vertical-letter-offset=0
|
||||
# underline-offset=<font metrics>
|
||||
# box-drawings-uses-font-glyphs=no
|
||||
dpi-aware=no
|
||||
|
||||
# initial-window-size-pixels=700x500 # Or,
|
||||
# initial-window-size-chars=<COLSxROWS>
|
||||
# initial-window-mode=windowed
|
||||
# pad=2x2 # optionally append 'center'
|
||||
# resize-delay-ms=100
|
||||
|
||||
# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
|
||||
|
||||
bold-text-in-bright=no
|
||||
# bell=none
|
||||
# word-delimiters=,│`|:"'()[]{}<>
|
||||
# selection-target=primary
|
||||
# workers=<number of logical CPUs>
|
||||
|
||||
[bell]
|
||||
# urgent=no
|
||||
# notify=no
|
||||
# command=
|
||||
# command-focused=no
|
||||
|
||||
[scrollback]
|
||||
# lines=1000
|
||||
# multiplier=3.0
|
||||
# indicator-position=relative
|
||||
# indicator-format=
|
||||
|
||||
[url]
|
||||
# launch=xdg-open ${url}
|
||||
# label-letters=sadfjklewcmpgh
|
||||
# osc8-underline=url-mode
|
||||
# protocols=http, https, ftp, ftps, file, gemini, gopher
|
||||
# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'
|
||||
|
||||
[cursor]
|
||||
# style=block
|
||||
# color=111111 dcdccc
|
||||
# blink=no
|
||||
# beam-thickness=1.5
|
||||
# underline-thickness=<font underline thickness>
|
||||
|
||||
[mouse]
|
||||
# hide-when-typing=no
|
||||
# alternate-scroll-mode=yes
|
||||
|
||||
[colors]
|
||||
alpha={{@@ opacity @@}}
|
||||
foreground={{@@ color.txt .replace('#','')@@}}
|
||||
background={{@@ color.bg .replace('#','')@@}}
|
||||
regular0={{@@ color.normal.black .replace('#','') @@}} # black
|
||||
regular1={{@@ color.normal.red .replace('#','') @@}} # red
|
||||
regular2={{@@ color.normal.green .replace('#','') @@}} # green
|
||||
regular3={{@@ color.normal.yellow .replace('#','') @@}} # yellow
|
||||
regular4={{@@ color.normal.blue .replace('#','') @@}} # blue
|
||||
regular5={{@@ color.normal.magenta .replace('#','') @@}} # magenta
|
||||
regular6={{@@ color.normal.cyan .replace('#','') @@}} # cyan
|
||||
regular7={{@@ color.normal.white .replace('#','') @@}} # white
|
||||
bright0={{@@ color.normal.black .replace('#','') | lighter @@}} # bright black
|
||||
bright1={{@@ color.normal.red .replace('#','') | lighter @@}} # bright red
|
||||
bright2={{@@ color.normal.green .replace('#','') | lighter @@}} # bright green
|
||||
bright3={{@@ color.normal.yellow .replace('#','') | lighter @@}} # bright yellow
|
||||
bright4={{@@ color.normal.blue .replace('#','') | lighter @@}} # bright blue
|
||||
bright5={{@@ color.normal.magenta .replace('#','') | lighter @@}} # bright magenta
|
||||
bright6={{@@ color.normal.cyan .replace('#','') | lighter @@}} # bright cyan
|
||||
bright7={{@@ color.normal.white .replace('#','') | lighter @@}} # bright white
|
||||
# 16 = <256-color palette #16>
|
||||
# ...
|
||||
# 255 = <256-color palette #255>
|
||||
# selection-foreground=<inverse foreground/background>
|
||||
# selection-background=<inverse foreground/background>
|
||||
# jump-labels=<regular0> <regular3>
|
||||
# urls=<regular3>
|
||||
|
||||
[csd]
|
||||
# preferred=server
|
||||
# size=26
|
||||
# font=<primary font>
|
||||
# color=<foreground color>
|
||||
# button-width=26
|
||||
# button-color=<background color>
|
||||
# button-minimize-color=<regular4>
|
||||
# button-maximize-color=<regular2>
|
||||
# button-close-color=<regular1>
|
||||
|
||||
[key-bindings]
|
||||
# scrollback-up-page=Shift+Page_Up
|
||||
# scrollback-up-half-page=none
|
||||
# scrollback-up-line=none
|
||||
# scrollback-down-page=Shift+Page_Down
|
||||
# scrollback-down-half-page=none
|
||||
# scrollback-down-line=none
|
||||
# clipboard-copy=Control+Shift+c
|
||||
# clipboard-paste=Control+Shift+v
|
||||
# primary-paste=Shift+Insert
|
||||
# search-start=Control+Shift+r
|
||||
# font-increase=Control+plus Control+equal Control+KP_Add
|
||||
# font-decrease=Control+minus Control+KP_Subtract
|
||||
# font-reset=Control+0 Control+KP_0
|
||||
# spawn-terminal=Control+Shift+n
|
||||
# minimize=none
|
||||
# maximize=none
|
||||
# fullscreen=none
|
||||
# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||
# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||
# pipe-selected=[xargs -r firefox] none
|
||||
# show-urls-launch=Control+Shift+u
|
||||
# show-urls-copy=none
|
||||
|
||||
[search-bindings]
|
||||
# cancel=Control+g Control+c Escape
|
||||
# commit=Return
|
||||
# find-prev=Control+r
|
||||
# find-next=Control+s
|
||||
# cursor-left=Left Control+b
|
||||
# cursor-left-word=Control+Left Mod1+b
|
||||
# cursor-right=Right Control+f
|
||||
# cursor-right-word=Control+Right Mod1+f
|
||||
# cursor-home=Home Control+a
|
||||
# cursor-end=End Control+e
|
||||
# delete-prev=BackSpace
|
||||
# delete-prev-word=Mod1+BackSpace Control+BackSpace
|
||||
# delete-next=Delete
|
||||
# delete-next-word=Mod1+d Control+Delete
|
||||
# extend-to-word-boundary=Control+w
|
||||
# extend-to-next-whitespace=Control+Shift+w
|
||||
# clipboard-paste=Control+v Control+y
|
||||
# primary-paste=Shift+Insert
|
||||
|
||||
[url-bindings]
|
||||
# cancel=Control+g Control+c Control+d Escape
|
||||
# toggle-url-visible=t
|
||||
|
||||
[mouse-bindings]
|
||||
# primary-paste=BTN_MIDDLE
|
||||
# select-begin=BTN_LEFT
|
||||
# select-begin-block=Control+BTN_LEFT
|
||||
# select-extend=BTN_RIGHT
|
||||
# select-extend-character-wise=Control+BTN_RIGHT
|
||||
# select-word=BTN_LEFT-2
|
||||
# select-word-whitespace=Control+BTN_LEFT-2
|
||||
# select-row=BTN_LEFT-3
|
|
@ -1,31 +0,0 @@
|
|||
# {{@@ header() @@}}
|
||||
# _____
|
||||
# | ___| _ ___ _ _ _ __ ___ __ _
|
||||
# | |_ | | | / __| | | | '_ ` _ \ / _` |
|
||||
# | _|| |_| \__ \ |_| | | | | | | (_| |
|
||||
# |_| \__,_|___/\__,_|_| |_| |_|\__,_|
|
||||
|
||||
|
||||
swipe:
|
||||
3:
|
||||
left:
|
||||
command: 'swaymsg workspace next'
|
||||
right:
|
||||
command: 'swaymsg workspace prev'
|
||||
up:
|
||||
command: 'swaymsg fullscreen toggle'
|
||||
down:
|
||||
command: 'launcher'
|
||||
# pinch:
|
||||
# in:
|
||||
# command: 'xdotool key ctrl+shift+plus'
|
||||
# out:
|
||||
# command: 'xdotool key ctrl+minus'
|
||||
|
||||
# threshold:
|
||||
# swipe: 1
|
||||
# # pinch: 0.2
|
||||
|
||||
# interval:
|
||||
# swipe: 0.5
|
||||
# # pinch: 0.2
|
|
@ -5,10 +5,9 @@
|
|||
# | |_| | | |_
|
||||
# \____|_|\__|
|
||||
|
||||
|
||||
[user]
|
||||
name = {{@@ username @@}}
|
||||
email = {{@@ mail.personal.user @@}}@{{@@ mail.personal.mail @@}}
|
||||
email = {{@@ mail.personal.user @@}}
|
||||
|
||||
[init]
|
||||
defaultBranch = main
|
||||
|
@ -22,6 +21,9 @@
|
|||
[merge]
|
||||
conflictStyle = diff3
|
||||
|
||||
[rerere]
|
||||
enabled = true
|
||||
|
||||
[rebase]
|
||||
abbreviateCommands = true
|
||||
autoSquash = true
|
||||
|
@ -30,13 +32,13 @@
|
|||
[pager]
|
||||
# differ is a program that shows word-by-word diff
|
||||
#{%@@ if editor == "kak" @@%}#
|
||||
log = diffr | kak-pager
|
||||
show = diffr | kak-pager
|
||||
diff = diffr | kak-pager
|
||||
log = _diffr | kak-pager
|
||||
show = _diffr | kak-pager
|
||||
diff = _diffr | kak-pager
|
||||
#{%@@ else @@%}#
|
||||
log = diffr | less
|
||||
show = diffr | less
|
||||
diff = diffr | less
|
||||
log = _diffr | less
|
||||
show = _diffr | less
|
||||
diff = _diffr | less
|
||||
#{%@@ endif @@%}#
|
||||
|
||||
[alias]
|
||||
|
@ -55,7 +57,10 @@
|
|||
excludesfile = {{@@ _dotfile_abs_dst @@}}/ignore
|
||||
; hooksPath = {{@@ _dotfile_abs_dst @@}}/hooks/
|
||||
|
||||
[includeIf "gitdir:~/Projects/work/"]
|
||||
path = ~/.config/git/config-work
|
||||
[includeIf "gitdir:~/Projects/"]
|
||||
path = {{@@ _dotfile_abs_dst @@}}/config-personal
|
||||
|
||||
[includeIf "gitdir:~/Wopus/"]
|
||||
path = {{@@ _dotfile_abs_dst @@}}/config-work
|
||||
|
||||
# vim: ft=ini
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
|
||||
[user]
|
||||
name = {{@@ mail.work.user.split("@")[0] | capitalize @@}}
|
||||
email = {{@@ mail.work.user.split("@")[0] @@}}@{{@@ mail.work.mail @@}}
|
||||
name = {{@@ mail.work.from | title @@}}
|
||||
email = {{@@ mail.work.user @@}}
|
||||
|
||||
# vim: ft=ini
|
||||
|
|
|
@ -9,3 +9,6 @@
|
|||
allow-preset-passphrase
|
||||
max-cache-ttl 604800
|
||||
default-cache-ttl 604800
|
||||
|
||||
allow-loopback-pinentry
|
||||
pinentry-mode loopback
|
||||
|
|
|
@ -6,40 +6,9 @@
|
|||
# |_|\_\__,_|_|\_\ |_____|____/|_|
|
||||
|
||||
|
||||
snippet_support = false
|
||||
snippet_support = true
|
||||
verbosity = 2
|
||||
|
||||
[semantic_scopes]
|
||||
# Map textmate scopes to kakoune faces for semantic highlighting
|
||||
# the underscores are translated to dots, and indicate nesting.
|
||||
# That is, if variable_other_field is omitted, it will try the face for
|
||||
# variable_other and then variable
|
||||
#
|
||||
# To see a list of available scopes in the debug buffer, run lsp-semantic-available-scopes
|
||||
variable = "variable"
|
||||
entity_name_function = "function"
|
||||
entity_name_type = "type"
|
||||
variable_other_enummember = "variable"
|
||||
entity_name_namespace = "module"
|
||||
|
||||
# Semantic tokens support
|
||||
# See https://github.com/microsoft/vscode-languageserver-node/blob/8c8981eb4fb6adec27bf1bb5390a0f8f7df2899e/client/src/semanticTokens.proposed.ts#L288
|
||||
# for token/modifier types.
|
||||
|
||||
[semantic_tokens]
|
||||
type = "type"
|
||||
variable = "variable"
|
||||
namespace = "module"
|
||||
function = "function"
|
||||
string = "string"
|
||||
keyword = "keyword"
|
||||
operator = "operator"
|
||||
comment = "comment"
|
||||
|
||||
[semantic_modifiers]
|
||||
documentation = "documentation"
|
||||
readonly = "default+d"
|
||||
|
||||
[server]
|
||||
# exit session if no requests were received during given period in seconds
|
||||
# works only in unix sockets mode (-s/--session)
|
||||
|
@ -65,13 +34,13 @@ command = "scry"
|
|||
[language.css]
|
||||
filetypes = ["css"]
|
||||
roots = ["package.json"]
|
||||
command = "css-languageserver"
|
||||
command = "vscode-css-languageserver"
|
||||
args = ["--stdio"]
|
||||
|
||||
[language.less]
|
||||
filetypes = ["less"]
|
||||
roots = ["package.json", ".git"]
|
||||
command = "css-languageserver"
|
||||
command = "vscode-css-languageserver"
|
||||
args = ["--stdio"]
|
||||
|
||||
[language.d]
|
||||
|
@ -92,11 +61,11 @@ roots = ["elm.json"]
|
|||
command = "elm-language-server"
|
||||
args = ["--stdio"]
|
||||
|
||||
[language.elm.initialization_options]
|
||||
runtime = "node"
|
||||
elmPath = "elm"
|
||||
elmFormatPath = "elm-format"
|
||||
elmTestPath = "elm-test"
|
||||
# [language.elm.initialization_options]
|
||||
# runtime = "node"
|
||||
# elmPath = "elm"
|
||||
# elmFormatPath = "elm-format"
|
||||
# elmTestPath = "elm-test"
|
||||
|
||||
[language.go]
|
||||
filetypes = ["go"]
|
||||
|
@ -107,15 +76,13 @@ offset_encoding = "utf-8"
|
|||
[language.haskell]
|
||||
filetypes = ["haskell"]
|
||||
roots = ["Setup.hs", "stack.yaml", "*.cabal"]
|
||||
# You might also be interested in the newer, but early stage, haskell-language-server
|
||||
# https://github.com/haskell/haskell-language-server
|
||||
command = "hie-wrapper"
|
||||
command = "haskell-language-server-wrapper"
|
||||
args = ["--lsp"]
|
||||
|
||||
[language.html]
|
||||
filetypes = ["html"]
|
||||
roots = ["package.json"]
|
||||
command = "html-languageserver"
|
||||
command = "vscode-html-languageserver"
|
||||
args = ["--stdio"]
|
||||
|
||||
[language.javascript]
|
||||
|
@ -133,7 +100,7 @@ args = ["--stdio"]
|
|||
[language.json]
|
||||
filetypes = ["json"]
|
||||
roots = ["package.json"]
|
||||
command = "json-languageserver"
|
||||
command = "vscode-json-languageserver"
|
||||
args = ["--stdio"]
|
||||
|
||||
[language.latex]
|
||||
|
@ -162,9 +129,27 @@ filetypes = ["php"]
|
|||
roots = [".htaccess", "composer.json"]
|
||||
command = "intelephense"
|
||||
args = ["--stdio"]
|
||||
|
||||
[language.php.initialization_options]
|
||||
storagePath = "/tmp/intelephense"
|
||||
settings_section = "intelephense"
|
||||
[language.php.settings]
|
||||
intelephense.format.braces = "k&r"
|
||||
intelephense.storagePath = "/tmp/intelephense"
|
||||
intelephense.environment.includePaths = [
|
||||
"./vendor",
|
||||
"./vendor/autoload",
|
||||
"./vendor/laravel/framework/",
|
||||
"./vendor/laravel/framework/src/",
|
||||
"./vendor/laravel/framework/src/Illuminate/"
|
||||
]
|
||||
intelephense.files.exclude = [
|
||||
"**/.git/**",
|
||||
"**/.svn/**",
|
||||
"**/.hg/**",
|
||||
"**/CVS/**",
|
||||
"**/.DS_Store/**",
|
||||
"**/node_modules/**",
|
||||
"**/bower_components/**",
|
||||
"**/resources/views/**"
|
||||
]
|
||||
|
||||
[language.python]
|
||||
filetypes = ["python"]
|
||||
|
@ -187,14 +172,28 @@ args = ["stdio"]
|
|||
# [language.rust]
|
||||
# filetypes = ["rust"]
|
||||
# roots = ["Cargo.toml"]
|
||||
# command = "rls"
|
||||
# args = []
|
||||
# command = "sh"
|
||||
# args = [
|
||||
# "-c",
|
||||
# """
|
||||
# if path=$(rustup which rls 2>/dev/null); then
|
||||
# "$path"
|
||||
# else
|
||||
# rls
|
||||
# fi
|
||||
# """,
|
||||
# ]
|
||||
|
||||
[language.rust]
|
||||
filetypes = ["rust"]
|
||||
roots = ["Cargo.toml"]
|
||||
roots = ["rust-toolchain.toml", "rust-toolchain", "Cargo.toml"]
|
||||
command = "rust-analyzer"
|
||||
args = []
|
||||
[language.rust.settings.rust-analyzer]
|
||||
## this can use too much space and processing power
|
||||
# checkOnSave.extraArgs = ["--target-dir", "./target/check"]
|
||||
hoverActions.enable = false # kak-lsp doesn't support this at the moment
|
||||
# procMacro.enable = true
|
||||
# cargo.loadOutDirsFromCheck = true
|
||||
|
||||
[language.terraform]
|
||||
filetypes = ["terraform"]
|
||||
|
@ -207,3 +206,78 @@ filetypes = ["gd", "gdscript", "gdscript3"]
|
|||
roots = ["project.godot", ".git/"]
|
||||
command = "nc"
|
||||
args = [ "localhost", "6008"]
|
||||
|
||||
[language.clojure]
|
||||
filetypes = ["clojure"]
|
||||
roots = ["project.clj", ".git/"]
|
||||
command = "clojure-lsp"
|
||||
args = []
|
||||
|
||||
|
||||
|
||||
|
||||
[semantic_scopes]
|
||||
# Map textmate scopes to kakoune faces for semantic highlighting
|
||||
# the underscores are translated to dots, and indicate nesting.
|
||||
# That is, if variable_other_field is omitted, it will try the face for
|
||||
# variable_other and then variable
|
||||
#
|
||||
# To see a list of available scopes in the debug buffer, run lsp-semantic-available-scopes
|
||||
variable = "variable"
|
||||
entity_name_function = "function"
|
||||
entity_name_type = "type"
|
||||
variable_other_enummember = "variable"
|
||||
entity_name_namespace = "module"
|
||||
|
||||
[semantic_modifiers]
|
||||
documentation = "documentation"
|
||||
readonly = "default+d"
|
||||
|
||||
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "comment"
|
||||
face = "documentation"
|
||||
modifiers = ["documentation"]
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "comment"
|
||||
face = "comment"
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "function"
|
||||
face = "function"
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "keyword"
|
||||
face = "keyword"
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "namespace"
|
||||
face = "module"
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "operator"
|
||||
face = "operator"
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "string"
|
||||
face = "string"
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "type"
|
||||
face = "type"
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "variable"
|
||||
face = "default+d"
|
||||
modifiers = ["readonly"]
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "variable"
|
||||
face = "default+d"
|
||||
modifiers = ["constant"]
|
||||
|
||||
[[semantic_tokens]]
|
||||
token = "variable"
|
||||
face = "variable"
|
||||
|
|
|
@ -48,14 +48,7 @@ face global SecondaryCursor default,default+rfg
|
|||
face global SecondaryCursorEol SecondaryCursor
|
||||
face global SecondarySelection PrimarySelection
|
||||
|
||||
hook global FocusIn .* %{
|
||||
face window PrimaryCursor {{@@ accent_fg @@}},{{@@ accent_color @@}}+fg
|
||||
face window PrimaryCursorEol PrimaryCursor
|
||||
}
|
||||
hook global FocusOut .* %{
|
||||
face window PrimaryCursor {{@@ accent_fg @@}},{{@@ bg_light @@}}+fg
|
||||
face window PrimaryCursorEol PrimaryCursor
|
||||
}
|
||||
face global InactiveCursor {{@@ accent_fg @@}},{{@@ bg_light @@}}+fg
|
||||
|
||||
face global MenuForeground {{@@ accent_fg @@}},{{@@ accent_color @@}}
|
||||
face global MenuBackground default,{{@@ bg_dark @@}}
|
||||
|
@ -64,10 +57,17 @@ face global MenuInfo cyan
|
|||
face global Information default,{{@@ bg_dark @@}}
|
||||
face global Error default,red+g
|
||||
|
||||
face global StatusLine default,{{@@ bg_dark @@}}
|
||||
face global StatusLineMode green,{{@@ bg_dark @@}}
|
||||
face global StatusLineInfo default,{{@@ bg_dark @@}}
|
||||
face global StatusLineValue default,{{@@ bg_dark @@}}
|
||||
face global StatusLine %sh{
|
||||
printf "rgb:"
|
||||
head /dev/urandom |
|
||||
base64 |
|
||||
rg --text -o '{{@@ color.random_range @@}}' |
|
||||
head -n 6 |
|
||||
sd '\n' ''
|
||||
}
|
||||
face global StatusLineMode StatusLine
|
||||
face global StatusLineInfo StatusLine
|
||||
face global StatusLineValue StatusLine
|
||||
face global StatusCursor {{@@ accent_fg @@}},{{@@ accent_color @@}}
|
||||
|
||||
face global Prompt yellow,default
|
||||
|
@ -94,11 +94,11 @@ face global BufferPadding {{@@ nontxt @@}},default
|
|||
'Hint': 'blue',
|
||||
}.items() @@%}
|
||||
face global HighlightDiagnostic{{@@ obj @@}} {{@@ col @@}},default+bu
|
||||
face global Diagnostic{{@@ obj @@}} {{@@ col @@}},default+b
|
||||
face global Diagnostic{{@@ obj @@}} {{@@ col @@}},default+bu
|
||||
face global TextDiagnostic{{@@ obj @@}} {{@@ col @@}},default+b
|
||||
face global InlayDiagnostic{{@@ obj @@}} {{@@ col @@}},default+br
|
||||
{%@@ endfor @@%}
|
||||
|
||||
face global Reference default+bu
|
||||
face global InlayHint {{@@ bg_light @@}}
|
||||
face global InlayHint {{@@ bg_light @@}}+buif
|
||||
|
||||
|
|
|
@ -8,12 +8,22 @@ try %{
|
|||
hook global WinSetOption filetype=sh %{
|
||||
set buffer formatcmd 'shfmt -s -ci -i "{{@@ indent_width @@}}"'
|
||||
}
|
||||
hook global WinSetOption filetype=c %{
|
||||
set buffer formatcmd 'clang-format'
|
||||
}
|
||||
|
||||
hook global BufCreate .*\.rs %{
|
||||
set buffer formatcmd 'rustfmt'
|
||||
}
|
||||
|
||||
hook global BufCreate .*\.html %{
|
||||
set buffer formatcmd 'prettier --parser html'
|
||||
}
|
||||
|
||||
hook global BufCreate .*\.js %{
|
||||
set buffer formatcmd 'prettier --parser babel'
|
||||
}
|
||||
|
||||
hook global BufCreate .*\.vue %{
|
||||
set buffer formatcmd 'prettier --parser vue'
|
||||
hook buffer InsertCompletionHide {
|
||||
|
@ -44,6 +54,20 @@ hook global WinCreate .* %{
|
|||
hook global BufCreate .*\.jsonc %[ set buffer filetype jsonc ]
|
||||
hook global BufCreate .*\.blade.php %[ set buffer filetype blade ]
|
||||
hook global BufCreate .*\.less %[ set buffer filetype less ]
|
||||
hook global BufCreate .*\.(tera|askama)\.?.* %[
|
||||
require-module jinja
|
||||
add-highlighter buffer/jinja ref jinja
|
||||
]
|
||||
|
||||
hook global WinSetOption filetype=rust %[
|
||||
require-module rust
|
||||
require-module html
|
||||
add-highlighter shared/rust/html region -recurse '\{' 'html!\s*\{\K' '(?=\})' ref html
|
||||
]
|
||||
|
||||
hook global WinSetOption filetype=sql %[
|
||||
set buffer comment_line '--'
|
||||
]
|
||||
|
||||
hook global WinSetOption filetype=jsonc %[
|
||||
set buffer comment_line '//'
|
||||
|
@ -57,7 +81,11 @@ hook global WinSetOption filetype=jsonc %[
|
|||
|
||||
|
||||
hook global WinSetOption filetype=blade %[
|
||||
set buffer formatcmd 'blade-formatter --stdin'
|
||||
set buffer formatcmd 'blade-formatter \
|
||||
--end-with-newline \
|
||||
--indent-size "4" \
|
||||
--wrap-line-length "80" \
|
||||
--stdin'
|
||||
set-option buffer extra_word_chars '_' '-'
|
||||
|
||||
hook window ModeChange pop:insert:.* -group blade-trim-indent blade-trim-indent
|
||||
|
@ -83,9 +111,9 @@ hook global WinSetOption filetype=blade %[
|
|||
add-highlighter buffer/blade/php/ regex '@((end)?php)' 1:block
|
||||
|
||||
add-highlighter buffer/blade/expression region '\{\{(?!--)' '(?!--)\}\}' ref php
|
||||
add-highlighter buffer/blade/statement region -recurse '\(' '@(if|for|foreach|include)\s*\(' '\)' ref php
|
||||
add-highlighter buffer/blade/statement region -recurse '\(' '@(if|for|foreach|section|yield|include)\s*\(' '\)' ref php
|
||||
add-highlighter buffer/blade/base/ regex '@(else(if)?|include|case|break)' 1:keyword
|
||||
add-highlighter buffer/blade/base/ regex '@((end)?(if|isset|for|foreach|switch))' 1:keyword
|
||||
add-highlighter buffer/blade/base/ regex '@((end)?(if|isset|for|foreach|section|switch))' 1:keyword
|
||||
|
||||
add-highlighter buffer/blade/comment region '\{\{--' '--\}\}' fill comment
|
||||
set-option buffer comment_block_begin '{{-- '
|
||||
|
@ -127,7 +155,10 @@ define-command -hidden blade-indent-on-new-line %<
|
|||
§
|
||||
|
||||
hook global WinSetOption filetype=less %[
|
||||
set buffer formatcmd 'prettier --parser less'
|
||||
set buffer formatcmd 'prettier \
|
||||
--tab-width "4" \
|
||||
--print-width "80" \
|
||||
--parser less'
|
||||
|
||||
set-option buffer extra_word_chars '_' '-'
|
||||
|
||||
|
@ -139,6 +170,8 @@ hook global WinSetOption filetype=less %[
|
|||
hook window InsertChar \n -group less-indent less-indent-on-new-line
|
||||
hook window InsertChar \} -group less-indent less-indent-on-closing-curly-brace
|
||||
|
||||
map buffer insert <c-k> '<esc>xs\$\d+<ret>) c'
|
||||
|
||||
hook -once -always window WinSetOption filetype=.* %{ remove-hooks window less-.+ }
|
||||
|
||||
add-highlighter buffer/less regions
|
||||
|
|
|
@ -10,7 +10,7 @@ define-command -hidden -override git-try-show-diff %{
|
|||
evaluate-commands -draft %sh{
|
||||
test -f "$kak_buffile" || exit 0
|
||||
cd $(dirname "$kak_buffile")
|
||||
git rev-parse --git-dir &> /dev/null &&
|
||||
git rev-parse --git-dir > /dev/null &&
|
||||
echo "git show-diff"
|
||||
}
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ evaluate-commands %sh{
|
|||
|
||||
define-command -override diffr %{ try %{
|
||||
execute-keys -draft 'ggxsdiff<ret>'
|
||||
execute-keys -draft '%<a-;>J| diffr<ret>'
|
||||
execute-keys -draft '%<a-;>J| _diffr<ret>'
|
||||
ansi-render
|
||||
} }
|
||||
|
||||
|
@ -39,8 +39,8 @@ hook global BufOpenFile .*/COMMIT_EDITMSG %{
|
|||
}
|
||||
|
||||
hook global RegisterModified '"' %{ nop %sh{ {
|
||||
printf %s "$kak_main_reg_dquote" | wl-copy -n
|
||||
printf %s "$kak_main_reg_dquote" | xclip -i -selection clipboard
|
||||
printf %s "$kak_reg_dquote" | wl-copy -n
|
||||
printf %s "$kak_reg_dquote" | xclip -i -selection clipboard
|
||||
} > /dev/null 2>&1 < /dev/null & }}
|
||||
|
||||
# Trim trailing whitespace
|
||||
|
|
|
@ -1,40 +1,10 @@
|
|||
# {{@@ header() @@}}
|
||||
|
||||
map global normal <F2> ': lsp-rename-prompt<ret>'
|
||||
map global normal <c-d> 10j
|
||||
map global normal <c-u> 10k
|
||||
|
||||
{%@@ for old, new, gdoc, vdoc in [
|
||||
[ "h", key.left, "line begin", "scroll left" ],
|
||||
[ "l", key.right, "line right", "scroll right" ],
|
||||
[ "k", key.up, "buffer begin", "scroll up" ],
|
||||
[ "j", key.down, "buffer end", "scroll down" ],
|
||||
[ "i", key.insertMode, "first non blank", "" ],
|
||||
[ "n", key.next, "", "" ],
|
||||
[ "o", "h", "", "" ],
|
||||
] @@%}
|
||||
{%@@ set NEW, OLD = new.upper(), old.upper()@@%}
|
||||
{%@@ if vdoc @@%}
|
||||
map global view {{@@ old @@}} ''
|
||||
map global view {{@@ new @@}} {{@@ old @@}} -docstring "{{@@ vdoc @@}}"
|
||||
{%@@ endif @@%}
|
||||
{%@@ if gdoc @@%}
|
||||
map global goto {{@@ old @@}} ''
|
||||
map global goto {{@@ new @@}} {{@@ old @@}} -docstring "{{@@ gdoc @@}}"
|
||||
{%@@ endif @@%}
|
||||
map global normal {{@@ new @@}} {{@@ old @@}}
|
||||
map global normal {{@@ NEW @@}} {{@@ OLD @@}}
|
||||
map global normal <a-{{@@ new @@}}> <a-{{@@ old @@}}>
|
||||
map global normal <a-{{@@ NEW @@}}> <a-{{@@ OLD @@}}>
|
||||
{%@@ endfor @@%}
|
||||
|
||||
{%@@ if key.layout == 'colemak' @@%}
|
||||
map global normal k s
|
||||
map global normal K S
|
||||
map global normal <c-k> <a-s>
|
||||
|
||||
map global normal t e
|
||||
map global normal T E
|
||||
|
||||
{%@@ endif @@%}
|
||||
# alt i makes searches case insensitive
|
||||
map global prompt <a-i> '<c-a>(?i)<c-e>'
|
||||
|
||||
######################################################
|
||||
# Emacs-like insert
|
||||
|
@ -47,7 +17,7 @@ map global insert <a-b> "<a-;>b"
|
|||
map global insert <a-f> "<a-;>w"
|
||||
|
||||
map global insert <c-a> "<a-;>gi"
|
||||
map global insert <c-e> "<a-;>gl<right>"
|
||||
map global insert <c-e> "<a-;>gh<a-;>gl<right>"
|
||||
map global insert <c-w> "<a-;>b<a-;>d"
|
||||
|
||||
|
||||
|
@ -56,6 +26,7 @@ map global insert <c-w> "<a-;>b<a-;>d"
|
|||
######################################################
|
||||
|
||||
map global insert <a-k> "<esc>"
|
||||
map global insert <c-t> "<esc>"
|
||||
|
||||
|
||||
######################################################
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
nop %sh{
|
||||
PLUG_DIR="${HOME}/.cache/kakoune_plugins"
|
||||
REPO="https://github.com/robertmeta/plug.kak.git"
|
||||
REPO="https://github.com/andreyorst/plug.kak.git"
|
||||
|
||||
mkdir -p "$PLUG_DIR"
|
||||
|
||||
|
@ -12,7 +12,7 @@ nop %sh{
|
|||
|
||||
source %sh{ echo "${HOME}/.cache/kakoune_plugins/plug.kak/rc/plug.kak" }
|
||||
|
||||
plug "robertmeta/plug.kak" noload config %{
|
||||
plug "andreyorst/plug.kak" noload config %{
|
||||
# Auto install every pluging
|
||||
set-option global plug_always_ensure true
|
||||
set-option global plug_install_dir %sh{ echo "${HOME}/.cache/kakoune_plugins" }
|
||||
|
@ -20,57 +20,56 @@ plug "robertmeta/plug.kak" noload config %{
|
|||
|
||||
plug 'eraserhd/kak-ansi'
|
||||
|
||||
plug 'alexherbo2/prelude.kak'
|
||||
plug 'alexherbo2/auto-pairs.kak' commit "fd735ec149ef0d9ca5f628a95b1e52858b5afbdc" config %{
|
||||
require-module 'prelude'
|
||||
require-module 'auto-pairs'
|
||||
auto-pairs-enable
|
||||
plug 'alexherbo2/auto-pairs.kak' config %{
|
||||
enable-auto-pairs
|
||||
}
|
||||
|
||||
plug 'h-youhei/kakoune-surround'
|
||||
plug 'lelgenio/kakoune-mirror-colemak' config %{
|
||||
map global user "s" ': enter-user-mode mirror<ret>'
|
||||
}
|
||||
|
||||
plug 'delapouite/kakoune-palette'
|
||||
plug 'insipx/kak-crosshairs' config %{
|
||||
crosshairs
|
||||
plug 'greenfork/active-window.kak'
|
||||
plug 'lelgenio/kak-crosshairs' config %{
|
||||
crosshairs-enable
|
||||
}
|
||||
|
||||
# Search and replace, for every buffer
|
||||
plug 'occivink/kakoune-find'
|
||||
plug "natasky/kakoune-multi-file"
|
||||
|
||||
plug 'kak-lsp/kak-lsp' config %{
|
||||
plug "lelgenio/kakoune-colemak-neio"
|
||||
|
||||
plug 'kak-lsp/kak-lsp' do %{
|
||||
cargo install --locked --force --path .
|
||||
} config %{
|
||||
map global normal <F2> ': lsp-rename-prompt<ret>'
|
||||
set global lsp_hover_max_lines 10
|
||||
lsp-inlay-diagnostics-enable global
|
||||
set global lsp_auto_highlight_references true
|
||||
set global lsp_inlay_diagnostic_sign "●"
|
||||
set global lsp_diagnostic_line_error_sign "●"
|
||||
|
||||
hook global BufCreate .* %{try lsp-enable}
|
||||
hook global WinSetOption filetype=(c|cpp|rust|python) %{
|
||||
# lsp-auto-hover-enable
|
||||
hook buffer NormalIdle .* %{try lsp-highlight-references}
|
||||
}
|
||||
|
||||
hook global -group rust-inlay-hints-auto WinSetOption filetype=rust %{
|
||||
hook window -group rust-inlay-hints BufReload .* rust-analyzer-inlay-hints
|
||||
hook window -group rust-inlay-hints NormalIdle .* rust-analyzer-inlay-hints
|
||||
hook window -group rust-inlay-hints InsertIdle .* rust-analyzer-inlay-hints
|
||||
hook -once -always window WinSetOption filetype=.* %{
|
||||
remove-hooks window rust-inlay-hints
|
||||
}
|
||||
define-command -override -hidden lsp-next-placeholder-bind %{
|
||||
map global normal <tab> ': try lsp-snippets-select-next-placeholders catch %{ execute-keys -with-hooks <lt>tab> }<ret>' -docstring 'Select next snippet placeholder'
|
||||
map global insert <tab> '<a-;>: try lsp-snippets-select-next-placeholders catch %{ execute-keys -with-hooks <lt>tab> }<ret>' -docstring 'Select next snippet placeholder'
|
||||
}
|
||||
lsp-next-placeholder-bind
|
||||
map global insert <c-o> "<esc>: lsp-code-action-sync Fill<ret>"
|
||||
|
||||
define-command -override -hidden lsp-enable-decals %{
|
||||
lsp-inlay-diagnostics-enable global
|
||||
try %{
|
||||
add-highlighter global/rust_analyzer_inlay_hints replace-ranges rust_analyzer_inlay_hints
|
||||
}
|
||||
lsp-inlay-hints-enable global
|
||||
}
|
||||
|
||||
define-command -override -hidden lsp-disable-decals %{
|
||||
lsp-inlay-diagnostics-disable global
|
||||
remove-highlighter global/rust_analyzer_inlay_hints
|
||||
lsp-inlay-hints-disable global
|
||||
}
|
||||
lsp-enable-decals
|
||||
|
||||
hook global ModeChange '.*:insert:normal' %{lsp-enable-decals}
|
||||
hook global ModeChange '.*:normal:insert' %{lsp-disable-decals}
|
||||
lsp-enable-decals
|
||||
|
||||
hook global WinSetOption filetype=(c|cpp|rust) %{
|
||||
hook window -group semantic-tokens BufReload .* lsp-semantic-tokens
|
||||
|
@ -81,5 +80,15 @@ plug 'kak-lsp/kak-lsp' config %{
|
|||
}
|
||||
}
|
||||
|
||||
declare-option -hidden str modeline_progress ""
|
||||
define-command -hidden -params 6 -override lsp-handle-progress %{
|
||||
set global modeline_progress %sh{
|
||||
if ! "$6"; then
|
||||
echo "$2${5:+" ($5%)"}${4:+": $4"}"
|
||||
fi
|
||||
}
|
||||
}
|
||||
|
||||
set global modelinefmt "%%opt{modeline_progress} %opt{modelinefmt}"
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# {{@@ header() @@}}
|
||||
|
||||
try %{
|
||||
declare-user-mode surround
|
||||
# declare-user-mode surround
|
||||
declare-user-mode git
|
||||
declare-user-mode find
|
||||
}
|
||||
|
@ -13,8 +13,8 @@ map global user 'z' ':zoxide ' -docstring 'zoxide'
|
|||
map global user 'n' ': new<ret>' -docstring 'new window'
|
||||
|
||||
map global user 'e' 'x|emmet<ret>{{@@ "@" if not tabs @@}}' -docstring 'process line with emmet'
|
||||
map global user 'm' ': try format-buffer catch lsp-formatting<ret>' -docstring 'format document'
|
||||
map global user 'M' ': try format-selections catch lsp-range-formatting<ret>' -docstring 'format selection'
|
||||
map global user 'm' ': try lsp-formatting-sync catch format-buffer<ret>' -docstring 'format document'
|
||||
map global user 'M' ': try lsp-range-formatting-sync catch format-selections<ret>' -docstring 'format selection'
|
||||
|
||||
map global user 'c' ': comment-line<ret>' -docstring 'comment line'
|
||||
map global user 'C' '_: comment-block<ret>' -docstring 'comment block'
|
||||
|
@ -25,11 +25,8 @@ map global user 'R' '"_d! wl-paste -n <ret>' -docstring 'clipboard replace'
|
|||
|
||||
map global user 'b' ': find_buffer<ret>' -docstring 'switch buffer'
|
||||
|
||||
map global user 's' ': enter-user-mode surround<ret>' -docstring 'surround mode'
|
||||
map global surround 's' ': surround<ret>' -docstring 'surround'
|
||||
map global surround 'c' ': change-surround<ret>' -docstring 'change'
|
||||
map global surround 'd' ': delete-surround<ret>' -docstring 'delete'
|
||||
map global surround 'x' ': select-surround<ret>' -docstring 'select surround'
|
||||
map global user 'l' ': lsp-enable-decals<ret>' -docstring 'LSP enable decals'
|
||||
map global user 'L' ': lsp-disable-decals<ret>' -docstring 'LSP disable decals'
|
||||
|
||||
map global user 'v' ': enter-user-mode git<ret>' -docstring 'git vcs mode'
|
||||
map global user 'V' ': enter-user-mode -lock git<ret>' -docstring 'git vcs mode'
|
||||
|
@ -50,97 +47,136 @@ map global git 'M' ': git-merge-new <ret>' -docstring 'merge using new'
|
|||
map global git '<a-m>' ': git-merge-original <ret>' -docstring 'merge using original'
|
||||
|
||||
map global user 'f' ': enter-user-mode find<ret>' -docstring 'find mode'
|
||||
map global find 't' ': tree<ret>' -docstring 'file tree'
|
||||
map global find 'f' ': find_file<ret>' -docstring 'file'
|
||||
map global find 'l' ': find_line<ret>' -docstring 'jump to line'
|
||||
map global find 'r' ': find_ripgrep<ret>' -docstring 'ripgrep all file'
|
||||
map global find 'g' ': find_git_file<ret>' -docstring 'git files'
|
||||
map global find 'm' ': find_git_modified<ret>' -docstring 'git modified files'
|
||||
map global find 'c' ': find_dir<ret>' -docstring 'change dir'
|
||||
map global find 'd' ': find_delete<ret>' -docstring 'file to delete'
|
||||
|
||||
try %{
|
||||
define-command -override -hidden find_file \
|
||||
%{ evaluate-commands %sh{
|
||||
for line in `fd --strip-cwd-prefix -tf -HE .git | wdmenu`; do
|
||||
echo "edit '$line'"
|
||||
done
|
||||
} }
|
||||
|
||||
define-command -hidden find_file \
|
||||
%{ edit %sh{
|
||||
fd -HE .git | wdmenu ||
|
||||
echo "$kak_buffile"
|
||||
} }
|
||||
define-command -override -hidden find_delete \
|
||||
%{ nop %sh{
|
||||
fd --strip-cwd-prefix -H -E .git -t f | wdmenu | xargs -r trash
|
||||
} }
|
||||
|
||||
define-command -hidden find_delete \
|
||||
%{ nop %sh{
|
||||
fd -H -E .git -t f | wdmenu | xargs -r trash
|
||||
} }
|
||||
define-command -override -hidden find_git_file \
|
||||
%{ evaluate-commands %sh{
|
||||
for line in `git ls-files | wdmenu`; do
|
||||
echo "edit -existing '$line'"
|
||||
done
|
||||
} }
|
||||
|
||||
define-command -hidden find_git_file \
|
||||
%{ edit -existing %sh{ git ls-files | wdmenu } }
|
||||
define-command -override -hidden find_git_modified \
|
||||
%{ evaluate-commands %sh{
|
||||
for line in `git status --porcelain | sd '^.. ' ''| wdmenu`; do
|
||||
echo "edit -existing '$line'"
|
||||
done
|
||||
} }
|
||||
|
||||
define-command -hidden find_dir \
|
||||
%{ cd %sh{ fd -Htd | wdmenu } }
|
||||
define-command -override -hidden find_dir \
|
||||
%{ cd %sh{
|
||||
for line in `fd --strip-cwd-prefix -Htd | wdmenu`; do
|
||||
echo "edit '$line'"
|
||||
done
|
||||
} }
|
||||
|
||||
define-command -hidden find_buffer \
|
||||
%{ buffer %sh{
|
||||
printf "%s\n" $kak_buflist | wdmenu
|
||||
} }
|
||||
define-command -override -hidden find_buffer \
|
||||
%{ evaluate-commands %sh{
|
||||
for line in `printf "%s\n" $kak_buflist | wdmenu`; do
|
||||
echo "buffer '$line'"
|
||||
done
|
||||
} }
|
||||
|
||||
define-command -hidden find_ripgrep \
|
||||
%{ eval %sh{
|
||||
patter=$( wdmenu -p "Regex")
|
||||
rg --column -n "$patter" | wdmenu |
|
||||
perl -ne 'print "edit \"$1\" \"$2\" \"$3\" " if /(.+):(\d+):(\d+):/'
|
||||
} }
|
||||
define-command -override -hidden find_ripgrep \
|
||||
%{ evaluate-commands %sh{
|
||||
patter=$( wdmenu -p "Regex")
|
||||
rg --column -n "$patter" | wdmenu |
|
||||
perl -ne 'print "edit \"$1\" \"$2\" \"$3\" " if /(.+):(\d+):(\d+):/'
|
||||
} }
|
||||
|
||||
|
||||
define-command -params .. \
|
||||
-shell-script-candidates 'zoxide query -l' \
|
||||
zoxide \
|
||||
%{
|
||||
cd %sh{ zoxide query -- "$@" || echo "$@" }
|
||||
echo %sh{ pwd | sed "s|$HOME|~|" }
|
||||
}
|
||||
|
||||
define-command config-source \
|
||||
%{
|
||||
source "%val{config}/kakrc"
|
||||
}
|
||||
|
||||
define-command git-merge-head %{
|
||||
evaluate-commands -draft %{
|
||||
# delete head marker
|
||||
execute-keys <a-/>^<lt>{4,}<ret><a-x>d
|
||||
try %{
|
||||
# select original marker
|
||||
execute-keys /^[|]{4,}<ret>
|
||||
# extend to theirs marker
|
||||
execute-keys ?^={4,}<ret><a-x>
|
||||
} catch %{
|
||||
# select theirs marker
|
||||
execute-keys /^={4,}<ret><a-x>
|
||||
}
|
||||
# extend to end marker
|
||||
execute-keys ?^<gt>{4,}<ret><a-x>d
|
||||
define-command -override -hidden find_line \
|
||||
%{ evaluate-commands -save-regs a %{
|
||||
execute-keys %{Z%"ayz}
|
||||
execute-keys %sh{
|
||||
line=$(
|
||||
printf "%s\n" "$kak_reg_a" |
|
||||
nl -ba -w1 |
|
||||
wdmenu -p "Line" |
|
||||
cut -f1
|
||||
)
|
||||
test -n "$line" && echo "${line}gx"
|
||||
}
|
||||
} -docstring "merge using head"
|
||||
} }
|
||||
|
||||
define-command git-merge-original %{
|
||||
evaluate-commands -draft %{
|
||||
# select head marker
|
||||
execute-keys <a-/>^<lt>{4,}<ret>
|
||||
# select to middle of conflict
|
||||
execute-keys ?^[|]{4,}<ret><a-x>d
|
||||
# select theirs marker
|
||||
execute-keys /^={4,}<ret>
|
||||
# extend to end marker
|
||||
execute-keys ?^<gt>{4,}<ret><a-x>d
|
||||
}
|
||||
} -docstring "merge using original"
|
||||
define-command -override -hidden tree \
|
||||
%{ evaluate-commands %sh{
|
||||
file=`mktemp`
|
||||
terminal --class file_picker ranger --selectfile="$kak_buffile" --choosefiles="$file"
|
||||
for line in `cat "$file"`; do
|
||||
echo "edit '$line'"
|
||||
done
|
||||
rm "$file"
|
||||
} }
|
||||
|
||||
define-command git-merge-new %{
|
||||
evaluate-commands -draft %{
|
||||
# select head marker
|
||||
execute-keys <a-/>^<lt>{4,}<ret>
|
||||
# extend to theirs marker
|
||||
execute-keys ?^={4,}\n<ret>d
|
||||
# delete end marker
|
||||
execute-keys /^<gt>{4,}<ret><a-x>d
|
||||
}
|
||||
} -docstring "merge using new"
|
||||
|
||||
define-command -override -params .. \
|
||||
-shell-script-candidates 'zoxide query -l' \
|
||||
zoxide %{
|
||||
cd %sh{ zoxide query -- "$@" || echo "$@" }
|
||||
echo %sh{ pwd | sed "s|$HOME|~|" }
|
||||
}
|
||||
|
||||
define-command -override config-source %{
|
||||
source "%val{config}/kakrc"
|
||||
}
|
||||
|
||||
define-command -override git-merge-head %{
|
||||
evaluate-commands -draft %{
|
||||
# delete head marker
|
||||
execute-keys <a-/>^<lt>{4,}<ret><a-x>d
|
||||
try %{
|
||||
# select original marker
|
||||
execute-keys /^[|]{4,}<ret>
|
||||
# extend to theirs marker
|
||||
execute-keys ?^={4,}<ret><a-x>
|
||||
} catch %{
|
||||
# select theirs marker
|
||||
execute-keys /^={4,}<ret><a-x>
|
||||
}
|
||||
# extend to end marker
|
||||
execute-keys ?^<gt>{4,}<ret><a-x>d
|
||||
}
|
||||
} -docstring "merge using head"
|
||||
|
||||
define-command -override git-merge-original %{
|
||||
evaluate-commands -draft %{
|
||||
# select head marker
|
||||
execute-keys <a-/>^<lt>{4,}<ret>
|
||||
# select to middle of conflict
|
||||
execute-keys ?^[|]{4,}<ret><a-x>d
|
||||
# select theirs marker
|
||||
execute-keys /^={4,}<ret>
|
||||
# extend to end marker
|
||||
execute-keys ?^<gt>{4,}<ret><a-x>d
|
||||
}
|
||||
} -docstring "merge using original"
|
||||
|
||||
define-command -override git-merge-new %{
|
||||
evaluate-commands -draft %{
|
||||
# select head marker
|
||||
execute-keys <a-/>^<lt>{4,}<ret>
|
||||
# extend to theirs marker
|
||||
execute-keys ?^={4,}\n<ret>d
|
||||
# delete end marker
|
||||
execute-keys /^<gt>{4,}<ret><a-x>d
|
||||
}
|
||||
} -docstring "merge using new"
|
||||
|
|
|
@ -0,0 +1,196 @@
|
|||
# Configuration file for libinput-gestures.
|
||||
# Mark Blakeney, Sep 2015
|
||||
#
|
||||
# The default configuration file exists at /etc/libinput-gestures.conf
|
||||
# but a user can create a personal custom configuration file at
|
||||
# ~/.config/libinput-gestures.conf.
|
||||
#
|
||||
# Lines starting with '#' and blank lines are ignored. Currently
|
||||
# "gesture" and "device" configuration keywords are supported as
|
||||
# described below. The keyword can optionally be appended with a ":" (to
|
||||
# maintain compatibility with original format configuration files).
|
||||
#
|
||||
# Each gesture line has 3 [or 4] arguments separated by whitespace:
|
||||
#
|
||||
# action motion [finger_count] command
|
||||
#
|
||||
# where action and motion is either:
|
||||
# swipe up
|
||||
# swipe down
|
||||
# swipe left
|
||||
# swipe right
|
||||
# swipe left_up
|
||||
# swipe left_down
|
||||
# swipe right_up
|
||||
# swipe right_down
|
||||
# pinch in
|
||||
# pinch out
|
||||
# pinch clockwise
|
||||
# pinch anticlockwise
|
||||
#
|
||||
# command is the remainder of the line and is any valid shell command +
|
||||
# arguments.
|
||||
#
|
||||
# finger_count is a single numeric digit and is optional (and is
|
||||
# typically 3 or 4). If specified then the command is executed when
|
||||
# exactly that number of fingers is used in the gesture. If not
|
||||
# specified then the command is executed when that gesture is executed
|
||||
# with any number of fingers. Gesture lines specified with finger_count
|
||||
# have priority over the same gesture specified without any
|
||||
# finger_count.
|
||||
#
|
||||
# Typically command will be _internal, or xdotool. See "man xdotool" for
|
||||
# the many things you can action with that tool. Note that unfortunately
|
||||
# xdotool does not work with native Wayland clients.
|
||||
|
||||
###############################################################################
|
||||
# SWIPE GESTURES:
|
||||
###############################################################################
|
||||
|
||||
# Note the default is an "internal" command that uses wmctrl to switch
|
||||
# workspaces and, unlike xdotool, works on both Xorg and Wayland (via
|
||||
# XWayland). It also can be configured for vertical and horizontal
|
||||
# switching over tabular workspaces, as per the example below. You can
|
||||
# also add "-w" to the internal command to allow wrapping workspaces.
|
||||
# Ensure you install wmctrl if you use _internal.
|
||||
|
||||
# Move to next workspace (works for GNOME/KDE/etc on Wayland and Xorg)
|
||||
gesture swipe up swaymsg fullscreen toggle
|
||||
|
||||
# NOTE ABOUT FINGER COUNT:
|
||||
# The above command will configure this command for all fingers (i.e. 3
|
||||
# for 4) but to configure it for 3 fingers only, change it to:
|
||||
# gesture swipe up 3 _internal ws_up
|
||||
# Then you can configure something else for 4 fingers or leave 4 fingers
|
||||
# unconfigured. You can configure an explicit finger count like this for
|
||||
# all example commands in this configuration file.
|
||||
#
|
||||
# gesture swipe up xdotool key super+Page_Down
|
||||
|
||||
# Move to prev workspace (works for GNOME/KDE/etc on Wayland and Xorg)
|
||||
gesture swipe down launcher
|
||||
# gesture swipe down xdotool key super+Page_Up
|
||||
|
||||
# Browser go forward (works only for Xorg, and Xwayland clients)
|
||||
gesture swipe left swaymsg workspace next
|
||||
|
||||
# Browser go back (works only for Xorg, and Xwayland clients)
|
||||
gesture swipe right swaymsg workspace prev
|
||||
|
||||
# NOTE: If you don't use "natural" scrolling direction for your touchpad
|
||||
# then you may want to swap the above default left/right and up/down
|
||||
# configurations.
|
||||
|
||||
# Optional extended swipe gestures, e.g. for browser tab navigation:
|
||||
#
|
||||
# Jump to next open browser tab
|
||||
# gesture swipe right_up xdotool key control+Tab
|
||||
#
|
||||
# Jump to previous open browser tab
|
||||
# gesture swipe left_up xdotool key control+shift+Tab
|
||||
#
|
||||
# Close current browser tab
|
||||
# gesture swipe left_down xdotool key control+w
|
||||
#
|
||||
# Reopen and jump to last closed browser tab
|
||||
# gesture swipe right_down xdotool key control+shift+t
|
||||
|
||||
# Example of 8 static workspaces, e.g. using KDE virtual-desktops,
|
||||
# arranged in 2 rows of 4 columns across using swipe up/down/left/right
|
||||
# to navigate in fixed planes. You can also add the "-w/--wrap" option
|
||||
# to allow wrapping in any direction. You must configure your virtual
|
||||
# desktops with the same column dimension.
|
||||
# gesture swipe up _internal --cols 4 ws_up
|
||||
# gesture swipe down _internal --cols 4 ws_down
|
||||
# gesture swipe left _internal --cols 4 ws_left
|
||||
# gesture swipe right _internal --cols 4 ws_right
|
||||
#
|
||||
# Example of 16 static workspaces, e.g. using KDE virtual-desktops,
|
||||
# arranged in 4 rows of 4 columns across using swipe up/down/left/right
|
||||
# to navigate in fixed planes, and also using swipe
|
||||
# left_up/left_down/right_up/right_down to navigate diagonally. You can
|
||||
# also add the "-w/--wrap" option to allow wrapping in any direction
|
||||
# and/or diagonally. You must configure your virtual desktops with the
|
||||
# same column dimension.
|
||||
# gesture swipe up _internal --cols 4 ws_up
|
||||
# gesture swipe down _internal --cols 4 ws_down
|
||||
# gesture swipe left _internal --cols 4 ws_left
|
||||
# gesture swipe right _internal --cols 4 ws_right
|
||||
# gesture swipe left_up _internal --cols 4 ws_left_up
|
||||
# gesture swipe left_down _internal --cols 4 ws_left_down
|
||||
# gesture swipe right_up _internal --cols 4 ws_right_up
|
||||
# gesture swipe right_down _internal --cols 4 ws_right_down
|
||||
|
||||
# Example virtual desktop switching for Ubuntu Unity/Compiz. The
|
||||
# _internal command does not work for Compiz but you can explicitly
|
||||
# configure the swipe commands to work for a Compiz virtual 2
|
||||
# dimensional desktop as follows:
|
||||
# gesture swipe up xdotool key ctrl+alt+Up
|
||||
# gesture swipe down xdotool key ctrl+alt+Down
|
||||
# gesture swipe left xdotool key ctrl+alt+Left
|
||||
# gesture swipe right xdotool key ctrl+alt+Right
|
||||
|
||||
# Example to change audio volume:
|
||||
# Note this only works on an Xorg desktop (not Wayland).
|
||||
# gesture swipe up xdotool key XF86AudioRaiseVolume
|
||||
# gesture swipe down xdotool key XF86AudioLowerVolume
|
||||
|
||||
###############################################################################
|
||||
# PINCH GESTURES:
|
||||
###############################################################################
|
||||
|
||||
# GNOME SHELL open/close overview (works for GNOME on Xorg only)
|
||||
gesture pinch in xdotool key super+s
|
||||
gesture pinch out xdotool key super+s
|
||||
|
||||
# KDE Plasma open/close overview
|
||||
# gesture pinch in xdotool key ctrl+F9
|
||||
# gesture pinch out xdotool key ctrl+F9
|
||||
|
||||
# GNOME SHELL open/close overview (works for GNOME on Wayland and Xorg)
|
||||
# Note since GNOME 3.24 on Wayland this is implemented natively so no
|
||||
# real point configuring for Wayland.
|
||||
# gesture pinch in dbus-send --session --type=method_call --dest=org.gnome.Shell /org/gnome/Shell org.gnome.Shell.Eval string:'Main.overview.toggle();'
|
||||
# gesture pinch out dbus-send --session --type=method_call --dest=org.gnome.Shell /org/gnome/Shell org.gnome.Shell.Eval string:'Main.overview.toggle();'
|
||||
|
||||
# Optional extended pinch gestures:
|
||||
# gesture pinch clockwise <whatever command>
|
||||
# gesture pinch anticlockwise <whatever command>
|
||||
|
||||
###############################################################################
|
||||
# This application normally determines your touchpad device
|
||||
# automatically. Some users may have multiple touchpads but by default
|
||||
# we use only the first one found. However, you can choose to specify
|
||||
# the explicit device name to use. Run "libinput list-devices" to work
|
||||
# out the name of your device (from the "Device:" field). Then add a
|
||||
# device line specifying that name, e.g:
|
||||
#
|
||||
# device DLL0665:01 06CB:76AD Touchpad
|
||||
#
|
||||
# If the device name starts with a '/' then it is instead considered as
|
||||
# the explicit device path although since device paths can change
|
||||
# through reboots this is best to be a symlink. E.g. instead of specifying
|
||||
# /dev/input/event12, you should use the corresponding full path link
|
||||
# under /dev/input/by-path/ or /dev/input/by-id/.
|
||||
#
|
||||
# You can choose to use ALL touchpad devices by setting the device name
|
||||
# to "all". E.g. Do this if you have multiple touchpads which you want
|
||||
# to use in parallel. This reduces performance slightly so only set this
|
||||
# if you have to.
|
||||
#
|
||||
# device all
|
||||
|
||||
###############################################################################
|
||||
# You can set a minimum travel distance threshold before swipe gestures
|
||||
# are actioned using the swipe_threshold configuration command.
|
||||
# Specify this value in dots. The default is 0.
|
||||
# E.g. set it to 100 dots with "swipe_threshold 100".
|
||||
# swipe_threshold 0
|
||||
|
||||
###############################################################################
|
||||
# You can set a timeout on gestures from start to end. The default is
|
||||
# the value commented below. It can be any value in float secs >= 0.
|
||||
# 0 = no timeout. E.g. set it to 2 secs with "timeout 2".
|
||||
# timeout 1.5
|
||||
|
||||
# vim:ft=ini
|
|
@ -15,9 +15,10 @@ depends=(
|
|||
# Sway
|
||||
sway swayidle swaylock waybar
|
||||
# Menu
|
||||
bemenu-wlroots j4-dmenu-desktop
|
||||
fuzzel bemenu-wlroots j4-dmenu-desktop
|
||||
# Utility
|
||||
ruby-fusuma light mako kanshi udiskie redshift-wayland-git
|
||||
ruby-fusuma light mako kanshi udiskie
|
||||
gammastep
|
||||
wtype caffeinated
|
||||
# Screensharing
|
||||
xdg-desktop-portal-wlr pipewire pipewire-media-session libpipewire02
|
||||
|
@ -39,11 +40,11 @@ depends=(
|
|||
vdirsyncer khal khard
|
||||
|
||||
# Audio
|
||||
pulseaudio pulseaudio-alsa pulseaudio-bluetooth
|
||||
pulseaudio pulseaudio-rtp pulseaudio-alsa pulseaudio-bluetooth
|
||||
pamixer pulsemixer pavucontrol
|
||||
|
||||
# Fonts
|
||||
inter-font ttf-ms-fonts
|
||||
inter-font ttf-ms-fonts ttf-dejavu
|
||||
nerd-fonts-hack nerd-fonts-fira-code
|
||||
|
||||
# Icons
|
||||
|
@ -56,15 +57,18 @@ depends=(
|
|||
grim slurp swappy wl-clipboard imagemagick wf-recorder
|
||||
|
||||
# Theme
|
||||
# {%@@ if 'papirus' in "{{@@ icon_theme @@}}".lower() @@%} #
|
||||
# {%@@ if 'papirus' in icon_theme.lower() @@%} #
|
||||
papirus-icon-theme papirus-folders papirus-libreoffice-theme
|
||||
# {%@@ elif 'mint' in "{{@@ icon_theme @@}}".lower() @@%} #
|
||||
# {%@@ elif 'mint' in icon_theme.lower() @@%} #
|
||||
mint-y-icons mint-x-icons
|
||||
# {%@@ endif @@%} #
|
||||
|
||||
# {%@@ if 'mint' in "{{@@ gtk_theme @@}}".lower() @@%} #
|
||||
# {%@@ if 'mint' in gtk_theme.lower().lower() @@%} #
|
||||
mint-themes
|
||||
# {%@@ elif 'materia' in "{{@@ gtk_theme @@}}".lower() @@%} #
|
||||
# {%@@ elif 'orchis' in gtk_theme.lower().lower() @@%} #
|
||||
orchis-kde-theme-git
|
||||
orchis-theme-git
|
||||
# {%@@ elif 'materia' in gtk_theme.lower().lower() @@%} #
|
||||
materia-custom-accent
|
||||
bc sassc inkscape # Make dependencies
|
||||
# {%@@ endif @@%} #
|
||||
|
@ -75,10 +79,12 @@ depends=(
|
|||
# Emulators
|
||||
kitty alacritty
|
||||
#Tools
|
||||
tuxi translate-shell tealdeer so
|
||||
tuxi-git translate-shell tealdeer so
|
||||
ranger atool p7zip jq fzf
|
||||
neofetch htop bpytop
|
||||
inxi entr
|
||||
#Prompt
|
||||
starship
|
||||
# Replacements
|
||||
#ls cat rm -rf grep find sed diff cd fmt
|
||||
exa bat trash-cli ripgrep fd sd diffr zoxide par
|
||||
|
@ -89,13 +95,14 @@ depends=(
|
|||
wget curl rsync rclone nmap
|
||||
# Testing
|
||||
gnu-netcat tor mtr speedtest-cli
|
||||
inetutils net-tools
|
||||
# ssh
|
||||
openssh sshfs fail2ban
|
||||
# Bluetooth
|
||||
bluez bluez-utils bluez-plugins
|
||||
|
||||
# Browser
|
||||
qutebrowser youtube-dl
|
||||
qutebrowser yt-dlp
|
||||
|
||||
# Email
|
||||
neomutt urlview isync
|
||||
|
@ -111,21 +118,25 @@ depends=(
|
|||
mpd mpc ncmpcpp mpdris2
|
||||
playerctl clyrics
|
||||
kdeconnect
|
||||
blender gimp kdenlive
|
||||
blender gimp
|
||||
zathura zathura-pdf-mupdf
|
||||
|
||||
# Office
|
||||
libreoffice-fresh libreoffice-fresh-pt-br hunspell-pt-br
|
||||
|
||||
# Programing
|
||||
kakoune kak-lsp
|
||||
kakoune
|
||||
neovim python-pynvim neovim-symlinks
|
||||
|
||||
shfmt bash-language-server
|
||||
|
||||
# web lsp
|
||||
vscode-css-languageserver-bin
|
||||
vscode-html-languageserver
|
||||
vscode-css-languageserver
|
||||
vscode-json-languageserver
|
||||
|
||||
# php lsp
|
||||
nodejs-intelephense
|
||||
|
||||
# Python
|
||||
ipython bpython
|
||||
|
@ -146,7 +157,7 @@ depends=(
|
|||
mariadb
|
||||
php7 php7-apache
|
||||
phpmyadmin
|
||||
lipsum emmet-cli
|
||||
lipsum-git emmet-cli
|
||||
blade-formatter prettier
|
||||
nodejs-less nodejs-less-plugin-clean-css
|
||||
uglify-js
|
||||
|
@ -154,11 +165,24 @@ depends=(
|
|||
# Virt
|
||||
qemu
|
||||
|
||||
# Power manager
|
||||
tlp
|
||||
|
||||
# Gtk
|
||||
gtk3-nocsd-legacy-git
|
||||
|
||||
# Qt
|
||||
qt5-base qt5-wayland qt5ct kvantum-qt5
|
||||
qt5-base qt5-wayland qt5ct kvantum-qt5 qt5-styleplugins
|
||||
|
||||
# X11
|
||||
xorg-xwayland
|
||||
|
||||
# codecs
|
||||
gst-plugins-good gst-plugins-bad
|
||||
|
||||
# Tray
|
||||
libappindicator-gtk2 libappindicator-gtk3
|
||||
lib32-libappindicator-gtk2 lib32-libappindicator-gtk3
|
||||
|
||||
# Chat
|
||||
discord telegram-desktop
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# ytdl-format='best'
|
||||
ytdl-format='bestvideo[height<=1080][vcodec!=vp9]+bestaudio/best'
|
||||
ytdl_path="yt-dlp"
|
||||
ytdl-format="bestvideo[height<=1080][vcodec!=vp9]+bestaudio/best"
|
||||
ytdl-raw-options="cookies=~/.cache/cookies-youtube-com.txt,mark-watched="
|
||||
osd-fractions
|
||||
save-position-on-quit
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
{%@@ for name, info in mail.items() | reverse @@%}
|
||||
|
||||
IMAPStore {{@@ name @@}}-remote
|
||||
Host {{@@ info.mail @@}}
|
||||
Host {{@@ info.imap @@}}
|
||||
Port 993
|
||||
User {{@@ info.user.split("@")[0] @@}}@{{@@ info.mail @@}}
|
||||
PassCmd "_pass_get {{@@ info.mail @@}}"
|
||||
User {{@@ info.user @@}}
|
||||
PassCmd "_pass_get {{@@ info.pass @@}}"
|
||||
SSLType IMAPS
|
||||
CertificateFile /etc/ssl/certs/ca-certificates.crt
|
||||
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
# Set default values for all following accounts.
|
||||
defaults
|
||||
auth on
|
||||
tls on
|
||||
tls_trust_file /etc/ssl/certs/ca-certificates.crt
|
||||
logfile ~/.msmtp.log
|
||||
|
||||
{%@@ for name, info in mail.items() @@%}
|
||||
|
||||
account {{@@ name @@}}
|
||||
host {{@@ info.smtp @@}}
|
||||
port 587
|
||||
from "{{@@ info.from @@}} <{{@@ info.user @@}}>"
|
||||
user {{@@ info.user @@}}
|
||||
passwordeval "_pass_get {{@@ info.pass @@}}"
|
||||
|
||||
{%@@ endfor @@%}
|
||||
|
||||
# Set a default account
|
||||
account default : {{@@ (mail.keys() | list) [0] @@}}
|
|
@ -15,27 +15,29 @@ set header_cache = ~/.cache/mutt/
|
|||
set my_mailroot = ~/.local/share/mail
|
||||
|
||||
set use_from = yes
|
||||
set ssl_force_tls = yes
|
||||
# set ssl_force_tls = yes
|
||||
|
||||
{%@@ for name, info in mail.items() | reverse @@%}
|
||||
set my_source_command = \
|
||||
"_mutt_get-mail '{{@@ name @@}}' '{{@@ info.user.split("@")[0] @@}}' '{{@@ info.user @@}}' '{{@@ info.mail @@}}' |"
|
||||
|
||||
folder-hook "$my_mailroot/{{@@ name @@}}/" \
|
||||
source "\"$my_source_command\""
|
||||
source "$my_source_command"
|
||||
set my_source_command = "_mutt_get-mail '{{@@ name @@}}' |"
|
||||
folder-hook "$my_mailroot/{{@@ name @@}}/" source "\"$my_source_command\""
|
||||
source "$my_source_command"
|
||||
{%@@ endfor @@%}
|
||||
|
||||
{%@@ for name, info in mail.items() @@%}
|
||||
set my_source_command = \
|
||||
"_mutt_get-mail '{{@@ name @@}}' '{{@@ info.user.split("@")[0] @@}}' '{{@@ info.user @@}}' '{{@@ info.mail @@}}' |"
|
||||
macro index,pager <f{{@@ loop.index @@}}> "<sync-mailbox><enter-command>source \"$my_source_command\"<enter><change-folder>!<enter>"
|
||||
set my_source_command = "_mutt_get-mail '{{@@ name @@}}' |"
|
||||
macro index,pager <f{{@@ loop.index @@}}> "<sync-mailbox><enter-command>source \"$my_source_command\"<enter><change-folder>!<enter>"
|
||||
{%@@ endfor @@%}
|
||||
|
||||
# }}}
|
||||
# General {{{
|
||||
|
||||
set sort = 'reverse-date'
|
||||
set use_threads = threads
|
||||
set sort = reverse-last-date
|
||||
set sort_aux = last-date
|
||||
|
||||
set mail_check_stats = yes
|
||||
set mail_check_stats_interval = 10
|
||||
|
||||
set mark_old = no # Unread mail stay unread until read
|
||||
set mailcap_path = ~/.config/neomutt/mailcap
|
||||
auto_view text/html # automatically show html
|
||||
|
@ -146,7 +148,7 @@ set help = false
|
|||
set markers = no
|
||||
|
||||
set date_format="%m/%d %H:%M"
|
||||
set index_format="%2C %zs %?X?A& ? %D %-15.15F %s"
|
||||
set index_format="%3C %zs %?X?A& ? %D %-15.15F %s"
|
||||
|
||||
set display_filter = '_mutt_escape-html-chars'
|
||||
|
||||
|
|
|
@ -0,0 +1,260 @@
|
|||
# Nushell Config File
|
||||
|
||||
def create_left_prompt [] {
|
||||
let path_segment = ($env.PWD)
|
||||
|
||||
$path_segment
|
||||
}
|
||||
|
||||
def create_right_prompt [] {
|
||||
let time_segment = ([
|
||||
(date now | date format '%m/%d/%Y %r')
|
||||
] | str collect)
|
||||
|
||||
$time_segment
|
||||
}
|
||||
|
||||
# Use nushell functions to define your right and left prompt
|
||||
let-env PROMPT_COMMAND = { create_left_prompt }
|
||||
let-env PROMPT_COMMAND_RIGHT = { create_right_prompt }
|
||||
|
||||
# The prompt indicators are environmental variables that represent
|
||||
# the state of the prompt
|
||||
let-env PROMPT_INDICATOR = "〉"
|
||||
let-env PROMPT_INDICATOR_VI_INSERT = ": "
|
||||
let-env PROMPT_INDICATOR_VI_NORMAL = "〉"
|
||||
let-env PROMPT_MULTILINE_INDICATOR = "::: "
|
||||
|
||||
# Specifies how environment variables are:
|
||||
# - converted from a string to a value on Nushell startup (from_string)
|
||||
# - converted from a value back to a string when running external commands (to_string)
|
||||
# Note: The conversions happen *after* config.nu is loaded
|
||||
let-env ENV_CONVERSIONS = {
|
||||
"PATH": {
|
||||
from_string: { |s| $s | split row (char esep) }
|
||||
to_string: { |v| $v | str collect (char esep) }
|
||||
}
|
||||
"Path": {
|
||||
from_string: { |s| $s | split row (char esep) }
|
||||
to_string: { |v| $v | str collect (char esep) }
|
||||
}
|
||||
}
|
||||
|
||||
# Directories to search for scripts when calling source or use
|
||||
#
|
||||
# By default, <nushell-config-dir>/scripts is added
|
||||
let-env NU_LIB_DIRS = [
|
||||
($nu.config-path | path dirname | path join 'scripts')
|
||||
]
|
||||
|
||||
# Directories to search for plugin binaries when calling register
|
||||
#
|
||||
# By default, <nushell-config-dir>/plugins is added
|
||||
let-env NU_PLUGIN_DIRS = [
|
||||
($nu.config-path | path dirname | path join 'plugins')
|
||||
]
|
||||
|
||||
module completions {
|
||||
# Custom completions for external commands (those outside of Nushell)
|
||||
# Each completions has two parts: the form of the external command, including its flags and parameters
|
||||
# and a helper command that knows how to complete values for those flags and parameters
|
||||
#
|
||||
# This is a simplified version of completions for git branches and git remotes
|
||||
def "nu-complete git branches" [] {
|
||||
^git branch | lines | each { |line| $line | str find-replace '\* ' '' | str trim }
|
||||
}
|
||||
|
||||
def "nu-complete git remotes" [] {
|
||||
^git remote | lines | each { |line| $line | str trim }
|
||||
}
|
||||
|
||||
export extern "git checkout" [
|
||||
branch?: string@"nu-complete git branches" # name of the branch to checkout
|
||||
-b: string # create and checkout a new branch
|
||||
-B: string # create/reset and checkout a branch
|
||||
-l # create reflog for new branch
|
||||
--guess # second guess 'git checkout <no-such-branch>' (default)
|
||||
--overlay # use overlay mode (default)
|
||||
--quiet(-q) # suppress progress reporting
|
||||
--recurse-submodules: string # control recursive updating of submodules
|
||||
--progress # force progress reporting
|
||||
--merge(-m) # perform a 3-way merge with the new branch
|
||||
--conflict: string # conflict style (merge or diff3)
|
||||
--detach(-d) # detach HEAD at named commit
|
||||
--track(-t) # set upstream info for new branch
|
||||
--force(-f) # force checkout (throw away local modifications)
|
||||
--orphan: string # new unparented branch
|
||||
--overwrite-ignore # update ignored files (default)
|
||||
--ignore-other-worktrees # do not check if another worktree is holding the given ref
|
||||
--ours(-2) # checkout our version for unmerged files
|
||||
--theirs(-3) # checkout their version for unmerged files
|
||||
--patch(-p) # select hunks interactively
|
||||
--ignore-skip-worktree-bits # do not limit pathspecs to sparse entries only
|
||||
--pathspec-from-file: string # read pathspec from file
|
||||
]
|
||||
|
||||
export extern "git push" [
|
||||
remote?: string@"nu-complete git remotes", # the name of the remote
|
||||
refspec?: string@"nu-complete git branches"# the branch / refspec
|
||||
--verbose(-v) # be more verbose
|
||||
--quiet(-q) # be more quiet
|
||||
--repo: string # repository
|
||||
--all # push all refs
|
||||
--mirror # mirror all refs
|
||||
--delete(-d) # delete refs
|
||||
--tags # push tags (can't be used with --all or --mirror)
|
||||
--dry-run(-n) # dry run
|
||||
--porcelain # machine-readable output
|
||||
--force(-f) # force updates
|
||||
--force-with-lease: string # require old value of ref to be at this value
|
||||
--recurse-submodules: string # control recursive pushing of submodules
|
||||
--thin # use thin pack
|
||||
--receive-pack: string # receive pack program
|
||||
--exec: string # receive pack program
|
||||
--set-upstream(-u) # set upstream for git pull/status
|
||||
--progress # force progress reporting
|
||||
--prune # prune locally removed refs
|
||||
--no-verify # bypass pre-push hook
|
||||
--follow-tags # push missing but relevant tags
|
||||
--signed: string # GPG sign the push
|
||||
--atomic # request atomic transaction on remote side
|
||||
--push-option(-o): string # option to transmit
|
||||
--ipv4(-4) # use IPv4 addresses only
|
||||
--ipv6(-6) # use IPv6 addresses only
|
||||
]
|
||||
}
|
||||
|
||||
# Get just the extern definitions without the custom completion commands
|
||||
use completions *
|
||||
|
||||
# for more information on themes see
|
||||
# https://github.com/nushell/nushell/blob/main/docs/How_To_Coloring_and_Theming.md
|
||||
let default_theme = {
|
||||
# color for nushell primitives
|
||||
separator: white
|
||||
leading_trailing_space_bg: { attr: n } # no fg, no bg, attr non effectively turns this off
|
||||
header: green_bold
|
||||
empty: blue
|
||||
bool: white
|
||||
int: white
|
||||
filesize: white
|
||||
duration: white
|
||||
date: white
|
||||
range: white
|
||||
float: white
|
||||
string: white
|
||||
nothing: white
|
||||
binary: white
|
||||
cellpath: white
|
||||
row_index: green_bold
|
||||
record: white
|
||||
list: white
|
||||
block: white
|
||||
hints: dark_gray
|
||||
|
||||
# shapes are used to change the cli syntax highlighting
|
||||
shape_garbage: { fg: "#FFFFFF" bg: "#FF0000" attr: b}
|
||||
shape_binary: purple_bold
|
||||
shape_bool: light_cyan
|
||||
shape_int: purple_bold
|
||||
shape_float: purple_bold
|
||||
shape_range: yellow_bold
|
||||
shape_internalcall: cyan_bold
|
||||
shape_external: cyan
|
||||
shape_externalarg: green_bold
|
||||
shape_literal: blue
|
||||
shape_operator: yellow
|
||||
shape_signature: green_bold
|
||||
shape_string: green
|
||||
shape_string_interpolation: cyan_bold
|
||||
shape_datetime: cyan_bold
|
||||
shape_list: cyan_bold
|
||||
shape_table: blue_bold
|
||||
shape_record: cyan_bold
|
||||
shape_block: blue_bold
|
||||
shape_filepath: cyan
|
||||
shape_globpattern: cyan_bold
|
||||
shape_variable: purple
|
||||
shape_flag: blue_bold
|
||||
shape_custom: green
|
||||
shape_nothing: light_cyan
|
||||
}
|
||||
|
||||
# The default config record. This is where much of your global configuration is setup.
|
||||
let $config = {
|
||||
filesize_metric: false
|
||||
table_mode: rounded # basic, compact, compact_double, light, thin, with_love, rounded, reinforced, heavy, none, other
|
||||
use_ls_colors: true
|
||||
rm_always_trash: false
|
||||
color_config: $default_theme
|
||||
use_grid_icons: true
|
||||
footer_mode: "25" # always, never, number_of_rows, auto
|
||||
quick_completions: true # set this to false to prevent auto-selecting completions when only one remains
|
||||
partial_completions: true # set this to false to prevent partial filling of the prompt
|
||||
animate_prompt: false # redraw the prompt every second
|
||||
float_precision: 2
|
||||
use_ansi_coloring: true
|
||||
filesize_format: "auto" # b, kb, kib, mb, mib, gb, gib, tb, tib, pb, pib, eb, eib, zb, zib, auto
|
||||
edit_mode: emacs # emacs, vi
|
||||
max_history_size: 10000
|
||||
menu_config: {
|
||||
columns: 4
|
||||
col_width: 20 # Optional value. If missing all the screen width is used to calculate column width
|
||||
col_padding: 2
|
||||
text_style: green
|
||||
selected_text_style: green_reverse
|
||||
marker: "| "
|
||||
}
|
||||
history_config: {
|
||||
page_size: 10
|
||||
selector: "!"
|
||||
text_style: green
|
||||
selected_text_style: green_reverse
|
||||
marker: "? "
|
||||
}
|
||||
keybindings: [
|
||||
{
|
||||
name: completion_menu
|
||||
modifier: none
|
||||
keycode: tab
|
||||
mode: emacs # Options: emacs vi_normal vi_insert
|
||||
event: {
|
||||
until: [
|
||||
{ send: menu name: completion_menu }
|
||||
{ send: menunext }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: completion_previous
|
||||
modifier: shift
|
||||
keycode: backtab
|
||||
mode: [emacs, vi_normal, vi_insert] # Note: You can add the same keybinding to all modes by using a list
|
||||
event: { send: menuprevious }
|
||||
}
|
||||
{
|
||||
name: history_menu
|
||||
modifier: control
|
||||
keycode: char_x
|
||||
mode: emacs
|
||||
event: {
|
||||
until: [
|
||||
{ send: menu name: history_menu }
|
||||
{ send: menupagenext }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: history_previous
|
||||
modifier: control
|
||||
keycode: char_z
|
||||
mode: emacs
|
||||
event: {
|
||||
until: [
|
||||
{ send: menupageprevious }
|
||||
{ edit: undo }
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -11,7 +11,7 @@
|
|||
set viewmode miller
|
||||
|
||||
# How many columns are there, and what are their relative widths?
|
||||
set column_ratios 1,3,4
|
||||
set column_ratios 2,4,2
|
||||
|
||||
# Which files should be hidden? (regular expression)
|
||||
set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$
|
||||
|
@ -45,7 +45,7 @@ set vcs_aware true
|
|||
# State of the four backends git, hg, bzr, svn. The possible states are
|
||||
# disabled, local (only show local info), enabled (show local and remote
|
||||
# information).
|
||||
set vcs_backend_git enabled
|
||||
set vcs_backend_git disabled
|
||||
set vcs_backend_hg disabled
|
||||
set vcs_backend_bzr disabled
|
||||
set vcs_backend_svn disabled
|
||||
|
@ -143,7 +143,7 @@ set dirname_in_tabs true
|
|||
set mouse_enabled true
|
||||
|
||||
# Display the file size in the main column or status bar?
|
||||
set display_size_in_main_column true
|
||||
# set display_size_in_main_column true
|
||||
set display_size_in_status_bar true
|
||||
|
||||
# Display the free disk space in the status bar?
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[{{@@ mail.personal.mail.strip("mail.").split(".")[0] @@}}]
|
||||
[{{@@ nextcloud.name @@}}]
|
||||
type = webdav
|
||||
vendor = nextcloud
|
||||
user = {{@@ username @@}}
|
||||
pass = {{@@ rclone_obscure(mail.personal.mail) @@}}
|
||||
url = https://cloud.{{@@ mail.personal.mail @@}}/remote.php/webdav/
|
||||
user = {{@@ nextcloud.user @@}}
|
||||
pass = {{@@ rclone_obscure(nextcloud.pass) @@}}
|
||||
url = https://{{@@ nextcloud.host @@}}/remote.php/webdav/
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
#!/bin/sh
|
||||
exec _start_dbus-daemon
|
|
@ -1,2 +0,0 @@
|
|||
#!/bin/sh
|
||||
exec fusuma
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/sh
|
||||
|
||||
exec _gammastep
|
|
@ -1,2 +0,0 @@
|
|||
#!/bin/sh
|
||||
exec /usr/lib/geoclue-2.0/demos/agent
|
|
@ -1,2 +1,4 @@
|
|||
#!/bin/sh
|
||||
|
||||
gpgconf --kill gpg-agent
|
||||
exec gpg-agent --server
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
#!/bin/sh
|
||||
exec /usr/lib/kdeconnectd
|
||||
|
||||
exec _kdeconnectd
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
#!/bin/sh
|
||||
exec libinput-gestures
|
|
@ -1,2 +0,0 @@
|
|||
#!/bin/sh
|
||||
exec light -N 1
|
|
@ -1,2 +1,8 @@
|
|||
#!/bin/sh
|
||||
|
||||
while pgrep mako; do
|
||||
pkill mako
|
||||
sleep .5s;
|
||||
done
|
||||
|
||||
exec mako
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
#!/bin/sh
|
||||
exec _notify-mail
|
|
@ -1,2 +0,0 @@
|
|||
#!/bin/sh
|
||||
exec redshift
|
|
@ -1,5 +1,12 @@
|
|||
#!/bin/sh
|
||||
|
||||
while pidof telegram-desktop-bin telegram-desktop
|
||||
do
|
||||
pkill telegram-desktop
|
||||
pkill telegram-desktop-bin
|
||||
sleep 1s
|
||||
done
|
||||
|
||||
command -v telegram-desktop-bin &&
|
||||
exec telegram-desktop-bin ||
|
||||
exec telegram-desktop
|
||||
|
|
|
@ -1,2 +1,5 @@
|
|||
#!/bin/sh
|
||||
exec /usr/lib/xdg-desktop-portal-wlr
|
||||
|
||||
PATH="$PATH:/usr/lib:/usr/libexec"
|
||||
|
||||
exec xdg-desktop-portal-wlr
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
# {{@@ header() @@}} #
|
||||
|
||||
# group_imports = "StdExternalCrate"
|
||||
# imports_granularity = "Crate"
|
||||
# imports_layout = "Vertical"
|
||||
tab_spaces = {{@@ indent_width @@}}
|
||||
|
||||
max_width = 80
|
||||
|
||||
{%@@ if tabs @@%}
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
#!/bin/fish
|
||||
#!/usr/bin/env fish
|
||||
|
||||
dotdrop install -f
|
||||
|
||||
test "{{@@ color.type @@}}" = "dark"
|
||||
and set _COLOR_TYPE "light"
|
||||
|
|
|
@ -1,23 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
BTRFS_ROOT="{{@@ filesystem.partitions['/'] @@}}"
|
||||
|
||||
if ! mountpoint "$BTRFS_ROOT"
|
||||
then
|
||||
mkdir -p "$BTRFS_ROOT"
|
||||
mount "$BTRFS_ROOT"
|
||||
fi
|
||||
cd "$BTRFS_ROOT"
|
||||
|
||||
|
||||
{%@@ set new_partitions = filesystem.partitions.update({root_subvol: '/'}) @@%}
|
||||
{%@@ for name, path in filesystem.partitions.items() @@%}
|
||||
test -e "./{{@@ name @@}}" ||
|
||||
btrfs subvolume create "./{{@@ name @@}}"
|
||||
test -d "{{@@ path @@}}" ||
|
||||
mkdir -p "{{@@ path @@}}"
|
||||
mountpoint "{{@@ path @@}}" ||
|
||||
mount "{{@@ path @@}}"
|
||||
{%@@ endfor @@%}
|
|
@ -9,7 +9,7 @@ truncate -s 0 /swap/swapfile
|
|||
chattr +C /swap/swapfile
|
||||
btrfs property set /swap/swapfile compression none
|
||||
|
||||
dd if=/dev/zero of=/swap/swapfile bs=100M count=100 status=progress
|
||||
dd if=/dev/zero of=/swap/swapfile bs=100M count=200 status=progress
|
||||
|
||||
chmod 600 /swap/swapfile
|
||||
mkswap /swap/swapfile
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/sh
|
||||
|
||||
/usr/bin/diffr \
|
||||
exec /usr/bin/env diffr \
|
||||
--colors 'refine-added:foreground:green:underline' \
|
||||
--colors 'refine-added:background:none' \
|
||||
--colors 'refine-removed:foreground:red:underline' \
|
|
@ -0,0 +1,9 @@
|
|||
#!/bin/sh
|
||||
|
||||
if type curl; then
|
||||
loc=`curl ipinfo.io/loc | sed 's/,/:/'`
|
||||
else
|
||||
loc="-30:-50"
|
||||
fi
|
||||
|
||||
exec gammastep -l "$loc"
|
|
@ -0,0 +1,4 @@
|
|||
#!/bin/sh
|
||||
|
||||
localectl set-x11-keymap us pc104 colemak
|
||||
localectl set-keymap colemak
|
|
@ -0,0 +1,16 @@
|
|||
#!/bin/fish
|
||||
|
||||
cd "$HOME/Projects"
|
||||
|
||||
fd -d5 -H '^\.git$' |
|
||||
sd '\.git$' '' |
|
||||
while read repo
|
||||
pushd "$repo"
|
||||
if git cherry -v 2> /dev/null | wc -l | xargs -n1 test 0 -lt
|
||||
echo Unpushed repos $repo
|
||||
break
|
||||
end
|
||||
popd
|
||||
end
|
||||
|
||||
# vim: ft=fish
|
|
@ -1,21 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -x
|
||||
|
||||
projdir="${HOME}/Projects"
|
||||
|
||||
user="{{@@ mail.personal.user @@}}"
|
||||
host="git.{{@@ mail.personal.mail @@}}"
|
||||
|
||||
#{%@@ if False @@%}#
|
||||
user="$USER"
|
||||
host="github.com"
|
||||
#{%@@ endif @@%}#
|
||||
git -C "$projdir" rev-parse >/dev/null &&
|
||||
exit 0
|
||||
|
||||
git clone "ssh://git@${host}:${user}/projects" "$projdir"
|
||||
|
||||
cd "$projdir"
|
||||
|
||||
git submodule update --init --recursive
|
|
@ -1,11 +1,10 @@
|
|||
#!/bin/sh
|
||||
|
||||
while ! pidof gpg-agent; do
|
||||
sleep 5s
|
||||
done
|
||||
gpg-connect-agent reloadagent /bye
|
||||
|
||||
KEYGRIP=$(cat "$HOME/.pam-gnupg")
|
||||
PATH="$PATH:/usr/lib:/usr/libexec:/usr/lib/gnupg"
|
||||
keygrip=$(cat "$HOME/.pam-gnupg")
|
||||
|
||||
sudo cat /etc/.passwd |
|
||||
echo '{{@@ main_password @@}}' |
|
||||
base64 -d |
|
||||
/usr/lib/gnupg/gpg-preset-passphrase --preset "$KEYGRIP"
|
||||
gpg-preset-passphrase --preset "$keygrip"
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
#!/bin/sh
|
||||
|
||||
for g in audio video input bluetooth wheel _seatd kvm docker; do
|
||||
if
|
||||
cat /etc/group |
|
||||
cut -d: -f1 |
|
||||
grep "^${g}\$" > /dev/null
|
||||
then
|
||||
sudo usermod "$USER" -aG "$g" &
|
||||
else
|
||||
echo "warning: group $g does not exist"
|
||||
fi
|
||||
done
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/sh
|
||||
|
||||
cargo install diesel_cli --no-default-features --features mysql,postgres
|
|
@ -0,0 +1,29 @@
|
|||
#!/bin/sh
|
||||
# Download and install rust analyzer to ~/.local/bin
|
||||
|
||||
set -ex
|
||||
|
||||
## Set this to get a fixed version
|
||||
# PIN_VERSION="2022-05-02"
|
||||
|
||||
if [ -n "$PIN_VERSION" ]
|
||||
then
|
||||
REPO="https://github.com/rust-analyzer/rust-analyzer"
|
||||
VERSION="$PIN_VERSION"
|
||||
DLURL="$REPO/releases/download/$VERSION/rust-analyzer-x86_64-unknown-linux-gnu.gz"
|
||||
else
|
||||
API_URL="https://api.github.com/repos/rust-lang/rust-analyzer/releases/latest"
|
||||
API_RESP="$(curl "$API_URL")"
|
||||
VERSION=$(echo "$API_RESP" | jq -r '.tag_name')
|
||||
DLURL=$(echo "$API_RESP" | jq -r '.assets[]|select(.name|match("x86_64.*gnu")).browser_download_url')
|
||||
fi
|
||||
|
||||
GZFILE="$HOME/.cache/rust-analyzer-$VERSION-x86_64-unknown-linux-gnu.gz"
|
||||
BINDIR="$HOME/.local/bin"
|
||||
|
||||
test -f "$GZFILE" ||
|
||||
wget -O "$GZFILE" "$DLURL"
|
||||
|
||||
rm -f "$BINDIR/rust-analyzer"
|
||||
gunzip "$GZFILE" --stdout > "$BINDIR/rust-analyzer"
|
||||
chmod u+x "$BINDIR/rust-analyzer"
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/sh
|
||||
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
|
@ -0,0 +1,15 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -ex
|
||||
|
||||
REPO=https://github.com/mozilla/sccache
|
||||
VERSION=v0.2.15
|
||||
TARFILENAME="sccache-$VERSION-x86_64-unknown-linux-musl"
|
||||
TARFILEPATH="$HOME/.cache/$TARFILENAME.tar.gz"
|
||||
BINDIR="$HOME/.local/bin"
|
||||
|
||||
test -f "$TARFILEPATH" ||
|
||||
wget -qO "$TARFILEPATH" "$REPO/releases/download/$VERSION/$TARFILENAME.tar.gz"
|
||||
|
||||
tar -xf "$TARFILEPATH" -C "$BINDIR" --wildcards "*/sccache" --strip-components=1
|
||||
chmod u+x "$BINDIR/sccache"
|
|
@ -0,0 +1,14 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -ex
|
||||
|
||||
REPO=https://github.com/thedodd/trunk
|
||||
VERSION=v0.14.0
|
||||
TARFILE="$HOME/.cache/trunk-$VERSION-x86_64-unknown-linux-gnu.tar.gz"
|
||||
BINDIR="$HOME/.local/bin"
|
||||
|
||||
test -f "$TARFILE" ||
|
||||
wget -qO "$TARFILE" "$REPO/releases/download/$VERSION/trunk-x86_64-unknown-linux-gnu.tar.gz"
|
||||
|
||||
tar -xf "$TARFILE" -C "$BINDIR" trunk
|
||||
chmod u+x "$BINDIR/trunk"
|
|
@ -2,8 +2,11 @@
|
|||
|
||||
set -e
|
||||
|
||||
test `id -u` -ne 0 ||
|
||||
exit 0
|
||||
|
||||
command -v makepkg &>/dev/null ||
|
||||
exit 1
|
||||
exit 0
|
||||
|
||||
install_pikaur() {
|
||||
PIKDIR="$HOME/.cache/pikaur/build/pikaur"
|
||||
|
@ -34,7 +37,9 @@ pikaur \
|
|||
--noconfirm \
|
||||
--keepbuilddep ||
|
||||
for depend in ${depends[@]}; do
|
||||
sudo pacman -S --needed --noconfirm $depend || true
|
||||
pikaur -S --needed --noconfirm $depend ||
|
||||
sudo pacman -S --needed --noconfirm $depend ||
|
||||
true
|
||||
done
|
||||
|
||||
init_deps=""
|
|
@ -0,0 +1,5 @@
|
|||
#!/bin/sh
|
||||
|
||||
PATH="$PATH:/usr/lib:/usr/libexec:/usr/lib/libexec"
|
||||
|
||||
exec kdeconnectd --replace
|
|
@ -0,0 +1,13 @@
|
|||
#!/bin/sh
|
||||
|
||||
swaylock -f
|
||||
|
||||
export SVDIR="{{@@ user_svdir @@}}"
|
||||
|
||||
maybe() {
|
||||
command -v $1 > /dev/null &&
|
||||
env "$@"
|
||||
}
|
||||
|
||||
maybe sv up swayidle
|
||||
maybe systemctl --user start sway-idle.service
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/sh
|
||||
|
||||
{%@@ if 'papirus' in "{{@@ icon_theme @@}}".lower() @@%}
|
||||
{%@@ if 'papirus' in icon_theme.lower() @@%}
|
||||
# Papirus Icon Theme
|
||||
{
|
||||
papirus-folders -l | grep "[^>] {{@@ accent_color_name @@}}"&&
|
||||
|
@ -9,23 +9,23 @@
|
|||
papirus-folders -uC "{{@@ accent_color_name @@}}" ||
|
||||
papirus-folders -uD
|
||||
|
||||
} &
|
||||
} > /dev/null &
|
||||
{%@@ endif @@%}
|
||||
|
||||
{%@@ if 'materia' in "{{@@ gtk_theme @@}}".lower() @@%}
|
||||
{%@@ if 'materia' in gtk_theme.lower() @@%}
|
||||
|
||||
# Materia GTK Theme
|
||||
src_path="$HOME/.cache/materia-theme"
|
||||
TMPDIR="$HOME/.cache/materia-theme"
|
||||
|
||||
theme_name="{{@@ gtk_theme @@}}"
|
||||
dst_path="${HOME}/.themes"
|
||||
dst_path="$HOME/.themes"
|
||||
|
||||
test -d "$src_path" ||
|
||||
test -d "$TMPDIR" ||
|
||||
git clone\
|
||||
"https://github.com/nana-4/materia-theme"\
|
||||
"$src_path"
|
||||
"$TMPDIR"
|
||||
|
||||
cd "$src_path"
|
||||
cd "$TMPDIR"
|
||||
|
||||
# SEL = accent
|
||||
# BG = header-bar
|
||||
|
@ -66,3 +66,24 @@ mkdir -p "${dst_path}/${theme_name}"
|
|||
} &> /dev/null &
|
||||
|
||||
{%@@ endif @@%}
|
||||
|
||||
{%@@ if 'orchis' in gtk_theme.lower() @@%}
|
||||
MARKER_FILE="$HOME/.themes/.orchis_installed"
|
||||
|
||||
test -f "$MARKER_FILE" &&
|
||||
exit 0
|
||||
|
||||
TMPDIR="$HOME/.cache/share/orchis"
|
||||
|
||||
mkdir -p "$TMPDIR" && cd "$TMPDIR"
|
||||
|
||||
test -d .git &&
|
||||
git pull ||
|
||||
git clone "https://github.com/vinceliuice/Orchis-theme" "$TMPDIR"
|
||||
|
||||
./install.sh \
|
||||
--theme "{{@@ accent_color_name.lower() @@}}" \
|
||||
--tweaks "solid" --tweaks "compact"
|
||||
|
||||
touch "$MARKER_FILE"
|
||||
{%@@ endif @@%}
|
||||
|
|
|
@ -5,12 +5,12 @@ set -ex
|
|||
clean() {
|
||||
rm -rf "$TMPDIR"
|
||||
cd "$SCRIPT_DIR"
|
||||
rm README.md LICENSE
|
||||
rm -f README.md LICENSE
|
||||
}
|
||||
trap clean EXIT
|
||||
|
||||
SCRIPT_DIR="$HOME/.config/mpv/scripts"
|
||||
TMPDIR=(mktemp -d)
|
||||
TMPDIR=$(mktemp -d)
|
||||
|
||||
mkdir -p "$SCRIPT_DIR"
|
||||
|
||||
|
|
|
@ -1,16 +1,35 @@
|
|||
#!/bin/sh
|
||||
|
||||
my_path="$1"
|
||||
my_name="$2"
|
||||
my_user="$3"
|
||||
my_host="$4"
|
||||
my_pass=`_pass_get "$my_host"`
|
||||
if test "$#" -ne "1"; then
|
||||
echo "Incorrect number of arguments, expected 1, got $#" >&2
|
||||
fi
|
||||
|
||||
case "$1" in
|
||||
{%@@ for name, info in mail.items() @@%}
|
||||
|
||||
{{@@ name @@}})
|
||||
my_path="{{@@ name @@}}"
|
||||
my_name="{{@@ info.from @@}}"
|
||||
my_user="{{@@ info.user @@}}"
|
||||
# my_host="{{@@ info.imap @@}}"
|
||||
my_pass=`_pass_get "{{@@ info.pass @@}}"`
|
||||
;;
|
||||
|
||||
{%@@ endfor @@%}
|
||||
*)
|
||||
echo "No valid account named $1" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
cat <<EOF
|
||||
set realname = "$my_name"
|
||||
set from = "${my_name}@${my_host}"
|
||||
set smtp_url = 'smtps://${my_user}@${my_host}'
|
||||
set smtp_pass = '$my_pass'
|
||||
set real_name = "$my_name"
|
||||
set from = "$my_name <$my_user>"
|
||||
|
||||
set sendmail="/usr/bin/msmtp -a $my_path -- "
|
||||
|
||||
# set smtp_url = 'smtps://$my_user'
|
||||
# set smtp_pass = '$my_pass'
|
||||
|
||||
# set Mailboxes
|
||||
set folder = ~/.local/share/mail/${my_path}/
|
||||
|
@ -28,3 +47,4 @@ mailboxes \
|
|||
"=Trash" \
|
||||
|
||||
EOF
|
||||
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
#!/usr/bin/env fish
|
||||
|
||||
set NEW_MAIL_PATH ~/.local/share/mail/*/*/new/
|
||||
set ICON "/usr/share/icons/{{@@ icon_theme @@}}/symbolic/status/mail-unread-symbolic.svg"
|
||||
|
||||
command -qs maildir-notify-daemon
|
||||
and exec maildir-notify-daemon $NEW_MAIL_PATH
|
||||
|
||||
inotifywait \
|
||||
--monitor \
|
||||
--quiet \
|
||||
--format %w%f \
|
||||
-e move -e create \
|
||||
$NEW_MAIL_PATH |
|
||||
while read new_mail_file
|
||||
# clear variables
|
||||
set -e from
|
||||
set -e subject
|
||||
set -e headers_ended
|
||||
|
||||
test -f "$new_mail_file"
|
||||
or continue
|
||||
|
||||
command cat "$new_mail_file" |
|
||||
while read line
|
||||
# End of headers
|
||||
if string match -qr '^$' "$line"
|
||||
set headers_ended
|
||||
continue
|
||||
end
|
||||
if not set -q headers_ended
|
||||
# capture header information
|
||||
if string match -qr '^From: ' $line
|
||||
set from $line
|
||||
end
|
||||
if string match -qr '^Subject: ' $line
|
||||
set subject $line
|
||||
end
|
||||
else
|
||||
# capture start of message, to maybe use as replacement of subject
|
||||
set msg_head $line
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
# From may be formated as either "someone@example.com" or "Someone <someone@example.com>"
|
||||
# Make for the seconde case, replace <.*> with nothing
|
||||
set from (string replace -r '<.*>' '' $from)
|
||||
|
||||
# If a message lacks a subject, use the message head as one
|
||||
if not test -n "$subject"
|
||||
set subject "$msg_head"
|
||||
end
|
||||
|
||||
notify-send --icon "$ICON" "$from" "$subject"
|
||||
|
||||
end
|
|
@ -1,8 +1,7 @@
|
|||
#!/bin/sh
|
||||
|
||||
|
||||
gpg --list-secret-keys --with-keygrip \
|
||||
"{{@@ username @@}}@{{@@ mail.personal.mail @@}}" |
|
||||
gpg --list-secret-keys --with-keygrip |
|
||||
awk '
|
||||
/^ssb/ {
|
||||
ssb=1
|
||||
|
|
|
@ -1,42 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -ex
|
||||
|
||||
|
||||
cd "$(dirname $1)" && shift
|
||||
|
||||
create_logger() {
|
||||
pushd sv/
|
||||
for svd in */; do
|
||||
pushd "$svd"
|
||||
|
||||
if ! test -d log; then
|
||||
mkdir -p log
|
||||
ln -s "$(which _default_logger)" log/run
|
||||
fi
|
||||
|
||||
popd
|
||||
done
|
||||
popd
|
||||
}
|
||||
|
||||
enable_defaults() {
|
||||
|
||||
mkdir -p "runsvdir/default"
|
||||
pushd "runsvdir/default"
|
||||
|
||||
svdir="$(readlink -f ../../sv)"
|
||||
|
||||
for sv; do
|
||||
ln -fs "$svdir/$sv" .
|
||||
done
|
||||
popd
|
||||
}
|
||||
|
||||
create_logger
|
||||
|
||||
test -f .inited && exit 0
|
||||
|
||||
enable_defaults "$@"
|
||||
|
||||
touch .inited
|
|
@ -4,4 +4,4 @@ exec dbus-daemon \
|
|||
--syslog-only \
|
||||
--nofork \
|
||||
--session \
|
||||
--address=unix:path=$XDG_RUNTIME_DIR/bus
|
||||
--address="$DBUS_SESSION_BUS_ADDRESS"
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
#!/bin/sh
|
||||
|
||||
_lock
|
||||
|
||||
loginctl suspend &
|
||||
systemctl suspend &
|
||||
sudo -A zzz &
|
|
@ -3,8 +3,8 @@
|
|||
pkill -9 swayidle
|
||||
|
||||
exec swayidle -w \
|
||||
before-sleep 'pkill caffeinated; swaylock -f' \
|
||||
timeout 360 'pkill caffeinated; swaylock -f' \
|
||||
before-sleep 'swaylock -f' \
|
||||
timeout 360 'swaylock -f' \
|
||||
timeout 1800 'mpc status | grep "^\[playing\]" > /dev/null ||
|
||||
swaymsg "output * dpms off"' \
|
||||
resume 'swaymsg "output * dpms on"' \
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
#!/bin/sh
|
||||
|
||||
export SVDIR="{{@@ user_svdir @@}}"
|
||||
|
||||
maybe() {
|
||||
command -v $1 > /dev/null &&
|
||||
env "$@"
|
||||
}
|
||||
|
||||
if pidof swayidle > /dev/null; then
|
||||
maybe sv down swayidle
|
||||
maybe systemctl --user stop sway-idle.service
|
||||
else
|
||||
maybe sv up swayidle
|
||||
maybe systemctl --user start sway-idle.service
|
||||
fi
|
|
@ -7,4 +7,4 @@
|
|||
else
|
||||
qutebrowser $@
|
||||
fi
|
||||
} &> /dev/null < /dev/null & disown
|
||||
} > /dev/null 2>&1 &
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/fish
|
||||
#!/usr/bin/env fish
|
||||
|
||||
# wrapper around bemenu
|
||||
# bmenu * - use as dmenu, -p for custom prompt (man bemenu)
|
||||
|
@ -77,29 +77,11 @@ trap clean_exit EXIT
|
|||
set hb "#404040"
|
||||
#{%@@ endif @@%}#
|
||||
|
||||
set -l histfile "$HOME/.local/share/bmenu-hist"
|
||||
mkdir -p (dirname $histfile)
|
||||
touch $histfile
|
||||
command -qs dhist &&
|
||||
set wraper dhist wrap
|
||||
|
||||
function get_score -a query file
|
||||
set -l escaped (string escape --style regex $query)
|
||||
set -l score (string replace -rf "^(\d+) $escaped\$" '$1' < $file)
|
||||
test -z "$score"
|
||||
and set -l score 0
|
||||
echo $score
|
||||
end
|
||||
|
||||
set -l estatus 1
|
||||
|
||||
while read line
|
||||
set -l score (get_score $line $histfile)
|
||||
printf "%s %s\n" $score $line
|
||||
end |
|
||||
sort --reverse --numeric-sort |
|
||||
string replace -ar '^\d+ ' '' |
|
||||
bemenu \
|
||||
env $wraper -- bemenu \
|
||||
$focused_output\
|
||||
--grab\
|
||||
--ignorecase\
|
||||
--bottom\
|
||||
--no-overlap\
|
||||
|
@ -110,21 +92,6 @@ bemenu \
|
|||
--fb "$fb" --ff "$ff" \
|
||||
--nb "$nb" --nf "$nf" \
|
||||
--hb "$hb" --hf "$hf" \
|
||||
$argv |
|
||||
while read choice
|
||||
printf "%s\n" $choice
|
||||
|
||||
set estatus 0
|
||||
|
||||
set -l escaped (string escape --style regex $choice)
|
||||
set -l score (get_score $choice $histfile)
|
||||
set -l replacement (printf "%s %s" (math $score + 1) $choice)
|
||||
|
||||
test $score = 0
|
||||
and echo $replacement >> $histfile
|
||||
or sd "\d+ $escaped" $replacement $histfile &> /dev/null </dev/null
|
||||
end
|
||||
|
||||
exit $estatus
|
||||
$argv
|
||||
|
||||
# vim: ft=fish
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# Copyright Cédric Picard 2014 -- License WTFPL
|
||||
# Inspired by Ranger's -- See https://github.com/hut/ranger
|
||||
#
|
||||
|
@ -37,7 +37,8 @@ sed -i -- '1d' "${namebase}.2"
|
|||
{
|
||||
echo '# Please review/modify this script or empty it to do nothing'
|
||||
echo 'run(){'
|
||||
echo ' mv -Ti -- "$1" "$2"'
|
||||
echo ' mkdir -p "$(dirname "$2")"'
|
||||
echo ' mv -T -- "$1" "$2"'
|
||||
echo '}'
|
||||
while read -r l1 <&3 && read -r l2 <&4; do
|
||||
[ "$l1" = "$l2" ] || printf "%s\n%s\n" "$l1" "$l2"
|
||||
|
|
|
@ -1,54 +1,33 @@
|
|||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
if test -z "$SWAYSOCK" && pidof gnome-shell &> /dev/null
|
||||
if test -z "$SWAYSOCK" && pidof gnome-shell > /dev/null
|
||||
then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
test -z "$XDG_RUNTIME_DIR" &&
|
||||
export XDG_RUNTIME_DIR=/run/user/$(id -u)
|
||||
|
||||
die() {
|
||||
test "$?" = 0 ||
|
||||
notify-send "Failed to sync mail" "try unlocking your gpg key"
|
||||
}
|
||||
# trap die EXIT
|
||||
|
||||
getnew() {
|
||||
pushd "$HOME/.local/share/mail/" >/dev/null
|
||||
|
||||
find */INBOX*/new -type f |
|
||||
sed -E '/Duolingo|LBRY/d' |
|
||||
wc -l
|
||||
|
||||
popd >/dev/null
|
||||
}
|
||||
|
||||
OLD=$(getnew)
|
||||
{%@@ for name in mail | reverse @@%}
|
||||
mkdir -p "$HOME/.local/share/mail/{{@@ name @@}}/"
|
||||
{%@@ endfor @@%}
|
||||
|
||||
if test "$1" = "update" && ! pidof mbsync; then
|
||||
if ! ping -c3 {{@@ mail.personal.mail @@}} &> /dev/null
|
||||
if ! ping -c3 {{@@ mail.personal.imap @@}} > /dev/null
|
||||
then
|
||||
exit 0
|
||||
fi
|
||||
mbsync -a ||
|
||||
mbsync -a ||
|
||||
mbsync -a
|
||||
timeout 10m mbsync -a
|
||||
fi
|
||||
|
||||
NEW=$(getnew)
|
||||
cd "$HOME/.local/share/mail/" >/dev/null
|
||||
|
||||
if test "$NEW" -gt "$OLD"; then
|
||||
notify-send " New E-Mails!"
|
||||
fi
|
||||
|
||||
echo $NEW | sed 's/^0$//'
|
||||
|
||||
caller=$(ps -o comm= $PPID)
|
||||
if test "$caller" != "waybar"; then
|
||||
pidof waybar >/dev/null &&
|
||||
pkill -SIGRTMIN+4 waybar
|
||||
fi
|
||||
find */INBOX*/new -type f |
|
||||
wc -l |
|
||||
sed 's/^0$//'
|
||||
|
||||
# vim:ft=sh
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
|
||||
|
||||
RED_ON="$(pidof redshift)"
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
testz() {
|
||||
if test -z "$1"; then
|
||||
echo "$2" >&2
|
||||
|
@ -10,14 +12,15 @@ testz() {
|
|||
testz "$DOTDROP_CONFIG" "DOTDROP_CONFIG is not set"
|
||||
testz "$1" "No script name provided"
|
||||
|
||||
pushd "$(dirname "$DOTDROP_CONFIG")"
|
||||
DOTDIR="$(dirname "$DOTDROP_CONFIG")"
|
||||
cd "$DOTDIR/dotfiles/scripts"
|
||||
|
||||
if ! test -f "dotfiles/scripts/$1"
|
||||
if ! test -f "$1"
|
||||
then
|
||||
printf '#!/bin/sh\n' > "dotfiles/scripts/$1"
|
||||
|
||||
chmod u+x "dotfiles/scripts/$1"
|
||||
|
||||
pwd
|
||||
touch "$1"
|
||||
printf '#!/bin/sh\n' > "$1"
|
||||
chmod u+x "$1"
|
||||
fi
|
||||
|
||||
kak "dotfiles/scripts/$1"
|
||||
kak "$1"
|
||||
|
|
|
@ -10,7 +10,7 @@ clean() {
|
|||
|
||||
set +e
|
||||
kill "$mpvPid"
|
||||
rm -f $tmpf
|
||||
rm -f "$tmpf"
|
||||
}
|
||||
|
||||
trap clean EXIT
|
||||
|
@ -52,8 +52,8 @@ main() {
|
|||
}
|
||||
|
||||
pick_song() {
|
||||
choice=$(cat $tmpf | cut -d\| -f1 | wdmenu)
|
||||
choice=$(grep "$choice" $tmpf | head -n 1)
|
||||
choice=$(cat "$tmpf" | cut -d\| -f1 | wdmenu)
|
||||
choice=$(grep "$choice" "$tmpf" | head -n 1)
|
||||
choiceId=$(printf "%s" "$choice" | cut -d\| -f2)
|
||||
|
||||
case "$sType" in
|
||||
|
@ -131,9 +131,9 @@ common_preview() {
|
|||
)
|
||||
|
||||
mpv --quiet --volume=50 --no-resume-playback "$choicePreview" &
|
||||
mpvPid=$!
|
||||
mpvPid="$!"
|
||||
choice=$(printf "$COMMON_CHOISES" | wdmenu -p 'Download?')
|
||||
kill $mpvPid || true
|
||||
kill "$mpvPid" || true
|
||||
}
|
||||
|
||||
common_art() {
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
set -e
|
||||
|
||||
main(){
|
||||
sym=$(bmenu | grep -o '^.' )
|
||||
sym=$(wdmenu | grep -o '^.' )
|
||||
wl-copy --trim-newline "$sym"
|
||||
notify-send "Copied:" "\"$sym\""
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
owm(){
|
||||
|
@ -82,7 +82,7 @@ owm_pango(){
|
|||
owm_json(){
|
||||
owm
|
||||
|
||||
tee > .forecast.json <<EOF
|
||||
tee > "$HOME/.forecast.json" <<EOF
|
||||
{
|
||||
"min":"$MIN",
|
||||
"max":"$MAX",
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
#!/bin/sh
|
||||
|
||||
exec /usr/bin/fuzzel \
|
||||
--terminal=terminal \
|
||||
--lines=30 \
|
||||
--width=50 \
|
||||
--font="{{@@ font.mono @@}}:size={{@@ font.size.medium * 1.6 @@}}" \
|
||||
--icon-theme="{{@@ icon_theme @@}}" \
|
||||
--border-radius=0 \
|
||||
--border-width=2 \
|
||||
--selection-color="{{@@ accent_color.replace('#','') @@}}ff" \
|
||||
--selection-text-color="{{@@ accent_fg.replace('#','') @@}}ff" \
|
||||
--background="{{@@ color.bg .replace('#','') @@}}ff" \
|
||||
--text-color="{{@@ color.txt .replace('#','') @@}}ff" \
|
||||
--match-color="{{@@ accent_color.replace('#','') @@}}ff" \
|
||||
--border-color="{{@@ accent_color.replace('#','') @@}}ff" \
|
||||
"$@"
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/fish
|
||||
#!/usr/bin/env fish
|
||||
|
||||
if test (count $argv) -ne 0
|
||||
for i in $argv
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#!/bin/sh
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# {%@@ if launcher == "wofi" @@%} #
|
||||
# {%@@ if launcher == "fuzzel" @@%} #
|
||||
which fuzzel &> /dev/null &&
|
||||
exec fuzzel
|
||||
# {%@@ elif launcher == "wofi" @@%} #
|
||||
which wofi &> /dev/null &&
|
||||
exec wofi \
|
||||
--show drun \
|
||||
|
@ -8,7 +11,7 @@ which wofi &> /dev/null &&
|
|||
--no-actions \
|
||||
--prompt 'Iniciar: ' \
|
||||
|
||||
# {%@@ else @@%} #
|
||||
# {%@@ elif launcher == "bmenu" @@%} #
|
||||
which bmenu &> /dev/null &&
|
||||
exec bmenu run
|
||||
# {%@@ endif @@%} #
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/fish
|
||||
#!/usr/bin/env fish
|
||||
|
||||
set fish_trace 1
|
||||
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
pidof mpd > /dev/null ||
|
||||
exit 1
|
||||
|
||||
mpc status | grep '^\[playing\]' > /dev/null &&
|
||||
mpc current -f ' %title% - %artist% ' |
|
||||
sed 's/&/and/g' ||
|
||||
printf ' '
|
||||
|
||||
true
|
|
@ -1,21 +1,34 @@
|
|||
#!/bin/sh
|
||||
#!/usr/bin/env fish
|
||||
|
||||
opts="Fone\nSpeaker\nHDMI"
|
||||
out=$(printf $opts | wdmenu -p "Output: ")
|
||||
vol=$(pamixer --get-volume)
|
||||
set opts "Fone\nSpeaker\nHDMI\nPhone"
|
||||
set out (printf $opts | wdmenu -p "Output: ")
|
||||
set vol (pamixer --get-volume)
|
||||
|
||||
case "$out" in
|
||||
Fone)
|
||||
switch "$out"
|
||||
case Fone
|
||||
pactl set-card-profile 0 output:analog-stereo+input:analog-stereo
|
||||
pactl set-default-sink (pactl list sinks short | grep alsa | head -n1 | cut -f2)
|
||||
pactl set-sink-port @DEFAULT_SINK@ analog-output-headphones
|
||||
;;
|
||||
Speaker)
|
||||
case Speaker
|
||||
pactl set-card-profile 0 output:analog-stereo+input:analog-stereo
|
||||
pactl set-default-sink (pactl list sinks short | grep alsa | head -n1 | cut -f2:)
|
||||
pactl set-sink-port @DEFAULT_SINK@ analog-output-speaker
|
||||
;;
|
||||
HDMI)
|
||||
pactl set-card-profile 0 output:hdmi-stereo+input:analog-stereo
|
||||
;;
|
||||
esac
|
||||
case HDMI
|
||||
pactl set-card-profile 0 (
|
||||
env LC_ALL=C pactl list cards |
|
||||
string replace -raf '^\s*(output:hdmi-stereo.*?input.*?): .*' '$1' |
|
||||
head -n1 )
|
||||
pactl set-default-sink (pactl list sinks short | grep hdmi | head -n1 | cut -f2)
|
||||
case Phone
|
||||
pactl unload-module module-null-sink
|
||||
pactl unload-module module-rtp-send
|
||||
|
||||
pactl load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=48000
|
||||
pactl load-module module-rtp-send source=rtp.monitor destination=192.168.0.169 port=4010 mtu=320
|
||||
|
||||
pactl set-default-sink rtp
|
||||
end
|
||||
|
||||
pamixer --set-volume "$vol"
|
||||
|
||||
# vim: ft=fish
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
set -e
|
||||
|
||||
function clean() {
|
||||
clean() {
|
||||
if test $? -ne 0; then
|
||||
notify-send "Could not sync ${GAME_NAME}"
|
||||
fi
|
||||
|
@ -19,10 +19,6 @@ command -v xdg-user-dir &>/dev/null &&
|
|||
SAVES_DIR="$DOCUMETS/GameSaves"
|
||||
test -d "$SAVES_DIR" || exit 1
|
||||
|
||||
grep "^#include \.saves-ignore" "$DOCUMETS/.stignore" ||
|
||||
echo "#include .saves-ignore" >"$DOCUMETS/.stignore"
|
||||
rm "$DOCUMETS/.saves-ignore"
|
||||
|
||||
game_save() {
|
||||
GAME_NAME="$1"
|
||||
shift
|
||||
|
@ -31,7 +27,7 @@ game_save() {
|
|||
|
||||
BACKUP_DIR="$SAVES_DIR/$GAME_NAME"
|
||||
|
||||
mkdir -p "$BACKUP_DIR" "$(dirname '$INSTALL_DIR')"
|
||||
mkdir -p "$BACKUP_DIR" "$(dirname "$INSTALL_DIR")"
|
||||
|
||||
if test -d "$INSTALL_DIR" -a ! -L "$INSTALL_DIR"; then
|
||||
fd -H -d 1 . "$INSTALL_DIR" |
|
||||
|
@ -43,34 +39,22 @@ game_save() {
|
|||
if test ! -L "$INSTALL_DIR" -o ! -d "$INSTALL_DIR"; then
|
||||
ln -sT "$BACKUP_DIR" "$INSTALL_DIR"
|
||||
fi
|
||||
|
||||
if test -n "$1"; then
|
||||
printf "GameSaves/${GAME_NAME}/%s\n" $@ >>"$DOCUMETS/.saves-ignore"
|
||||
fi
|
||||
}
|
||||
|
||||
game_save mindustry \
|
||||
".local/share/Mindustry" 'previews'
|
||||
game_save minecraft \
|
||||
".minecraft/saves"
|
||||
game_save factorio \
|
||||
".factorio" '_autosave*.zip' 'doc-html' 'temp' 'data' 'bin'
|
||||
game_save cuphead \
|
||||
"Games/cuphead/drive_c/users/$USER/Application Data/Cuphead"
|
||||
game_save dusk \
|
||||
"Games/dusk/game/saves"
|
||||
game_save ULTRAKILL-wine \
|
||||
"Games/ultrakill/drive_c/Program Files/ULTRAKILL/Saves"
|
||||
game_save marioW \
|
||||
"Games/super-mario-world"
|
||||
game_save gta_san_andreas \
|
||||
"Games/grand-theft-auto-san-andreas/drive_c/users/$USER/Documents/GTA San Andreas User Files"
|
||||
|
||||
game_save hl1 \
|
||||
"Games/HalfLife2Source/game/hl1/save"
|
||||
game_save hl2 \
|
||||
"Games/HalfLife2Source/game/hl2/save"
|
||||
game_save hl2ep1 \
|
||||
"Games/HalfLife2Source/game/episodic/save"
|
||||
game_save hl2ep2 \
|
||||
"Games/HalfLife2Source/game/ep2/save"
|
||||
game_save mindustry ".local/share/Mindustry"
|
||||
game_save minecraft ".minecraft/saves"
|
||||
game_save factorio_saves ".factorio/saves"
|
||||
game_save factorio_saves "Games/factorio/saves"
|
||||
game_save cuphead "Games/cuphead/drive_c/users/$USER/Application Data/Cuphead"
|
||||
game_save dusk "Games/dusk/game/saves"
|
||||
game_save stardew_valley ".config/StardewValley"
|
||||
game_save dishonored "Games/dishonored/drive_c/users/lelgenio"
|
||||
game_save hollow_knight ".config/unity3d/Team Cherry/Hollow Knight"
|
||||
game_save carrion ".local/share/Phobia/Carrion"
|
||||
game_save ULTRAKILL-wine "Games/ultrakill/drive_c/Program Files/ULTRAKILL/Saves"
|
||||
game_save marioW "Games/super-mario-world"
|
||||
game_save gta_san_andreas "Games/grand-theft-auto-san-andreas/drive_c/users/$USER/Documents/GTA San Andreas User Files"
|
||||
game_save hl1 "Games/HalfLife2Source/game/hl1/save"
|
||||
game_save hl2 "Games/HalfLife2Source/game/hl2/save"
|
||||
game_save hl2ep1 "Games/HalfLife2Source/game/episodic/save"
|
||||
game_save hl2ep2 "Games/HalfLife2Source/game/ep2/save"
|
||||
|
|
|
@ -1,35 +1,37 @@
|
|||
#!/bin/sh
|
||||
|
||||
if which xdg-user-dir &>/dev/null; then
|
||||
DESTFOLDER=$(xdg-user-dir PICTURES)
|
||||
export XCURSOR_SIZE=40
|
||||
export XCURSOR_THEME='Breeze_Snow'
|
||||
|
||||
if which xdg-user-dir >/dev/null 2>&1; then
|
||||
DESTFOLDER="$(xdg-user-dir PICTURES)"
|
||||
else
|
||||
for i in Images Imagens Pictures Fotos ""; do
|
||||
DESTFOLDER=$HOME/$i
|
||||
DESTFOLDER="$HOME/$i"
|
||||
test -d "$DESTFOLDER" &&
|
||||
break
|
||||
done
|
||||
fi
|
||||
|
||||
DESTFOLDER="$DESTFOLDER/Screenshots"
|
||||
mkdir -p "$DESTFOLDER"
|
||||
DESTFILE="$DESTFOLDER/$(date +'%Y-%m-%d-%H%M%S_screenshot.png')"
|
||||
|
||||
mkdir -p $DESTFOLDER
|
||||
|
||||
DESTFILE=$DESTFOLDER/$(date +'%Y-%m-%d-%H%M%S_screenshot.png')
|
||||
case $1 in
|
||||
def)
|
||||
# Screenshot to file
|
||||
grim $DESTFILE
|
||||
echo $DESTFILE
|
||||
grim "$DESTFILE"
|
||||
echo "$DESTFILE"
|
||||
;;
|
||||
|
||||
area)
|
||||
# Screen area to file
|
||||
grim -g "$(slurp -d)" $DESTFILE
|
||||
echo $DESTFILE
|
||||
grim -g "$(slurp -d -b 30303088)" "$DESTFILE"
|
||||
echo "$DESTFILE"
|
||||
;;
|
||||
area-clip)
|
||||
# Screen area to clipboard
|
||||
grim -g "$(slurp -d)" - | wl-copy
|
||||
grim -g "$(slurp -d -b 30303088)" - | wl-copy
|
||||
;;
|
||||
|
||||
clip)
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue