Compare commits

...

50 Commits

Author SHA1 Message Date
cb33d1be20 More espanso completions 2024-04-25 18:40:29 +02:00
7615465c60 Ranger trashing fix 2024-04-25 18:34:35 +02:00
d682f99d12 Sxhkd Update 2024-04-25 18:33:03 +02:00
e617b481af Update Gitignore to include ulauncher stuff 2024-04-25 18:08:41 +02:00
c1928ff080 Remove leftwm dots 2024-04-25 17:59:59 +02:00
34f0b74f6f hyprctl completions 2024-04-22 15:30:50 +02:00
8412e10239 Small changes to waybar, nvim conf update
TODO: rewrite nvim configs to lua
2024-04-22 15:29:14 +02:00
2e9e6dc76f Minor editorconfig changes + new gpg key 2024-04-22 15:27:31 +02:00
4818228ebd Hyprland dots update 2024-04-22 15:24:39 +02:00
5b1f7d213c Kittyfication of jgmenu, also shutdowns 2024-02-17 22:08:00 +01:00
3664af2f1e Switchback to jgmenu 2024-02-17 22:07:08 +01:00
25398c0d47 Dunst shenanigans 2024-02-06 00:29:43 +01:00
8374ef55d4 Fix a forkbomb ;-; 2024-02-05 22:25:59 +01:00
8d341f276e DAP integration for nvim 2024-02-05 18:44:03 +01:00
6cacca348a Autostarting apps, hyprland binding changes 2024-02-05 18:43:11 +01:00
eb47841e97 Ranger trash fix, also kitty previews 2023-12-20 09:04:57 +01:00
82cb616675 Hyprdots ^^ 2023-12-20 09:01:47 +01:00
a798e382b6 Nvim improv 2023-12-20 08:59:52 +01:00
4a6fc56b1b Hacky workaround for hyprland screenlocking 2023-12-20 08:57:27 +01:00
8e952f5cf6 Modify the mirrorup command to include more mirrors, linting of zsh 2023-12-20 08:56:48 +01:00
52bd08fba2 Add kitty config 2023-12-20 08:55:44 +01:00
8f0c663217 p10k updates 2023-11-24 11:53:39 +01:00
268940d75a Nuke redundant keybinds, add logic for kitty and termux 2023-11-24 11:46:03 +01:00
9b438f1c3d Nuke activitywatch 2023-11-24 11:43:03 +01:00
30eafce614 Remove conflicting file 2023-11-24 11:41:29 +01:00
ccf7560a5f Changed nord to catppuccin, fixed urxvt font 2023-11-24 11:40:43 +01:00
c7df2d7e71 Nerd Fonts updated, changed config accordingly 2023-11-24 11:39:35 +01:00
28a9c36323 Hyprland config + touchscreen mode for my new laptop 2023-11-24 11:37:12 +01:00
d235d500f7 Added hyprland configs 2023-11-18 18:49:59 +01:00
f8b24e9734 Switch to eza - exa is no longer maintained 2023-09-18 23:45:44 +02:00
bb7ec3345a Switch to dash 2023-09-18 18:20:08 +02:00
cfa77fcdb4 Picom improvements 2023-09-18 18:17:22 +02:00
fc0d1dca35 Merge remote-tracking branch 'refs/remotes/origin/master' 2023-08-22 21:22:13 +02:00
1a4f34111c Colors 2023-08-22 21:21:48 +02:00
9369521a78 Rofi changes 2023-08-22 21:20:13 +02:00
9d2f494497 Nvim plugs 2023-08-22 21:19:41 +02:00
419576f2a6 Added stalonetrayrc 2023-08-22 21:16:40 +02:00
6c004643c2 Merge remote-tracking branch 'refs/remotes/origin/master' 2023-08-22 20:14:47 +02:00
a15aead8bf Zsh annex and alias 2023-08-22 20:14:32 +02:00
788215bb0f More shaders 2023-08-22 20:13:59 +02:00
f3d000b8b2 Switch to dash 2023-08-22 20:05:58 +02:00
a5bad7e690 Stalonetray heebiejeebies 2023-08-20 17:06:46 +02:00
56a1a8f87c Added picom shader, fixing stalonetray transparency 2023-08-20 16:11:13 +02:00
45fd9dfd51 Modified zsh config 2023-05-26 10:40:14 +02:00
ad35204f88 Update espanso configs 2023-02-25 18:53:23 +01:00
cfab83bde5 Added mason.nvim 2023-02-11 20:45:52 +01:00
629e23f19f New alias, new fzf implementation, removed vi mode 2023-01-22 15:52:17 +01:00
21aefc0e13 Added a weird nvim plugin 2023-01-22 15:51:21 +01:00
28c104ef55 Further advancements with nvim 2023-01-22 15:49:37 +01:00
5851bcacb9 Neovim upgrades 2023-01-18 00:41:29 +01:00
59 changed files with 7239 additions and 848 deletions

15
.gitignore vendored
View File

@@ -1,15 +1,2 @@
ulauncher/.config/ulauncher/ext_preferences/com.github.brpaz.ulauncher-brotab.db
ulauncher/.config/ulauncher/ext_preferences/com.github.aksdb.ulauncher-gitmoji.db
ulauncher/.config/ulauncher/ext_preferences/com.github.brpaz.ulauncher-dendron.db
ulauncher/.config/ulauncher/ext_preferences/com.github.brpaz.ulauncher-statuspages.db
ulauncher/.config/ulauncher/ext_preferences/com.github.brpaz.ulauncher-trello.db
ulauncher/.config/ulauncher/ext_preferences/com.github.brpaz.ulauncher-timestamp.db
ulauncher/.config/ulauncher/ext_preferences/com.github.friday.ulauncher-hash2.db
ulauncher/.config/ulauncher/ext_preferences/com.github.kazumasan.ulauncher-sessions.db
ulauncher/.config/ulauncher/ext_preferences/com.github.mikebarkmin.ulauncher-duckduckgo.db
ulauncher/.config/ulauncher/ext_preferences/com.github.ncroxas.coingecko-query.db
ulauncher/.config/ulauncher/ext_preferences/com.github.msaistaken.ulauncher-translator.db
ulauncher/.config/ulauncher/ext_preferences/com.github.subutux.ulauncher-variety.db
ulauncher/.config/ulauncher/ext_preferences/com.github.noam09.ulauncher-remmina.db
ulauncher/.config/ulauncher/ext_preferences/com.github.wsdfhjxc.ulauncher-qr-code.db
ulauncher/.config/ulauncher/ext_preferences/**
jgmenu/.config/jgmenu/backup/**

View File

@@ -26,7 +26,7 @@ font:
# - (Linux/BSD) monospace
# - (Windows) Consolas
family: Noto Color Emoji
family: SauceCodePro Nerd Font Mono
family: SauceCodePro NFM
# The `style` can be specified to pick a specific face.
#style: Regular
@@ -108,9 +108,6 @@ bell:
# Visual bell animation color.
color: '#FF0000' #'#4C566A'
command:
program: aplay
args: ["/home/vectorkappa/Music/beeps/wav/erro.wav"]
hints:
# URL launcher
#

View File

@@ -1,4 +1,4 @@
#!/bin/zsh
#!/bin/dash
if [ "$(pgrep -cx autogap)" -gt 1 ] ; then
killall autogap && exit 0

View File

@@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/dash
i=1
case $1 in
dsktp) # Add or remove a desktop

View File

@@ -1,4 +1,4 @@
#!/bin/zsh
#!/bin/dash
if [ "$(pgrep -cx euclid_balancer)" -gt 1 ] ; then
killall euclid_balancer && exit 0

2
bin/hyprlock Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/dash
swaylock --screenshots --clock --indicator --indicator-radius 100 --indicator-thickness 7 --effect-blur 7x5 --effect-vignette 0.5:0.5 --ring-color bb00cc --key-hl-color 880033 --line-color 00000000 --inside-color 00000088 --separator-color 00000000 --grace 2 --fade-in 0.2 --submit-on-touch

View File

@@ -1,3 +1,3 @@
#! /bin/bash
#!/bin/dash
# Run program unless it's already running
pgrep $@ > /dev/null || ($@ &)

View File

@@ -1,3 +1,3 @@
#!/bin/zsh
#!/bin/dash
pgrep -axf $1 >/dev/null && pkill -xf $1 || eval $1 &
exit 0

12
bin/touch-mode Executable file
View File

@@ -0,0 +1,12 @@
#!/bin/zsh
if [ -e /tmp/.touchmode.lock ]; then
# disable touchmode
hyprctl keyword monitor "eDP-1,1920x1080@60,0x0,1"
pkill nwg-dock-hyprl
rm /tmp/.touchmode.lock
else
# enable touchmode
hyprctl keyword monitor "eDP-1,1920x1080@60,0x0,1.5"
nwg-dock-hyprland & disown;
touch /tmp/.touchmode.lock
fi

View File

@@ -1,4 +1,4 @@
#!/bin/bash
#!/bin/dash
file="/tmp/.minimized"
touch $file
# By https://github.com/tatou-tatou

View File

@@ -4,7 +4,7 @@ export GTK2_RC_FILES="$HOME/.gtkrc-2.0" &
xrdb merge .Xresources &
## Wallpaper fallback
sh ~/.fehbg &
dash ~/.fehbg &
## Wallpaper changer
variety &
@@ -59,7 +59,7 @@ jgmenu --at-pointer --hide-on-startup &
#(tint2; sleep 10; xdo raise -n tint2) &
## launch tray
stalonetray -v -t --geometry=1x48+0+35 &
stalonetray -v --geometry=1x48+0+35 &
## Screenshot daemon
flameshot &

View File

@@ -1,4 +1,4 @@
#! /bin/sh
#!/bin/dash
gap=7
PANEL_HEIGHT=27
DOCK_WIDTH=24
@@ -115,8 +115,8 @@ autogap &
#Keybindings daemon
sxhkd &
wmname LG3D;
export _JAVA_AWT_WM_NONREPARENTING=1;
#wmname LG3D;
#export _JAVA_AWT_WM_NONREPARENTING=1;
#Source autostartfile. Uncomment this if you use bspwm-git
. $HOME/.config/bspwm/autostart > /tmp/bspwm-autostart.log 2>&1

View File

@@ -1,2 +0,0 @@
[Desktop]
Session=bspwm

View File

@@ -1,50 +1,40 @@
! Copyright (c) 2016-present Arctic Ice Studio <development@arcticicestudio.com>
! Copyright (c) 2016-present Sven Greb <code@svengreb.de>
URxvt.font: xft:SauceCodePro NFM:size=10:antialias=true:minspace=true
URxvt.boldFont: xft:SauceCodePro NFM:bold:size=10:antialias=true:minspace=true
! Project: Nord XResources
! Version: 0.1.0
! Repository: https://github.com/arcticicestudio/nord-xresources
! License: MIT
#define nord0 #2E3440
#define nord1 #3B4252
#define nord2 #434C5E
#define nord3 #4C566A
#define nord4 #D8DEE9
#define nord5 #E5E9F0
#define nord6 #ECEFF4
#define nord7 #8FBCBB
#define nord8 #88C0D0
#define nord9 #81A1C1
#define nord10 #5E81AC
#define nord11 #BF616A
#define nord12 #D08770
#define nord13 #EBCB8B
#define nord14 #A3BE8C
#define nord15 #B48EAD
URxvt.font: xft:SauceCodePro Nerd Font:size=10:antialias=true:minspace=true
URxvt.boldFont: xft:SauceCodePro Nerd Font:bold:size=10:antialias=true:minspace=true
*.foreground: nord6
*.background: nord0
*.cursorColor: nord4
*.cursorColor: #939AB7
*fading: 35
*fadeColor: nord3
*fadeColor: #6E738D
*background: #24273A
*foreground: #CAD3F5
*.color0: nord1
*.color1: nord11
*.color2: nord14
*.color3: nord13
*.color4: nord9
*.color5: nord15
*.color6: nord8
*.color7: nord5
*.color8: nord3
*.color9: nord11
*.color10: nord14
*.color11: nord13
*.color12: nord9
*.color13: nord15
*.color14: nord7
*.color15: nord6
! black
*color0: #494D64
*color8: #5B6078
! red
*color1: #ED8796
*color9: #ED8796
! green
*color2: #A6DA95
*color10: #A6DA95
! yellow
*color3: #EED49F
*color11: #EED49F
! blue
*color4: #8AADF4
*color12: #8AADF4
! magenta
*color5: #F5BDE6
*color13: #F5BDE6
! cyan
*color6: #8BD5CA
*color14: #8BD5CA
! white
*color7: #B8C0E0
*color15: #A5ADCB

View File

@@ -6,3 +6,26 @@ indent_style = tab
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
# Matches multiple files with brace expansion notation
# Set default charset
[*.{js,py}]
charset = utf-8
[*.{c,h}pp]
indent_style = space
indent_size = 2
# 4 space indentation
[*.py]
indent_style = space
indent_size = 4
# Tab indentation (no size specified)
[Makefile]
indent_style = tab
# Matches the exact files either package.json or .travis.yml
[{package.json,.travis.yml}]
indent_style = space
indent_size = 2

View File

@@ -250,7 +250,7 @@
[user]
name = VectorKappa
email = piotrpatalong@gmail.com
signingkey = 0917E6568B3A9A02
signingkey = 32DCE8467E7FBD4F
[mergetool]
keepBackup = true
[init]

View File

@@ -29,8 +29,12 @@
# the top and down respectively.
# The width can be negative. In this case the actual width is the
# screen width minus the width defined in within the geometry option.
geometry = "400x10-600+35"
#
#geometry = "400x10-600+35"
width = 400
height = 600
origin = top-right
offset = 10x35
# Turn on the progess bar
progress_bar = true
@@ -60,11 +64,6 @@
# present (e.g. xcompmgr, compiz, etc.).
transparency = 30
# The height of the entire notification. If the height is smaller
# than the font height and padding combined, it will be raised
# to the font height and padding.
notification_height = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
@@ -81,7 +80,7 @@
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 0
frame_width = 1
# Defines color of the frame around the notification window.
#frame_color = "#aaaaaa00"
@@ -96,7 +95,7 @@
frame_color = "#8AADF4"
frame_color = "#ED8796"
separator_color= frame
@@ -112,7 +111,7 @@
### Text ###
font = Monospace 8
font = SauceCodePro Nerd Font Propo 8
# The spacing between lines. If the height is smaller than the
# font height, it will get raised to the font height.
@@ -189,19 +188,22 @@
### Icons ###
enable_recursive_icon_lookup = true
icon_theme = Papirus-Dark
# Align icons left/right/off
icon_position = left
# Scale small icons up to this size, set to 0 to disable. Helpful
# for e.g. small files or high-dpi screens. In case of conflict,
# max_icon_size takes precedence over this.
min_icon_size = 0
min_icon_size = 16
# Scale larger icons down to this size, set to 0 to disable
max_icon_size = 32
# Paths to default icons.
icon_path = /usr/share/icons/Adwaita/16x16/status/:/usr/share/icons/Adwaita/16x16/devices/
icon_path = /usr/share/icons/Papirus-Dark/16x16/actions/:/usr/share/icons/Papirus-Dark/16x16/devices/
### History ###
@@ -229,20 +231,6 @@
# Define the class of the windows spawned by dunst
class = Dunst
# Print a notification on startup.
# This is mainly for error detection, since dbus (re-)starts dunst
# automatically after a crash.
startup_notification = true
# Manage dunst's desire for talking
# Can be one of the following values:
# crit: Critical features. Dunst aborts
# warn: Only non-fatal warnings
# mesg: Important Messages
# info: all unimportant stuff
# debug: all less than unimportant stuff
verbosity = mesg
# Define the corner radius of the notification window
# in pixel size. If the radius is 0, you have no rounded
# corners.
@@ -332,16 +320,16 @@
[urgency_low]
background = "#24273A"
foreground = "#CAD3F5"
foreground = "#6E738D"
[urgency_normal]
background = "#24273A"
foreground = "#CAD3F5"
[urgency_critical]
background = "#24273A"
foreground = "#CAD3F5"
frame_color = "#F5A97F"
background = "#ED8796"
foreground = "#24273A"
frame_color = "#EED49F"
#[urgency_low]
## IMPORTANT: colors have to be defined in quotation marks.

View File

@@ -64,3 +64,8 @@ matches:
- trigger: ":fitnessgram"
replace: "The FitnessGram™ Pacer Test is a multistage aerobic capacity test that progressively gets more difficult as it continues. The 20 meter pacer test will begin in 30 seconds. Line up at the start. The running speed starts slowly, but gets faster each minute after you hear this signal. [beep] A single lap should be completed each time you hear this sound. [ding] Remember to run in a straight line, and run as long as possible. The second time you fail to complete a lap before the sound, your test is over. The test will begin on the word start. On your mark, get ready, start."
# And much more! For more information, visit the docs: https://espanso.org/docs/
- trigger: ":foreshadowing"
replace: "Foreshadowing is a narrative device in which a storyteller gives an advance hint of what is to come later in the story. Foreshadowing often appears at the beginning of a story, and it helps develop or subvert the audience's expectations about upcoming events."
- trigger: ":honestly"
replace: "Do you honestly think you're fucking funny, fucking with my friends? Seriously, you're a fucking ugly little cunt mate, and if I ever see you i'm gunna slit your fucking face wide open yeh? You're a fucking angry little fucking spastic. OK, right, lets, first off, uhh youre seventeen so youre not even old enough to play the game, youre from Scotland not Nigeria and you annoy people and put them on YouTube cos youre a cunt, which I totally agree with. So why dont you crawl back up your mums fanny and die? Right, Ill tell you what, you fat little cunt, youre borin you dont sound Nigerian at all so go fuck yourself… GO AND CRAWL IN A DIRTY DANK LITTLE HOLE WHERE YOU FUCKING COME FROM, YOU DIRTY DRAGON EATIN LITTLE FUCKING SPASTIC. Right, OK, the dragon comment was probably a little bit fucking over-the-top, but at the end of the day youre fucking borin. Every single person who watches your videos are fucking stoopid. Theyre fucking ignorant little cunts. And youre just a fucking retard."

View File

@@ -1,6 +1,6 @@
MIT License
Copyright (c) 2021 Ihor Kopach https://github.com/kopach
Copyright (c) 2022 Ihor Kopach https://github.com/kopach
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@@ -12,90 +12,52 @@
</h1>
## Installation
Make sure you have already installed [Espanso](https://espanso.org/install) first.
### Install with `espanso install`
> https://hub.espanso.org/foreign-thanks
```sh
espanso install foreign-thanks
```
That's all. You can start using the package.
## Triggers
| Keyword | Replaced |
| ------------------- | ----------------------- |
| `:arabicthx` | `شكرا` |
| `:arabicthanks` | `شكرا` |
| ------------------- | ----------------------- |
| `:armenianthx` | `Շնորհակալություն` |
| `:armenianthanks` | `Շնորհակալություն` |
| ------------------- | ----------------------- |
| `:basquethx` | `Eskerrik asko` |
| `:basquethanks` | `Eskerrik asko` |
| ------------------- | ----------------------- |
| `:canadianthx` | `thanks, eh.` |
| `:canadianthanks` | `thanks, eh.` |
| ------------------- | ----------------------- |
| `:chinesethx` | `谢谢` |
| `:chinesethanks` | `谢谢` |
| ------------------- | ----------------------- |
| `:czechthx` | `Díky` |
| `:czechthanks` | `Díky` |
| ------------------- | ----------------------- |
| `:dutchthx` | `Dank je wel` |
| `:dutchthanks` | `Dank je wel` |
| ------------------- | ----------------------- |
| `:filipinothx` | `Salamat` |
| `:filipinothanks` | `Salamat` |
| ------------------- | ----------------------- |
| `:finnishthx` | `Kiitos` |
| `:finnishthanks` | `Kiitos` |
| ------------------- | ----------------------- |
| `:frenchthx` | `Merci` |
| `:frenchthanks` | `Merci` |
| ------------------- | ----------------------- |
| `:germanthx` | `Danke` |
| `:germanthanks` | `Danke` |
| ------------------- | ----------------------- |
| `:icelandicthx` | `Takk` |
| `:icelandicthanks` | `Takk` |
| ------------------- | ----------------------- |
| `:indianthx` | `धन्यवाद` |
| `:indianthanks` | `धन्यवाद` |
| ------------------- | ----------------------- |
| `:indonesianthx` | `Terima kasih` |
| `:indonesianthanks` | `Terima kasih` |
| ------------------- | ----------------------- |
| `:italianthx` | `Grazie` |
| `:italianthanks` | `Grazie` |
| ------------------- | ----------------------- |
| `:japanesethx` | `ありがとうございます` |
| `:japanesethanks` | `ありがとうございます` |
| ------------------- | ----------------------- |
| `:klingonthx` | `QA TLHO"` |
| `:klingonthanks` | `QA TLHO"` |
| ------------------- | ----------------------- |
| `:koreanthx` | `감사합니다` |
| `:koreanthanks` | `감사합니다` |
| ------------------- | ----------------------- |
| `:persianthx` | `متشکرم` |
| `:persianthanks` | `متشکرم` |
| ------------------- | ----------------------- |
| `:polishthx` | `Dzięki` |
| `:polishthanks` | `Dzięki` |
| ------------------- | ----------------------- |
| `:romanianthx` | `Multumesc` |
| `:romanianthanks` | `Multumesc` |
| ------------------- | ----------------------- |
| `:russianthx` | `Cпасибо` |
| `:russianthanks` | `Cпасибо` |
| ------------------- | ----------------------- |
| `:spanishthx` | `Gracias` |
| `:spanishthanks` | `Gracias` |
| ------------------- | ----------------------- |
| `:swedishthx` | `Tack` |
| `:swedishthanks` | `Tack` |
| ------------------- | ----------------------- |
| `:turkishthx` | `Sağol` |
| `:turkishthanks` | `Sağol` |
| ------------------- | ----------------------- |
| `:ukrainianthx` | `Дякую` |
| `:ukrainianthanks` | `Дякую` |
| ------------------- | ----------------------- |
| `:vietnamesethx` | `Cảm ơn` |
| `:vietnamesethanks` | `Cảm ơn` |
| Keywords | Replaced |
| -------- | -------- |
| `:arthx`, `:arabicthx`, `:arabicthanks` | شكرا |
| `:hythx`, `:armenianthx`, `:armenianthanks` | Շնորհակալություն |
| `:euthx`, `:basquethx`, `:basquethanks` | Eskerrik asko |
| `:bethx`, `:belarusianthx`, `:belarusianthanks` | Дзякуй |
| `:zhthx`, `:chinesethx`, `:chinesethanks` | 谢谢 |
| `:csthx`, `:czechthx`, `:czechthanks` | Díky |
| `:nlthx`, `:dutchthx`, `:dutchthanks` | Dank je wel |
| `:tlthx`, `:filipinothx`, `:filipinothanks` | Salamat |
| `:fithx`, `:finnishthx`, `:finnishthanks` | Kiitos |
| `:frthx`, `:frenchthx`, `:frenchthanks` | Merci |
| `:dethx`, `:germanthx`, `:germanthanks` | Danke |
| `:hithx`, `:hindithx`, `:hindithanks` | धन्यवाद |
| `:isthx`, `:icelandicthx`, `:icelandicthanks` | Takk |
| `:idthx`, `:indonesianthx`, `:indonesianthanks` | Terima kasih |
| `:itthx`, `:italianthx`, `:italianthanks` | Grazie |
| `:jathx`, `:japanesethx`, `:japanesethanks` | ありがとうございます |
| `:tlhthx`, `:klingonthx`, `:klingonthanks` | Qa tlho' |
| `:kothx`, `:koreanthx`, `:koreanthanks` | 감사합니다 |
| `:psthx`, `:pashtothx`, `:pashtothanks` | ډیره مننه |
| `:fathx`, `:persianthx`, `:persianthanks` | متشکرم |
| `:plthx`, `:polishthx`, `:polishthanks` | Dzięki |
| `:rothx`, `:romanianthx`, `:romanianthanks` | Multumesc |
| `:esthx`, `:spanishthx`, `:spanishthanks` | Gracias |
| `:svthx`, `:swedishthx`, `:swedishthanks` | Tack |
| `:trthx`, `:turkishthx`, `:turkishthanks` | Sağol |
| `:ukthx`, `:ukrainianthx`, `:ukrainianthanks` | Дякую |
| `:urthx`, `:urduthx`, `:urduthanks` | شکریہ |
| `:vithx`, `:vietnamesethx`, `:vietnamesethanks` | Cảm ơn |
## Contribute

View File

@@ -1,7 +1,11 @@
author: Ihor Kopach (https://kopach.dev)
description: Say Thanks in different languages
description: 🌐 Espanso package to easy say Thanks in different languages
homepage: https://github.com/kopach/espanso-package-foreign-thanks#readme
name: foreign-thanks
tags:
- greetings
- languages
- phrases
- communication
title: Foreign Thanks
version: 1.0.0
homepage: "https://github.com/kopach/espanso-package-foreign-thanks"
tags: ["greetings", "languages", "phrases"]
version: 1.1.0

View File

@@ -1,136 +1,141 @@
# Foreign Thanks
matches:
- trigger: ':arabicthx'
replace: 'شكرا'
- trigger: ':arabicthanks'
replace: 'شكرا'
- trigger: ':armenianthx'
replace: 'Շնորհակալություն'
- trigger: ':armenianthanks'
replace: 'Շնորհակալություն'
- trigger: ':basquethx'
replace: 'Eskerrik asko'
- trigger: ':basquethanks'
replace: 'Eskerrik asko'
- trigger: ':canadianthx'
replace: 'thanks, eh.'
- trigger: ':canadianthanks'
replace: 'thanks, eh.'
- trigger: ':chinesethx'
replace: '谢谢'
- trigger: ':chinesethanks'
replace: '谢谢'
- trigger: ':czechthx'
replace: 'Díky'
- trigger: ':czechthanks'
replace: 'Díky'
- trigger: ':dutchthx'
replace: 'Dank je wel'
- trigger: ':dutchthanks'
replace: 'Dank je wel'
- trigger: ':filipinothx'
replace: 'Salamat'
- trigger: ':filipinothanks'
replace: 'Salamat'
- trigger: ':finnishthx'
replace: 'Kiitos'
- trigger: ':finnishthanks'
replace: 'Kiitos'
- trigger: ':frenchthx'
replace: 'Merci'
- trigger: ':frenchthanks'
replace: 'Merci'
- trigger: ':germanthx'
replace: 'Danke'
- trigger: ':germanthanks'
replace: 'Danke'
- trigger: ':icelandicthx'
replace: 'Takk'
- trigger: ':icelandicthanks'
replace: 'Takk'
- trigger: ':indianthx'
replace: 'धन्यवाद'
- trigger: ':indianthanks'
replace: 'धन्यवाद'
- trigger: ':indonesianthx'
replace: 'Terima kasih'
- trigger: ':indonesianthanks'
replace: 'Terima kasih'
- trigger: ':italianthx'
replace: 'Grazie'
- trigger: ':italianthanks'
replace: 'Grazie'
- trigger: ':japanesethx'
replace: 'ありがとうございます'
- trigger: ':japanesethanks'
replace: 'ありがとうございます'
- trigger: ':klingonthx'
replace: "QA TLHO'"
- trigger: ':klingonthanks'
replace: "QA TLHO'"
- trigger: ':koreanthx'
replace: '감사합니다'
- trigger: ':koreanthanks'
replace: '감사합니다'
- trigger: ':persianthx'
replace: 'متشکرم'
- trigger: ':persianthanks'
replace: 'متشکرم'
- trigger: ':polishthx'
replace: 'Dzięki'
- trigger: ':polishthanks'
replace: 'Dzięki'
- trigger: ':romanianthx'
replace: 'Multumesc'
- trigger: ':romanianthanks'
replace: 'Multumesc'
- trigger: ':russianthx'
replace: 'Cпасибо'
- trigger: ':russianthanks'
replace: 'Cпасибо'
- trigger: ':spanishthx'
replace: 'Gracias'
- trigger: ':spanishthanks'
replace: 'Gracias'
- trigger: ':swedishthx'
replace: 'Tack'
- trigger: ':swedishthanks'
replace: 'Tack'
- trigger: ':turkishthx'
replace: 'Sağol'
- trigger: ':turkishthanks'
replace: 'Sağol'
- trigger: ':ukrainianthx'
replace: 'Дякую'
- trigger: ':ukrainianthanks'
replace: 'Дякую'
- trigger: ':vietnamesethx'
replace: 'Cảm ơn'
- trigger: ':vietnamesethanks'
replace: 'Cảm ơn'
- replace: شكرا
triggers:
- ':arthx'
- ':arabicthx'
- ':arabicthanks'
- replace: Շնորհակալություն
triggers:
- ':hythx'
- ':armenianthx'
- ':armenianthanks'
- replace: Eskerrik asko
triggers:
- ':euthx'
- ':basquethx'
- ':basquethanks'
- replace: Дзякуй
triggers:
- ':bethx'
- ':belarusianthx'
- ':belarusianthanks'
- replace: 谢谢
triggers:
- ':zhthx'
- ':chinesethx'
- ':chinesethanks'
- replace: Díky
triggers:
- ':csthx'
- ':czechthx'
- ':czechthanks'
- replace: Dank je wel
triggers:
- ':nlthx'
- ':dutchthx'
- ':dutchthanks'
- replace: Salamat
triggers:
- ':tlthx'
- ':filipinothx'
- ':filipinothanks'
- replace: Kiitos
triggers:
- ':fithx'
- ':finnishthx'
- ':finnishthanks'
- replace: Merci
triggers:
- ':frthx'
- ':frenchthx'
- ':frenchthanks'
- replace: Danke
triggers:
- ':dethx'
- ':germanthx'
- ':germanthanks'
- replace: धन्यवाद
triggers:
- ':hithx'
- ':hindithx'
- ':hindithanks'
- replace: Takk
triggers:
- ':isthx'
- ':icelandicthx'
- ':icelandicthanks'
- replace: Terima kasih
triggers:
- ':idthx'
- ':indonesianthx'
- ':indonesianthanks'
- replace: Grazie
triggers:
- ':itthx'
- ':italianthx'
- ':italianthanks'
- replace: ありがとうございます
triggers:
- ':jathx'
- ':japanesethx'
- ':japanesethanks'
- replace: Qa tlho'
triggers:
- ':tlhthx'
- ':klingonthx'
- ':klingonthanks'
- replace: 감사합니다
triggers:
- ':kothx'
- ':koreanthx'
- ':koreanthanks'
- replace: ډیره مننه
triggers:
- ':psthx'
- ':pashtothx'
- ':pashtothanks'
- replace: متشکرم
triggers:
- ':fathx'
- ':persianthx'
- ':persianthanks'
- replace: Dzięki
triggers:
- ':plthx'
- ':polishthx'
- ':polishthanks'
- replace: Multumesc
triggers:
- ':rothx'
- ':romanianthx'
- ':romanianthanks'
- replace: Gracias
triggers:
- ':esthx'
- ':spanishthx'
- ':spanishthanks'
- replace: Tack
triggers:
- ':svthx'
- ':swedishthx'
- ':swedishthanks'
- replace: Sağol
triggers:
- ':trthx'
- ':turkishthx'
- ':turkishthanks'
- replace: Дякую
triggers:
- ':ukthx'
- ':ukrainianthx'
- ':ukrainianthanks'
- replace: شکریہ
triggers:
- ':urthx'
- ':urduthx'
- ':urduthanks'
- replace: Cảm ơn
triggers:
- ':vithx'
- ':vietnamesethx'
- ':vietnamesethanks'

View File

@@ -2,6 +2,6 @@ author: omrilotan
description: Get a hilarious random commit message
name: wtc
title: What the Commit
version: 1.0.0
version: 1.0.1
homepage: "https://github.com/omrilotan/espanso-package-wtc"
tags: ["fun", "git", "shell"]

View File

@@ -5,4 +5,4 @@ matches:
- name: output
type: shell
params:
cmd: "curl -s whatthecommit.com/index.txt"
cmd: "curl -s https://whatthecommit.com/index.txt"

View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2020 Brady Joslin <brady@bradyjoslin.com>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -0,0 +1,29 @@
# espanso-package-wttr
An espanso package for getting the weather from [Igor Chubin's](https://github.com/chubin) console-oriented weather service [wttr.in](https://wttr.in).
For more information about espanso packages, read the [documentation](https://espanso.org/docs/).
## Usage
Available replacement examples:
| replacement | sample output | description |
| --------------------- | -------------------------------- | ------------------------------------- |
| `:wttrin` | Spring, United States: ⛅️ +80°F | Current location's current weather |
| `:moonphase` | 🌕 | Current phase of the moon |
| `:wttrat/{location}/` | dallas: ☀️ +88°F | Current weather in specified location. Separate words with `+` instead of spaces. |
## Installation
`espanso install wttr`
## Dependencies
Requires `curl`.
## Package Details
Repository: [https://github.com/bradyjoslin/espanso-package-wttr/](https://github.com/bradyjoslin/espanso-package-wttr/)
This package has been edited by the Espanso Team to port it to the new v2 format.

View File

@@ -0,0 +1,7 @@
author: Brady Joslin
description: A package to get the weather from wttr.in.
name: wttr
title: wttr Package
version: 0.1.0
homepage: "https://github.com/bradyjoslin/espanso-package-wttr"
tags: ["shell", "misc", "weather"]

View File

@@ -0,0 +1,2 @@
---
hub

View File

@@ -0,0 +1,26 @@
# wttr package
matches:
- trigger: ":wttrin"
replace: "{{output}}"
vars:
- name: output
type: shell
params:
cmd: 'curl https://wttr.in?format="%l:+%c+%t\n"'
- trigger: ":moonphase"
replace: "{{output}}"
vars:
- name: output
type: shell
params:
cmd: 'curl https://wttr.in?format="%m\n"'
- regex: ":wttrat/(?P<location>.*)/"
replace: "{{output}}"
vars:
- name: output
type: shell
params:
cmd: 'curl https://wttr.in/{{location}}?format="%l:+%c+%t\n"'

View File

@@ -0,0 +1,8 @@
#!/bin/dash
xhost + local: ;
swww init;
flameshot &
wayvnc &
dex -a &
dunst &
$HOME/.config/waybar/launcher.sh

View File

@@ -0,0 +1,231 @@
# This is an example Hyprland config file.
# Syntax is the same as in Hypr, but settings might differ.
#
# Refer to the wiki for more information.
monitor=DP-1,1920x1080@60,0x0,1
monitor=DP-3,1920x1080@60,1920x0,1
monitor=eDP-1,1920x1080@60,0x0,1
monitor=HDMI-A-1,1920x1080@60,1920x0,1
#workspace=DP-1,1
workspace=1, m:DP-1
workspace=2, m:DP-1
workspace=3, m:DP-1
workspace=4, m:DP-1
workspace=5, m:DP-1
workspace=6, m:DP-3
workspace=7, m:DP-3
workspace=8, m:DP-3
workspace=9, m:DP-3
workspace=10, m:DP-3
input {
kb_layout=pl
kb_variant=
kb_model=
kb_options=
kb_rules=
numlock_by_default=true
follow_mouse=1
touchpad {
natural_scroll=true
}
}
general {
#max_fps=60 # deprecated, unused
sensitivity=1
#main_mod=SUPER
no_cursor_warps=true
gaps_in=5
gaps_out=20
border_size=2
col.active_border=0x66ee1111
col.inactive_border=0x66333333
resize_on_border=true
#damage_tracking=full # leave it on full unless you hate your GPU and want to make it suffer
}
decoration {
rounding=10
blur {
enabled=1
size=3 # minimum 1
passes=3 # minimum 1, more passes = more resource intensive.
}
# Your blur "amount" is blur_size * blur_passes, but high blur_size (over around 5-ish) will produce artifacts.
# if you want heavy blur, you need to up the blur_passes.
# the more passes, the more you can up the blur_size without noticing artifacts.
}
dwindle {
pseudotile=0 # enable pseudotiling on dwindle
}
misc {
force_default_wallpaper=0
vrr=1
}
# example window rules
# for windows named/classed as abc and xyz
#windowrule=move 69 420,abc
#windowrule=size 420 69,abc
#windowrule=tile,xyz
#windowrule=float,abc
#windowrule=pseudo,abc
#windowrule=monitor 0,xyz
# example binds
bind=SUPERSHIFT,Z,exec,alacritty
bind=SUPER,Z,exec,kitty
bind=SUPER,X,killactive,
bind=SUPER_SHIFT,X,exec,hyprctl activewindow |grep pid |tr -d 'pid:'|xargs kill
bind=SUPER_SHIFT,Q,exit,
bind=SUPER,E,exec,nemo
bind=SUPERSHIFT,E,exec,kitty ranger
bind=SUPER,F,fullscreen,1
bind=SUPERSHIFT,F,fullscreen,0
bind=SUPERSHIFT,L,exec,hyprlock
bind=SUPER,T,togglefloating,
bind=SUPER,R,exec,wofi --show drun -o DP-3
bind=SUPER,P,pseudo,
bind=SUPER,SPACE,exec,rofi -modi drun,run,window,calc -show drun
bind=SUPER,C,pin
bind=SUPER,left,movefocus,l
bind=SUPER,right,movefocus,r
bind=SUPER,up,movefocus,u
bind=SUPER,down,movefocus,d
bindm = SUPER, mouse:272, movewindow
bindm = SUPER, mouse:273, resizewindow
bind=SUPER,1,workspace,1
bind=SUPER,2,workspace,2
bind=SUPER,3,workspace,3
bind=SUPER,4,workspace,4
bind=SUPER,5,workspace,5
bind=SUPER,6,workspace,6
bind=SUPER,7,workspace,7
bind=SUPER,8,workspace,8
bind=SUPER,9,workspace,9
bind=SUPER,0,workspace,10
bind=SUPER_SHIFT,1,movetoworkspacesilent,1
bind=SUPER_SHIFT,2,movetoworkspacesilent,2
bind=SUPER_SHIFT,3,movetoworkspacesilent,3
bind=SUPER_SHIFT,4,movetoworkspacesilent,4
bind=SUPER_SHIFT,5,movetoworkspacesilent,5
bind=SUPER_SHIFT,6,movetoworkspacesilent,6
bind=SUPER_SHIFT,7,movetoworkspacesilent,7
bind=SUPER_SHIFT,8,movetoworkspacesilent,8
bind=SUPER_SHIFT,9,movetoworkspacesilent,9
bind=SUPER_SHIFT,0,movetoworkspacesilent,10
bind=SUPERSHIFT,S,exec,flameshot gui
# T14gen2 FN KEYS
bind=,XF86AudioMicMute,exec,amixer set Capture toggle
bind=,XF86AudioMute,exec,amixer set Master toggle
bind=,XF86AudioRaiseVolume,exec,amixer set Master playback 5%+
bind=,XF86AudioLowerVolume,exec,amixer set Master playback 5%-
bind=,XF86MonBrightnessUp,exec,xbacklight -inc 5
bind=,XF86MonBrightnessDown,exec,xbacklight -dec 5
bind=,XF86Launch2,exec,touch-mode
bind=CTRL,XF86Launch2,exec,hyprctl keyword monitor "eDP-1,1920x1080@60,0x0,1"
bind=SHIFT,XF86Launch2,exec,hyprctl keyword monitor "eDP-1,1920x1080@60,0x0,1.5"
bind=SHIFT,XF86MonBrightnessDown,exec,xbacklight -set 0.01
bind=SHIFT,XF86MonBrightnessUp,exec,xbacklight -set 100
exec-once=dash ~/.config/hypr/autostart.sh
exec-once=hyprctl setcursor Vimix-white-cursors 24
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$
windowrulev2 = nofocus,class:^(xwaylandvideobridge)$
windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$
windowrulev2 = pin,class:^(scrcpy)$
windowrulev2 = move onscreen 100%-30,class:^(scrcpy)$
windowrulev2 = stayfocused,title:^rofi
windowrulev2 = float,class:^(flameshot)$
windowrulev2 = pin,class:^(flameshot)$
windowrulev2 = opacity 0.0 override 0.0 override,title:^(Espanso Sync Tool)$
windowrulev2 = float,title:^(Espanso Sync Tool)$
windowrulev2 = size 0.1 0.1,title:^(Espanso Sync Tool)$
windowrulev2 = move 100% 100%,title:^(Espanso Sync Tool)$
# Envars; to play along with wayland nicely
env = QT_QPA_PLATFORM,wayland;xcb
env = CLUTTER_BACKEND,wayland
env = GDK_BACKEND,wayland,x11
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
env = QT_QPA_PLATFORMTHEME,qt5ct
plugin {
hyprbars {
# example config
bar_height = 20
# example buttons (R -> L)
# hyprbars-button = color, size, on-click
bar_color = rgb(000000)
hyprbars-button = rgb(ff4040), 10, 󰖭, hyprctl dispatch killactive
hyprbars-button = rgb(eeee11), 10, , hyprctl dispatch fullscreen 1
hyprbars-button = rgb(11ee11), 10, ¥, hyprctl dispatch togglefloating
}
hyprfocus {
enabled = yes
focus_animation = shrink
bezier = bezIn, 0.5,0.0,1.0,0.5
bezier = bezOut, 0.0,0.5,0.5,1.0
flash {
flash_opacity = 0.7
in_bezier = bezIn
in_speed = 0.5
out_bezier = bezOut
out_speed = 3
}
shrink {
shrink_percentage = 0.98
in_bezier = bezIn
in_speed = 0.5
out_bezier = bezOut
out_speed = 3
}
}
hyprtrails {
color = rgba(ff0000ff)
}
hyprexpo {
columns = 3
gap_size = 5
bg_col = rgb(111111)
workspace_method = center current # [center/first] [workspace] e.g. first 1 or center m+1
enable_gesture = true # laptop touchpad, 4 fingers
gesture_distance = 300 # how far is the "max"
gesture_positive = true # positive = swipe down. Negative = swipe up.
}
}
exec-once = hyprpm reload -n

View File

@@ -3,5 +3,7 @@ Lock,loginctl lock-session,system-lock-screen
Exit,^checkout(exit),system-shutdown
^tag(exit)
Suspend,systemctl -i suspend,system-log-out
Hybrid Suspend,systemctl -i hybrid-sleep,system-suspend
Reboot,systemctl -i reboot,system-reboot
Hibernate,systemctl -i hibernate,system-hibernate
Poweroff,systemctl -i poweroff,system-shutdown
1 ^sep()
3 Exit,^checkout(exit),system-shutdown
4 ^tag(exit)
5 Suspend,systemctl -i suspend,system-log-out
6 Hybrid Suspend,systemctl -i hybrid-sleep,system-suspend
7 Reboot,systemctl -i reboot,system-reboot
8 Hibernate,systemctl -i hibernate,system-hibernate
9 Poweroff,systemctl -i poweroff,system-shutdown

View File

@@ -1,7 +1,7 @@
stay_alive = 1
tint2_look = 0
position_mode = fixed
terminal_exec = alacritty
terminal_exec = kitty
terminal_args = -e
menu_width = 300
menu_padding_top = 5
@@ -21,7 +21,7 @@ item_padding_x = 8
item_radius = 0
item_border = 0
sep_height = 5
font = SauceCodePro Nerd Font Mono 12px
font = SauceCodePro NFM 12px
icon_size = 26
icon_text_spacing = 10
icon_norm_alpha = 100
@@ -41,7 +41,7 @@ verbosity = 4
# csv_cmd = apps
# edge_snap_x = 30
# monitor = 0
# hover_delay = 100
hover_delay = 100
# hide_back_items = 1
# columns = 1
# tabs = 120

View File

@@ -0,0 +1,80 @@
# vim:ft=kitty
## name: Catppuccin-Macchiato
## author: Pocco81 (https://github.com/Pocco81)
## license: MIT
## upstream: https://github.com/catppuccin/kitty/blob/main/macchiato.conf
## blurb: Soothing pastel theme for the high-spirited!
# The basic colors
foreground #CAD3F5
background #24273A
selection_foreground #24273A
selection_background #F4DBD6
# Cursor colors
cursor #F4DBD6
cursor_text_color #24273A
# URL underline color when hovering with mouse
url_color #F4DBD6
# Kitty window border colors
active_border_color #B7BDF8
inactive_border_color #6E738D
bell_border_color #EED49F
# OS Window titlebar colors
wayland_titlebar_color system
macos_titlebar_color system
# Tab bar colors
active_tab_foreground #181926
active_tab_background #C6A0F6
inactive_tab_foreground #CAD3F5
inactive_tab_background #1E2030
tab_bar_background #181926
# Colors for marks (marked text in the terminal)
mark1_foreground #24273A
mark1_background #B7BDF8
mark2_foreground #24273A
mark2_background #C6A0F6
mark3_foreground #24273A
mark3_background #7DC4E4
# The 16 terminal colors
# black
color0 #494D64
color8 #5B6078
# red
color1 #ED8796
color9 #ED8796
# green
color2 #A6DA95
color10 #A6DA95
# yellow
color3 #EED49F
color11 #EED49F
# blue
color4 #8AADF4
color12 #8AADF4
# magenta
color5 #F5BDE6
color13 #F5BDE6
# cyan
color6 #8BD5CA
color14 #8BD5CA
# white
color7 #B8C0E0
color15 #A5ADCB

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,352 +0,0 @@
modkey = "Mod4"
mousekey = "Mod4"
workspaces = []
tags = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]
layouts = ["MainAndVertStack", "MainAndHorizontalStack", "MainAndDeck", "GridHorizontal", "EvenHorizontal", "EvenVertical", "Fibonacci", "CenterMain", "CenterMainBalanced", "Monocle", "RightWiderLeftStack", "LeftWiderRightStack"]
layout_mode = "Workspace"
disable_current_tag_swap = false
focus_behaviour = "Sloppy"
focus_new_windows = true
window_rules = [
# windows whose WM_CLASS is "Navigator" will be spawn on tag 2 (by position, 1-indexed)
{window_class = "tint2", spawn_floating = true},
{window_class = "ulauncher", spawn_floating = true, spawn_sticky = true},
]
####################################################################################################
##########################################################################################SCRATCHPAD
####################################################################################################
[[scratchpad]]
name = "Alacritty"
value = "WINIT_X11_SCALE_FACTOR=1 alacritty -o font.size=14"
x = 0.25
y = 0.0
height = 0.5
width = 0.5
[[keybind]]
command = "ToggleScratchPad"
value = "Alacritty"
modifier = ["modkey"]
key = "F12"
####################################################################################################
###########################################################################################LAUNCHERS
####################################################################################################
[[keybind]]
command = "Execute"
value = "dmenu_run"
modifier = ["modkey"]
key = "p"
[[keybind]]
command = "Execute"
value = "ulauncher-toggle"
modifier = ["Alt"]
key = "space"
[[keybind]]
command = "Execute"
value = "rofi -modi drun,run,window,calc,windowcd,combi,keys,filebrowser,emoji -show drun"
modifier = ["modkey"]
key = "r"
####################################################################################################
#####################################################################################SESSION CONTROL
####################################################################################################
[[keybind]]
command = "Execute"
value = "loginctl kill-session $XDG_SESSION_ID"
modifier = ["modkey", "Shift"]
key = "q"
[[keybind]]
command = "Execute"
value = "loginctl lock-session"
modifier = ["modkey", "Control"]
key = "l"
####################################################################################################
########################################################################################APPLICATIONS
####################################################################################################
[[keybind]]
command = "Execute"
value = "xterm"
modifier = ["modkey", "Shift"]
key = "Return"
[[keybind]]
command = "Execute"
value = "alacritty"
modifier = ["modkey"]
key = "z"
[[keybind]]
command = "Execute"
value = "nemo"
modifier = ["modkey"]
key = "e"
[[keybind]]
command = "Execute"
value = "flameshot gui"
modifier = ["modkey", "Shift"]
key = "s"
####################################################################################################
#####################################################################################LEFTWM-SPECIFIC
####################################################################################################
[[keybind]]
command = "CloseWindow"
modifier = ["modkey"]
key = "x"
[[keybind]]
command = "ToggleSticky"
modifier = ["modkey"]
key = "c"
[[keybind]]
command = "ToggleFullScreen"
modifier = ["modkey", "Shift"]
key = "f"
[[keybind]]
command = "SoftReload"
modifier = ["modkey", "Shift"]
key = "r"
[[keybind]]
command = "HardReload"
modifier = ["modkey", "Shift", "Control"]
key = "r"
[[keybind]]
command = "MoveToLastWorkspace"
modifier = ["modkey", "Shift"]
key = "w"
[[keybind]]
command = "SwapTags"
modifier = ["modkey"]
key = "w"
[[keybind]]
command = "MoveWindowUp"
modifier = ["modkey", "Shift"]
key = "k"
[[keybind]]
command = "MoveWindowDown"
modifier = ["modkey", "Shift"]
key = "j"
[[keybind]]
command = "MoveWindowTop"
modifier = ["modkey"]
key = "Return"
[[keybind]]
command = "FocusWindowUp"
modifier = ["modkey"]
key = "k"
[[keybind]]
command = "FocusWindowDown"
modifier = ["modkey"]
key = "j"
[[keybind]]
command = "NextLayout"
modifier = ["modkey", "Control"]
key = "k"
[[keybind]]
command = "PreviousLayout"
modifier = ["modkey", "Control"]
key = "j"
[[keybind]]
command = "FocusWorkspaceNext"
modifier = ["modkey"]
key = "l"
[[keybind]]
command = "FocusWorkspacePrevious"
modifier = ["modkey"]
key = "h"
[[keybind]]
command = "MoveWindowUp"
modifier = ["modkey", "Shift"]
key = "Up"
[[keybind]]
command = "MoveWindowDown"
modifier = ["modkey", "Shift"]
key = "Down"
[[keybind]]
command = "FocusWindowUp"
modifier = ["modkey"]
key = "Up"
[[keybind]]
command = "FocusWindowDown"
modifier = ["modkey"]
key = "Down"
[[keybind]]
command = "NextLayout"
modifier = ["modkey", "Control"]
key = "Up"
[[keybind]]
command = "PreviousLayout"
modifier = ["modkey", "Control"]
key = "Down"
[[keybind]]
command = "FocusWorkspaceNext"
modifier = ["modkey"]
key = "Right"
[[keybind]]
command = "FocusWorkspacePrevious"
modifier = ["modkey"]
key = "Left"
####################################################################################################
####################################################################################TAG MANIPULATION
####################################################################################################
[[keybind]]
command = "GotoTag"
value = "1"
modifier = ["modkey"]
key = "1"
[[keybind]]
command = "GotoTag"
value = "2"
modifier = ["modkey"]
key = "2"
[[keybind]]
command = "GotoTag"
value = "3"
modifier = ["modkey"]
key = "3"
[[keybind]]
command = "GotoTag"
value = "4"
modifier = ["modkey"]
key = "4"
[[keybind]]
command = "GotoTag"
value = "5"
modifier = ["modkey"]
key = "5"
[[keybind]]
command = "GotoTag"
value = "6"
modifier = ["modkey"]
key = "6"
[[keybind]]
command = "GotoTag"
value = "7"
modifier = ["modkey"]
key = "7"
[[keybind]]
command = "GotoTag"
value = "8"
modifier = ["modkey"]
key = "8"
[[keybind]]
command = "GotoTag"
value = "9"
modifier = ["modkey"]
key = "9"
[[keybind]]
command = "GotoTag"
value = "10"
modifier = ["modkey"]
key = "0"
####################################################################################################
#################################################################################MOVING BETWEEN TAGS
####################################################################################################
[[keybind]]
command = "MoveToTag"
value = "1"
modifier = ["modkey", "Shift"]
key = "1"
[[keybind]]
command = "MoveToTag"
value = "2"
modifier = ["modkey", "Shift"]
key = "2"
[[keybind]]
command = "MoveToTag"
value = "3"
modifier = ["modkey", "Shift"]
key = "3"
[[keybind]]
command = "MoveToTag"
value = "4"
modifier = ["modkey", "Shift"]
key = "4"
[[keybind]]
command = "MoveToTag"
value = "5"
modifier = ["modkey", "Shift"]
key = "5"
[[keybind]]
command = "MoveToTag"
value = "6"
modifier = ["modkey", "Shift"]
key = "6"
[[keybind]]
command = "MoveToTag"
value = "7"
modifier = ["modkey", "Shift"]
key = "7"
[[keybind]]
command = "MoveToTag"
value = "8"
modifier = ["modkey", "Shift"]
key = "8"
[[keybind]]
command = "MoveToTag"
value = "9"
modifier = ["modkey", "Shift"]
key = "9"
[[keybind]]
command = "MoveToTag"
value = "10"
modifier = ["modkey", "Shift"]
key = "0"

View File

@@ -1,8 +1,9 @@
" -----------------
" GUI - Settings
" -----------------
set guifont=SauceCodePro\ Nerd\ Font\ Mono:12
set guifont=SauceCodePro\ NFM:12
set linespace=4
set title
set mouse=a
let g:neovide_input_use_logo=v:false

View File

@@ -19,18 +19,18 @@ Plug 'scrooloose/syntastic'
Plug 'sheerun/vim-polyglot'
"""""HTML"""""
Plug 'mattn/emmet-vim'
Plug 'elkowar/yuck.vim'
Plug 'junegunn/vim-github-dashboard'
Plug 'honza/vim-snippets'
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'ActivityWatch/aw-watcher-vim'
"Plug 'ActivityWatch/aw-watcher-vim'
Plug 'vim-scripts/indentLine.vim'
Plug 'rhysd/git-messenger.vim'
"Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'junegunn/vim-easy-align'
Plug 'catppuccin/nvim', { 'as': 'catppuccin' }
Plug 'glacambre/firenvim', { 'do': { _ -> firenvim#install(0) } }
"""""CLUTTER-FREE EDITING"""""
Plug 'junegunn/goyo.vim'
@@ -62,13 +62,16 @@ Plug 'tpope/vim-fugitive'
Plug 'tpope/vim-surround'
Plug 'lambdalisue/suda.vim'
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-telescope/telescope.nvim'
Plug 'kosayoda/nvim-lightbulb'
Plug 'antoinemadec/FixCursorHold.nvim'
Plug 'glacambre/firenvim', { 'do': { _ -> firenvim#install(0) } }
Plug 'NvChad/nvim-colorizer.lua'
Plug 'ms-jpq/chadtree', {'branch': 'chad', 'do': 'python3 -m chadtree deps'}
Plug 'ms-jpq/coq_nvim', {'branch': 'coq'}
@@ -76,9 +79,21 @@ Plug 'ms-jpq/coq_nvim', {'branch': 'coq'}
Plug 'ms-jpq/coq.artifacts', {'branch': 'artifacts'}
Plug 'ms-jpq/coq.thirdparty', {'branch': '3p'}
Plug 'nvim-tree/nvim-web-devicons'
Plug 'projekt0n/circles.nvim'
Plug 'nvim-neotest/nvim-nio'
Plug 'uga-rosa/translate.nvim'
Plug 'mechatroner/rainbow_csv'
Plug 'christoomey/vim-system-copy'
Plug 'eandrju/cellular-automaton.nvim'
Plug 'williamboman/mason.nvim'
Plug 'williamboman/mason-lspconfig.nvim'
Plug 'neovim/nvim-lspconfig'
"Plug 'ranjithshegde/ccls.nvim'
Plug 'mfussenegger/nvim-dap'
Plug 'rcarriga/nvim-dap-ui'
" Initialize plugin system
call plug#end()
@@ -114,26 +129,124 @@ autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists('s:std_in
let g:airline_powerline_fonts = 1
let g:coq_settings = {'clients.tabnine.enabled' : v:false}
filetype plugin on
let g:syntastic_python_python_exec = 'python3'
let g:syntastic_python_checkers = ['bandit', 'python']
" Keybinds
nnoremap <F2> :CHADopen<CR>
set pastetoggle=<F3>
nnoremap <F3> :lua vim.lsp.buf.code_action()<CR>
nnoremap <F4> :Goyo<CR>
nnoremap <F5> :MundoToggle<CR>
nnoremap <F6> :lua require("dapui").toggle()<CR>
""Legacy" bindings for cut/copy/paste
imap <C-X> "+x
imap <C-C> "+y
imap <C-V> "+gP
"imap <C-X> "+x
"imap <C-C> "+y
"imap <C-V> "+gP
let g:catppuccin_flavour = "macchiato" " latte, frappe, macchiato, mocha
lua << EOF
require("mason").setup()
require("mason-lspconfig").setup()
require("mason-lspconfig").setup_handlers({
function (server_name) -- default handler (optional)
require("lspconfig")[server_name].setup(require('coq').lsp_ensure_capabilities({}))
end})
local lsp = require "lspconfig"
local coq = require "coq" -- add this
local dap = require("dap")
dap.adapters.gdb = {
type = "executable",
command = "gdb",
args = { "-i", "dap" }
}
dap.configurations.cpp = {
{
name = "Launch",
type = "gdb",
request = "launch",
program = function()
return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
end,
cwd = "${workspaceFolder}",
stopAtBeginningOfMainSubprogram = false,
},
}
-- Mappings.
-- See `:help vim.diagnostic.*` for documentation on any of the below functions
local opts = { noremap=true, silent=true }
vim.keymap.set('n', '<space>e', vim.diagnostic.open_float, opts)
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, opts)
vim.keymap.set('n', ']d', vim.diagnostic.goto_next, opts)
vim.keymap.set('n', '<space>q', vim.diagnostic.setloclist, opts)
-- Use an on_attach function to only map the following keys
-- after the language server attaches to the current buffer
local on_attach = function(client, bufnr)
-- Enable completion triggered by <c-x><c-o>
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
-- Mappings.
-- See `:help vim.lsp.*` for documentation on any of the below functions
local bufopts = { noremap=true, silent=true, buffer=bufnr }
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, bufopts)
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts)
vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts)
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, bufopts)
vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, bufopts)
vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, bufopts)
vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, bufopts)
vim.keymap.set('n', '<space>wl', function()
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
end, bufopts)
vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, bufopts)
vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, bufopts)
vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, bufopts)
vim.keymap.set('n', 'gr', vim.lsp.buf.references, bufopts)
vim.keymap.set('n', '<space>f', function() vim.lsp.buf.format { async = true } end, bufopts)
end
local lsp_flags = {
-- This is the default in Nvim 0.7+
debounce_text_changes = 150,
}
--lsp.<server>.setup(<stuff...>) -- before
--lsp.<server>.setup(coq.lsp_ensure_capabilities(<stuff...>)) -- after
--lsp.pyright.setup(coq.lsp_ensure_capabilities({}))
--lsp.ccls.setup(coq.lsp_ensure_capabilities({}))
--lsp.ltex.setup(coq.lsp_ensure_capabilities({settings = {ltex = {language = "pl-PL"}}}))
lsp.rust_analyzer.setup(coq.lsp_ensure_capabilities({
settings = {
["rust-analyzer"] = {
imports = {
granularity = {
group = "module",
},
prefix = "self",
},
cargo = {
buildScripts = {
enable = true,
},
},
procMacro = {
enable = true
},
}
}
}))
EOF
let g:catppuccin_flavour = "macchiato"
lua require("dapui").setup()
lua require("catppuccin").setup()
lua require('colorizer').setup()
lua require("circles").setup()
colorscheme catppuccin
autocmd VimEnter * execute 'COQnow -s'

View File

@@ -0,0 +1,22 @@
#version 330
in vec2 texcoord;
uniform float opacity;
uniform bool invert_color;
uniform sampler2D tex;
vec4 window_shader() {
vec4 c = texelFetch(tex, ivec2(texcoord), 0);
{
// Change vec4(1.0, 1.0, 1.0, 1.0) to your desired color
vec4 vdiff = abs(vec4(0.0, 0.0, 0.0, 1.0) - c);
float diff = max(max(max(vdiff.r, vdiff.g), vdiff.b), vdiff.a);
// Change 0.8 to your desired opacity
if (diff < 0.001)
c *= 0;
}
if (invert_color)
c = vec4(vec3(c.a, c.a, c.a) - vec3(c), c.a);
c *= opacity;
vec4 default_post_processing(vec4 c);
return c;
}

View File

@@ -0,0 +1,65 @@
// The Nord colorscheme is used by default,
// but you can make your own by changing `colors`
uniform float opacity;
uniform float time;
uniform bool invert_color;
uniform sampler2D tex;
float sin_rand() {
return sin(gl_FragCoord.x + cos(gl_FragCoord.y));
}
float random(float seedChange) {
vec2 seed = gl_FragCoord.xy + sin(seedChange);
return fract(dot(vec2(sin(mod(seed.x / cos(seed.y), 5.0) * 10000.0)), vec2(1.1, 12.2)));
}
void main() {
vec4 c = texture2D(tex, gl_TexCoord[0].xy);
vec4 d = c;
vec3 colors[16];
colors[0 ] = vec3(0.286,0.302,0.392);
colors[1 ] = vec3(0.929,0.529,0.588);
colors[2 ] = vec3(0.651,0.855,0.584);
colors[3 ] = vec3(0.933,0.831,0.624);
colors[4 ] = vec3(0.541,0.678,0.957);
colors[5 ] = vec3(0.961,0.741,0.902);
colors[6 ] = vec3(0.545,0.835,0.792);
colors[7 ] = vec3(0.722,0.753,0.878);
colors[8 ] = vec3(0.357,0.376,0.471);
colors[9 ] = vec3(0.926,0.529,0.588);
colors[10] = vec3(0.651,0.855,0.584);
colors[11] = vec3(0.933,0.831,0.624);
colors[12] = vec3(0.541,0.678,0.957);
colors[13] = vec3(0.961,0.741,0.902);
colors[14] = vec3(0.545,0.835,0.792);
colors[15] = vec3(0.647,0.678,0.796);
float mindist = 100.0;
int minind = 0;
float mindist2 = 100.0;
int minind2 = 0;
for (int i = 0; i < 16; i++) {
float dist = length(c.xyz - colors[i]);
if (dist < mindist) {
mindist2 = mindist;
mindist = dist;
minind2 = minind;
minind = i;
}
}
float ratio = mindist / (mindist + mindist2);
float r = random(1.0) * 0.4 + 0.25;
if (r > ratio)
c.xyz = colors[minind];
else
c.xyz = colors[minind2];
c.xyz = mix(mix(colors[minind], colors[minind2], ratio), c.xyz, 0.5);
if (invert_color)
c = vec4(vec3(c.a, c.a, c.a) - vec3(c), c.a);
c *= opacity;
gl_FragColor = vec4(c);
}

View File

@@ -0,0 +1,22 @@
#version 330
in vec2 texcoord;
uniform float opacity;
uniform bool invert_color;
uniform sampler2D tex;
vec4 window_shader() {
vec4 c = texelFetch(tex, ivec2(texcoord), 0);
{
// Change vec4(1.0, 1.0, 1.0, 1.0) to your desired color
vec4 vdiff = abs(vec4(0.0, 0.0, 0.0, 1.0) - c);
float diff = max(max(max(vdiff.r, vdiff.g), vdiff.b), vdiff.a);
// Change 0.8 to your desired opacity
if (diff < 0.001)
c *= 0;
}
if (invert_color)
c = vec4(vec3(c.a, c.a, c.a) - vec3(c), c.a);
c *= opacity;
vec4 default_post_processing(vec4 c);
return c;
}

View File

@@ -0,0 +1,65 @@
// The Nord colorscheme is used by default,
// but you can make your own by changing `colors`
uniform float opacity;
uniform float time;
uniform bool invert_color;
uniform sampler2D tex;
float sin_rand() {
return sin(gl_FragCoord.x + cos(gl_FragCoord.y));
}
float random(float seedChange) {
vec2 seed = gl_FragCoord.xy + sin(seedChange);
return fract(dot(vec2(sin(mod(seed.x / cos(seed.y), 5.0) * 10000.0)), vec2(1.1, 12.2)));
}
void main() {
vec4 c = texture2D(tex, gl_TexCoord[0].xy);
vec4 d = c;
vec3 colors[16];
colors[0 ] = vec3(0.18 ,0.204,0.251);
colors[1 ] = vec3(0.231,0.259,0.322);
colors[2 ] = vec3(0.263,0.298,0.369);
colors[3 ] = vec3(0.298,0.337,0.416);
colors[4 ] = vec3(0.847,0.871,0.914);
colors[5 ] = vec3(0.898,0.914,0.941);
colors[6 ] = vec3(0.925,0.937,0.957);
colors[7 ] = vec3(0.561,0.737,0.733);
colors[8 ] = vec3(0.533,0.753,0.816);
colors[9 ] = vec3(0.506,0.631,0.757);
colors[10] = vec3(0.369,0.506,0.675);
colors[11] = vec3(0.749,0.38 ,0.416);
colors[12] = vec3(0.816,0.529,0.439);
colors[13] = vec3(0.922,0.796,0.545);
colors[14] = vec3(0.639,0.745,0.549);
colors[15] = vec3(0.706,0.557,0.678);
float mindist = 100.0;
int minind = 0;
float mindist2 = 100.0;
int minind2 = 0;
for (int i = 0; i < 16; i++) {
float dist = length(c.xyz - colors[i]);
if (dist < mindist) {
mindist2 = mindist;
mindist = dist;
minind2 = minind;
minind = i;
}
}
float ratio = mindist / (mindist + mindist2);
float r = random(1.0) * 0.4 + 0.25;
if (r > ratio)
c.xyz = colors[minind];
else
c.xyz = colors[minind2];
c.xyz = mix(mix(colors[minind], colors[minind2], ratio), c.xyz, 0.5);
if (invert_color)
c = vec4(vec3(c.a, c.a, c.a) - vec3(c), c.a);
c *= opacity;
gl_FragColor = vec4(c);
}

View File

@@ -132,7 +132,7 @@ focus-exclude = [ "class_g = 'Cairo-clock'" ];
# Sets the radius of rounded window corners. When > 0, the compositor will
# round the corners of windows. Does not interact well with
# `transparent-clipping`.
corner-radius = 3
corner-radius = 9
# Exclude conditions for rounded corners.
rounded-corners-exclude = [
@@ -169,11 +169,11 @@ opacity-rule = [
# Exclude conditions for background blur.
# blur-background-exclude = []
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c"
];
#blur-background-exclude = [
# "window_type = 'dock'",
# "window_type = 'desktop'",
# "_GTK_FRAME_EXTENTS@:c"
#];
#################################
# General Settings #
@@ -294,6 +294,19 @@ use-damage = true;
#
# glx-fshader-win = ""
# Use rules to set per-window shaders. Syntax is SHADER_PATH:PATTERN, similar
# to opacity-rule. SHADER_PATH can be "default". This overrides window-shader-fg.
#
window-shader-fg-rule = [
"black_to_transparent.frag:class_g = 'stalonetray'",
"black_to_transparent.frag:class_g = 'Minecraft 1.7.10'",
"black_to_transparent.frag:focused = true",
"black_to_transparent.frag:focused != true",
#"sphere.glsl:focused != true"
#"nordify.glsl:class_g = 'miru'"
]
# Force all windows to be painted with blending. Useful if you
# have a glx-fshader-win that could turn opaque pixels transparent.
#

View File

@@ -0,0 +1,372 @@
#version 430
#define PI 3.14159265
// These shaders work by using a pinhole camera and raycasting
// The window 3d objects will always be (somewhat) centered at (0, 0, 0)
struct pinhole_camera
{
float focal_offset; // Distance along the Z axis between the camera
// center and the focal point. Use negative values
// so the image doesn't flip
// This kinda works like FOV in games
// Transformations
// Use these to modify the coordinate system of the camera plane
vec3 rotations; // Rotations in radians around each axis
// The camera plane rotates around
// its center point, not the origin
vec3 translations; // Translations in pixels along each axis
vec3 deformations; // Deforms the camera. Higher values on each axis
// means the window will be squashed in that axis
// ---------------------------------------------------------------//
// "Aftervalues"
// These will be set later with setup_camera(), leave them as 0
vec3 base_x;
vec3 base_y;
vec3 base_z;
vec3 center_point;
vec3 focal_point;
};
in vec2 texcoord; // texture coordinate of the fragment
uniform sampler2D tex; // texture of the window
uniform float time; // Time in miliseconds.
float time_cyclic = mod(time/10000,2); // Like time, but in seconds and resets to
// 0 when it hits 2. Useful for using it in
// periodic functions like cos and sine
// Time variables can be used to change transformations over time
ivec2 window_size = textureSize(tex, 0); // Size of the window
float window_diagonal = length(window_size); // Diagonal of the window
//
int wss = min(window_size.x, window_size.y); // Window smallest side, useful when squaring windows
// Try to keep focal offset and translations proportional to window_size components
// or window_diagonal as you see fit
pinhole_camera camera =
pinhole_camera(-window_size.y/2, // Focal offset
vec3(0,0,0), // Rotations
vec3(0,0,0), // Translations
vec3(1,1,1), // Deformations
// Leave the rest as 0
vec3(0),
vec3(0),
vec3(0),
vec3(0),
vec3(0));
// Here are some presets you can use
// Moves the camera up and down
pinhole_camera bobbing =
pinhole_camera(-window_size.y/2,
vec3(0,0,0),
vec3(0,cos(time_cyclic*PI)*window_size.y/16,-window_size.y/4),
vec3(1,1,1),
vec3(0),
vec3(0),
vec3(0),
vec3(0),
vec3(0));
// Rotates camera around the origin
// Makes the window rotate around the Y axis from the camera's POV
// (if the window is centered)
pinhole_camera rotate_around_origin =
pinhole_camera(-wss,
vec3(PI/6*sin(2*time_cyclic*PI),-time_cyclic*PI-PI/2,0),
vec3(cos(time_cyclic*PI)*wss,
wss/2*sin(2*time_cyclic*PI),
sin(time_cyclic*PI)*wss),
vec3(1,1,1),
vec3(0),
vec3(0),
vec3(0),
vec3(0),
vec3(0));
// Rotate camera around its center
pinhole_camera rotate_around_itself =
pinhole_camera(-wss,
vec3(0,-time_cyclic*PI-PI/2,0),
vec3(0,0,-wss),
vec3(1,1,1),
vec3(0),
vec3(0),
vec3(0),
vec3(0),
vec3(0));
// Here you can select the preset to use
pinhole_camera window_cam = rotate_around_origin;
ivec2 window_center = ivec2(window_size.x/2, window_size.y/2);
// Default window post-processing:
// 1) invert color
// 2) opacity / transparency
// 3) max-brightness clamping
// 4) rounded corners
vec4 default_post_processing(vec4 c);
// Sets up a camera by applying transformations and
// calculating xyz vector basis
pinhole_camera setup_camera(pinhole_camera camera)
{
// Apply translations
camera.center_point += camera.translations;
// Apply rotations
// We initialize our vector basis as normalized vectors
// in each axis * our deformations vector
camera.base_x = vec3(camera.deformations.x, 0, 0);
camera.base_y = vec3(0, camera.deformations.y, 0);
camera.base_z = vec3(0, 0, camera.deformations.z);
// Then we rotate them around following our rotations vector:
// First save these values to avoid redundancy
float cosx = cos(camera.rotations.x);
float cosy = cos(camera.rotations.y);
float cosz = cos(camera.rotations.z);
float sinx = sin(camera.rotations.x);
float siny = sin(camera.rotations.y);
float sinz = sin(camera.rotations.z);
// Declare a buffer vector we will use to apply multiple changes at once
vec3 tmp = vec3(0);
// Rotations for base_x:
tmp = camera.base_x;
// X axis:
tmp.y = camera.base_x.y * cosx - camera.base_x.z * sinx;
tmp.z = camera.base_x.y * sinx + camera.base_x.z * cosx;
camera.base_x = tmp;
// Y axis:
tmp.x = camera.base_x.x * cosy + camera.base_x.z * siny;
tmp.z = -camera.base_x.x * siny + camera.base_x.z * cosy;
camera.base_x = tmp;
// Z axis:
tmp.x = camera.base_x.x * cosz - camera.base_x.y * sinz;
tmp.y = camera.base_x.x * sinz + camera.base_x.y * cosz;
camera.base_x = tmp;
// Rotations for base_y:
tmp = camera.base_y;
// X axis:
tmp.y = camera.base_y.y * cosx - camera.base_y.z * sinx;
tmp.z = camera.base_y.y * sinx + camera.base_y.z * cosx;
camera.base_y = tmp;
// Y axis:
tmp.x = camera.base_y.x * cosy + camera.base_y.z * siny;
tmp.z = -camera.base_y.x * siny + camera.base_y.z * cosy;
camera.base_y = tmp;
// Z axis:
tmp.x = camera.base_y.x * cosz - camera.base_y.y * sinz;
tmp.y = camera.base_y.x * sinz + camera.base_y.y * cosz;
camera.base_y = tmp;
// Rotations for base_z:
tmp = camera.base_z;
// X axis:
tmp.y = camera.base_z.y * cosx - camera.base_z.z * sinx;
tmp.z = camera.base_z.y * sinx + camera.base_z.z * cosx;
camera.base_z = tmp;
// Y axis:
tmp.x = camera.base_z.x * cosy + camera.base_z.z * siny;
tmp.z = -camera.base_z.x * siny + camera.base_z.z * cosy;
camera.base_z = tmp;
// Z axis:
tmp.x = camera.base_z.x * cosz - camera.base_z.y * sinz;
tmp.y = camera.base_z.x * sinz + camera.base_z.y * cosz;
camera.base_z = tmp;
// Now that we have our transformed 3d orthonormal base
// we can calculate our focal point
camera.focal_point = camera.center_point + camera.base_z * camera.focal_offset;
// Return our set up camera
return camera;
}
// Gets a pixel from the end of a ray projected to an axis
vec4 get_pixel_from_projection(float t, pinhole_camera camera, vec3 focal_vector)
{
// If the point we end up in is behind our camera, don't "render" it
if (t < 1)
{
return vec4(0);
}
// Then we multiply our focal vector by t and add our focal point to it
// to end up in a point inside the window plane
vec3 intersection = focal_vector * t + camera.focal_point;
// Save necessary coordinates
vec2 cam_coords = intersection.xy;
// Square window trickery
if (window_size.x > window_size.y)
{
cam_coords.x /= window_size.y/float(window_size.x);
cam_coords.xy += window_center.xy;
}
else if (window_size.x < window_size.y)
{
cam_coords.y /= window_size.x/float(window_size.y);
cam_coords.xy += window_center.xy;
}
// If pixel is outside of our window region
// return a dimmed pixel with the window's border color
if (cam_coords.x >=window_size.x-1 ||
cam_coords.y >=window_size.y-1 ||
cam_coords.x <=0 || cam_coords.y <=0)
{
cam_coords.x = 0;
cam_coords.y = window_center.y;
vec4 pixel = texelFetch(tex, ivec2(cam_coords), 0);
pixel *= 0.5;
return pixel;
}
// Fetch the pixel
vec4 pixel = texelFetch(tex, ivec2(cam_coords), 0);
return pixel;
}
// Combines colors using alpha
// Got this from https://stackoverflow.com/questions/64701745/how-to-blend-colours-with-transparency
// Not sure how it works honestly lol
vec4 alpha_composite(vec4 color1, vec4 color2)
{
float ar = color1.w + color2.w - (color1.w * color2.w);
float asr = color2.w / ar;
float a1 = 1 - asr;
float a2 = asr * (1 - color1.w);
float ab = asr * color1.w;
vec4 outcolor;
outcolor.xyz = color1.xyz * a1 + color2.xyz * a2 + color2.xyz * ab;
outcolor.w = ar;
return outcolor;
}
// Gets a pixel through the camera using coords as coordinates in
// the camera plane
vec4 get_pixel_through_camera(vec2 coords, pinhole_camera camera)
{
// Offset coords
coords -= window_center;
// Find the pixel 3d position using the camera vector basis
vec3 pixel_3dposition = camera.center_point
+ coords.x * camera.base_x
+ coords.y * camera.base_y;
// Get the vector going from the focal point to the pixel in 3d sapace
vec3 focal_vector = pixel_3dposition - camera.focal_point;
// Following the sphere EQ (with Y axis as center)
// x^2 + y^2 + z^2 = r^2
float r = min(window_size.x, window_size.y)/(PI/2);
// Then there's a line going from our focal point to the cylinder
// which we can describe as:
// x(t) = focal_point.x + focal_vector.x * t
// y(t) = focal_point.y + focal_vector.y * t
// z(t) = focal_point.z + focal_vector.z * t
// We substitute x, y and z with x(t) and z(t) in the cylinder EQ
// Solving for t we get a cuadratic EQ which we solve with the
// cuadratic formula:
// We calculate focal vector and focal point values squared
// to avoid redundancy
vec3 fvsqr;
vec3 fpsqr;
fvsqr.x = pow(focal_vector.x,2);
fvsqr.y = pow(focal_vector.y,2);
fvsqr.z = pow(focal_vector.z,2);
fpsqr.x = pow(camera.focal_point.x,2);
fpsqr.y = pow(camera.focal_point.y,2);
fpsqr.z = pow(camera.focal_point.z,2);
// Coeficients of our EQ
float a = fvsqr.x + fvsqr.y + fvsqr.z;
float b = 2*(camera.focal_point.x*focal_vector.x
+camera.focal_point.y*focal_vector.y
+camera.focal_point.z*focal_vector.z);
float c = fpsqr.x + fpsqr.y + fpsqr.z - pow(r,2);
// If there are no real roots, then there's no intersection and we
// return an empty pixel
float formulasqrt = pow(b,2)-4*a*c;
if (formulasqrt < 0)
{
return vec4(0);
}
vec2 t[2]; // A float should be used for this instead, but the shader
// isn't rendered correctly when I use a float
// Cursed, but it works
// Solve with general formula
t[0].x = (-b + sqrt(formulasqrt))/(2*a);
t[1].x = (-b - sqrt(formulasqrt))/(2*a);
t[0].y = 0;
t[1].y = 0;
// Bubble sort to know which intersections happen first
for (int i = 0; i < t.length(); i++)
{
for (int j = 0; j < t.length(); j++)
{
if (t [j].x > t[j+1].x)
{
vec2 tmp = t[j];
t[j] = t[j+1];
t[j+1] = tmp;
}
}
}
// Then we go through each one of the intersections in order
// and mix pixels together using alpha
vec4 blended_pixels = vec4(0);
for (int i = 0; i < t.length(); i++)
{
// We get the pixel through projection
vec4 projection_pixel = get_pixel_from_projection(t[i].x,
camera,
focal_vector);
if (projection_pixel.w > 0.0)
{
// Blend the pixel using alpha
blended_pixels = alpha_composite(projection_pixel, blended_pixels);
}
}
return blended_pixels;
}
// Main function
vec4 window_shader() {
pinhole_camera transformed_cam = setup_camera(window_cam);
return(get_pixel_through_camera(texcoord, transformed_cam));
}

View File

@@ -0,0 +1,33 @@
#version 130
#extension GL_ARB_shading_language_420pack: enable
#define CYCLE 5000 // The amount of miliseconds it takes to do a full "loop" around all the colors.
uniform float opacity;
uniform bool invert_color;
uniform sampler2D tex;
uniform float time;
float get_decimal_part(float f) {
return f - int(f);
}
float snap0(float f) {
return (f < 0) ? 0 : f;
}
void main() {
vec4 c = texture2D(tex, gl_TexCoord[0].xy);
float f = get_decimal_part(time / CYCLE);
gl_FragColor.a = 1;
float p[3] = {
snap0(0.33 - abs(f - 0.33)) * 4,
snap0(0.33 - abs(f - 0.66)) * 4,
snap0(0.33 - abs(f - 1.00)) * 4 + snap0(0.33 - abs(f - 0.0)) * 4
};
gl_FragColor.r = p[0] * c.r + p[1] * c.g + p[2] * c.b;
gl_FragColor.g = p[2] * c.r + p[0] * c.g + p[1] * c.b;
gl_FragColor.b = p[1] * c.r + p[2] * c.g + p[0] * c.b;
}

View File

@@ -49,11 +49,11 @@ padding-right = 2
module-margin-left = 1
module-margin-right = 1
font-0 = "SauceCodePro Nerd Font Mono:size=10;1"
font-0 = "SauceCodePro NFM:size=10;1"
font-1 = "Unifont:size=10:antialias=false;0"
font-2 = "Siji:pixelsize=10;1"
font-3 = "SauceCodePro Nerd Font Mono:size=16;4"
font-4 = "SauceCodePro Nerd Font Mono:size=13;3"
font-3 = "SauceCodePro NFM:size=16;4"
font-4 = "SauceCodePro NFM:size=13;3"
font-5 = "Noto Color Emoji:scale=10;1"
modules-left = rofi bspwm
@@ -95,11 +95,11 @@ padding-right = 2
module-margin-left = 1
module-margin-right = 1
font-0 = "SauceCodePro Nerd Font Mono:size=10"
font-0 = "SauceCodePro NFM:size=10"
font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
font-2 = siji:pixelsize=10;1
font-3 = "SauceCodePro Nerd Font Mono:size=16;4"
font-4 = "SauceCodePro Nerd Font Mono:size=13;2"
font-3 = "SauceCodePro NFM:size=16;4"
font-4 = "SauceCodePro NFM:size=13;2"
modules-center = mpd
modules-right = pulseaudio
@@ -133,11 +133,11 @@ padding-right = 2
module-margin-left = 1
module-margin-right = 1
font-0 = "SauceCodePro Nerd Font Mono:size=10"
font-0 = "SauceCodePro NFM:size=10"
font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
font-2 = siji:pixelsize=10;1
font-3 = "SauceCodePro Nerd Font Mono:size=16;4"
font-4 = "SauceCodePro Nerd Font Mono:size=13;2"
font-3 = "SauceCodePro NFM:size=16;4"
font-4 = "SauceCodePro NFM:size=13;2"
modules-left = restart_polybar
modules-center = temperature

View File

@@ -34,7 +34,7 @@ set column_ratios 1,3,4
set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$
# Show hidden files? You can toggle this by typing 'zh'
set show_hidden false
set show_hidden true
# Ask for a confirmation when running the "delete" command?
# Valid values are "always", "never", "multiple" (default)
@@ -57,7 +57,7 @@ set automatically_count_files true
set open_all_images true
# Be aware of version control systems and display information.
set vcs_aware false
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
@@ -71,7 +71,7 @@ set vcs_backend_svn disabled
set vcs_msg_length 50
# Use one of the supported image preview protocols
set preview_images false
set preview_images true
# Set the preview image method. Supported methods:
#
@@ -114,7 +114,7 @@ set preview_images false
# Preview images in full color with the external command "ueberzug".
# Images are shown by using a child window.
# Only for users who run X11 in GNU/Linux.
set preview_images_method ueberzug
set preview_images_method kitty
# Delay in seconds before displaying an image with the w3m method.
# Increase it in case of experiencing display corruption.
@@ -128,7 +128,7 @@ set iterm2_font_width 8
set iterm2_font_height 11
# Use a unicode "..." character to mark cut-off filenames?
set unicode_ellipsis false
set unicode_ellipsis true
# BIDI support - try to properly display file names in RTL languages (Hebrew, Arabic).
# Requires the python-bidi pip package
@@ -183,7 +183,7 @@ set display_free_space_in_status_bar true
set display_tags_in_all_columns true
# Set a title for the window? Updates both `WM_NAME` and `WM_ICON_NAME`
set update_title false
set update_title true
# Set the tmux/screen window-name to "ranger"?
set update_tmux_title true
@@ -495,7 +495,7 @@ map p`<any> paste dest=%any_path
map p'<any> paste dest=%any_path
map dD console delete
map dT console trash
map dT shell gio trash %s
map dd cut
map ud uncut

View File

@@ -262,7 +262,7 @@ label wallpaper, number 14, mime ^image, has feh, X = feh --bg-fill "$1"
#-------------------------------------------
# Generic file openers
#-------------------------------------------
label open, has xdg-open = xdg-open -- "$@"
label open, has xdg-open = xdg-open "$@"
label open, has open = open -- "$@"
# Define the editor for non-text files + pager as last action
@@ -280,5 +280,5 @@ label pager, !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php = "$PAGER"
mime application/x-executable = "$1"
# Move the file to trash using trash-cli.
label trash, has trash-put = trash-put -- "$@"
label trash, has trash-put = trash-put "$@"
label trash = mkdir -p -- ${XDG_DATA_DIR:-$HOME/.ranger}/ranger-trash; mv -- "$@" ${XDG_DATA_DIR:-$HOME/.ranger}/ranger-trash

View File

@@ -0,0 +1,137 @@
# vim:filetype=config:tw=80:et
#
# This is sample ~/.stalonetrayrc, resembling default configuration.
# Remember: command line parameters take precedence.
#
# Directives introduced in @VERSION_STR@ are marked with "NEW in @VERSION_STR@"
#
####################################################################
#
# stalonetray understands following directives
#
####################################################################
# background <color> # color can be specified as an HTML hex triplet or
# as a name from rgb.txt, note that '#' must be quoted
background "#000000"
# decorations <decspec> # set trays window decorations; possible values for
# decspec are: all, title, border, none
decorations none
# display <display name> # as usual
# dockapp_mode <mode> # set dockapp mode, which can be either simple (for
# e.g. OpenBox, wmaker for WindowMaker, or none
# (default). NEW in @VERSION_STR@.
dockapp_mode none
# fuzzy_edges [<level>] # enable fuzzy edges and set fuzziness level. level
# can be from 0 (disabled) to 3; this setting works
# with tinting and/or transparent and/or pixmap
# backgrounds
fuzzy_edges 0
# geometry <geometry> # tray's geometry in standard X notation; width and
# height are specified in slot_size multiples
geometry 1x1+1400+876
# grow_gravity <gravity> # one of N, S, E, W, NW, NE, SW, SE; tray will grow
# in the direction opposite to one specified by
# grow_gravity; if horizontal or vertical
# direction is not specified, tray will not grow in
# that direction
grow_gravity W
# icon_gravity <gravity> # icon placement gravity, one of NW, NE, SW, SE
icon_gravity NW
# icon_size <int> # specifies dimensions of typical icon slot
icon_size 24
# log_level <level> # controls the amount of logging output, level can
# be err (default), info, or trace (enabled only
# when stalonetray configured with --enable-debug)
# NEW in @VERSION_STR@.
log_level err
# kludges kludge[,kludge] # enable specific kludges to work around
# non-conforming WMs and/or stalonetray bugs.
# NEW in @VERSION_STR@. Argument is a
# comma-separated list of
# * fix_window_pos - fix tray window position on
# erroneous moves by WM
# * force_icons_size - ignore resize events on all
# icons; force their size to be equal to
# icon_size
# * use_icon_hints - use icon window hints to
# dtermine icon size
# max_geometry <geometry> # maximal tray dimensions; 0 in width/height means
# no limit
max_geometry 0x0
# no_shrink [<bool>] # disables shrink-back mode
no_shrink false
# parent_bg [<bool>] # whether to use pseudo-transparency
# (looks better when reparented into smth like FvwmButtons)
parent_bg false
# pixmap_bg <path_to_xpm> # use pixmap from specified xpm file for (tiled) background
# pixmap_bg /home/user/.stalonetraybg.xpm
# scrollbars <mode> # enable/disable scrollbars; mode is either
# vertical, horizontal, all or none (default)
# NEW in @VERSION_STR@.
scrollbars none
# scrollbars-size <size> # scrollbars step in pixels; default is slot_size / 4
# scrollbars-step 8
# scrollbars-step <step> # scrollbars step in pixels; default is slot_size / 2
# scrollbars-step 32
# slot_size <int> # specifies size of icon slot, defaults to
# icon_size NEW in @VERSION_STR@.
# skip_taskbar [<bool>] # hide tray`s window from the taskbar
skip_taskbar true
# sticky [<bool>] # make a tray`s window sticky across the
# desktops/pages
sticky true
# tint_color <color> # set tinting color
tint_color white
# tint_level <level> # set tinting level; level ranges from 0 (disabled)
# to 255
tint_level 0
# transparent [<bool>] # whether to use root-transparency (background
# image must be set with Esetroot or compatible utility)
transparent false
# vertical [<bool>] # whether to use vertical layout (horisontal layout
# is used by default)
vertical true
# window_layer <layer> # set the EWMH-compatible window layer; one of:
# bottom, normal, top
window_layer normal
# window_strut <mode> # enable/disable window struts for tray window (to
# avoid converting of tray window by maximized
# windows); mode defines to which screen border tray
# will be attached; it can be either top, bottom,
# left, right, none or auto (default)
window_strut auto
# window_type <type> # set the EWMH-compatible window type; one of:
# desktop, dock, normal, toolbar, utility
window_type dock
# xsync [<bool>] # whether to operate on X server synchronously (SLOOOOW)
xsync false

View File

@@ -275,7 +275,7 @@ super + ctrl + button4
# run applications
super + space
rofi -modi drun,run,window,calc -show drun
rofi -modi drun,run,window,calc,emoji -show drun
#dmenu_recent -fn 'xos4 Terminus:size=15' -i -l 14 -w 600 -y $PANEL_HEIGHT
# Triggered by jus tapping super
@@ -287,13 +287,13 @@ super + shift + Return
urxvt
super + z
alacritty
kitty
super + shift + z
open-terminal-here
alacritty
super + r
rofi -modi drun,run,window,calc -show run
rofi -modi drun,run,window,calc,emoji -show run
super + shift + b
$BROWSER
@@ -355,7 +355,8 @@ XF86AudioMicMute
amixer set Capture toggle
XF86Launch1
rofi -modi drun,run,window,calc,windowcd,combi,keys,filebrowser,emoji -show drun
#rofi -modi drun,run,window,calc,windowcd,combi,keys,filebrowser,emoji -show drun
rofi-rbw
ctrl + shift + Escape
alacritty -e btop

View File

@@ -0,0 +1,180 @@
{
"layer": "top", // Waybar at top layer
// "position": "bottom", // Waybar position (top|bottom|left|right)
"height": 30, // Waybar height (to be removed for auto height)
// "width": 1280, // Waybar width
"spacing": 4, // Gaps between modules (4px)
// Choose the order of the modules
"modules-left": ["custom/archicon","hyprland/workspaces", "custom/media", ],
"modules-center": ["hyprland/window"],
"modules-right": ["mpd", "idle_inhibitor", "pulseaudio", "network", "cpu", "memory", "temperature", "backlight", "keyboard-state", "sway/language", "battery", "clock", "tray"],
// Modules configuration
// "sway/workspaces": {
// "disable-scroll": true,
// "all-outputs": true,
// "warp-on-scroll": false,
// "format": "{name}: {icon}",
// "format-icons": {
// "1": "",
// "2": "",
// "3": "",
// "4": "",
// "5": "",
// "urgent": "",
// "focused": "",
// "default": ""
// }
// },
"hyprland/workspaces":{
"active-only":false,
"format":"{name}",
"on-scroll-up": "hyprctl dispatch workspace e+1",
"on-scroll-down": "hyprctl dispatch workspace e-1",
"persistent-workspaces": {
"*":10,
},
},
"keyboard-state": {
"numlock": false,
"capslock": true,
"format": "{name} {icon}",
"format-icons": {
"locked": "",
"unlocked": ""
}
},
"sway/mode": {
"format": "<span style=\"italic\">{}</span>"
},
"sway/scratchpad": {
"format": "{icon} {count}",
"show-empty": false,
"format-icons": ["", ""],
"tooltip": true,
"tooltip-format": "{app}: {title}"
},
"mpd": {
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ",
"format-disconnected": "Disconnected ",
"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
"unknown-tag": "N/A",
"interval": 2,
"consume-icons": {
"on": " "
},
"random-icons": {
"off": "<span color=\"#f53c3c\"></span> ",
"on": " "
},
"repeat-icons": {
"on": " "
},
"single-icons": {
"on": "1 "
},
"state-icons": {
"paused": "",
"playing": ""
},
"tooltip-format": "MPD (connected)",
"tooltip-format-disconnected": "MPD (disconnected)"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "󰅶",
"deactivated": "󰾪"
}
},
"tray": {
// "icon-size": 21,
"spacing": 10
},
"clock": {
// "timezone": "America/New_York",
"tooltip-format": "<big>{:%d %B %Y}</big>\n<tt><small>{calendar}</small></tt>",
"format-alt": "{:%Y-%m-%d}",
},
"cpu": {
"format": "{usage}% ",
"tooltip": false
},
"memory": {
"format": "{}% "
},
"temperature": {
// "thermal-zone": 2,
// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
"critical-threshold": 80,
// "format-critical": "{temperatureC}°C {icon}",
"format": "{temperatureC}°C {icon}",
"format-icons": ["", "", " "]
},
"backlight": {
// "device": "acpi_video1",
"format": "{percent}% {icon}",
"format-icons": ["", "", "", "", "", "", "", "", ""]
},
"battery": {
"states": {
// "good": 95,
"warning": 30,
"critical": 15
},
"format": "{capacity}% {icon}",
"format-charging": "{capacity}% ",
"format-plugged": "{capacity}% ",
"format-alt": "{time} {icon}",
// "format-good": "", // An empty format will hide the module
// "format-full": "",
"format-icons": ["", "", "", "", ""]
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
"format-wifi": "{essid} ({signalStrength}%) ",
"format-ethernet": "{ipaddr}/{cidr} 󰈀",
"tooltip-format": "{ifname} via {gwaddr} ",
"format-linked": "{ifname} (No IP) ",
"format-disconnected": "Disconnected ⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}",
"on-click-right": "kitty nmtui"
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{volume}% {icon} {format_source}",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": "󰝟 {icon} {format_source}",
"format-muted": "󰝟 {format_source}",
"format-source": "{volume}% ",
"format-source-muted": "",
"format-icons": {
"headphone": "󰋋",
"hands-free": "󰟅",
"headset": "󰋎",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pavucontrol"
},
"custom/media": {
"format": "{icon} {}",
"return-type": "json",
"max-length": 40,
"format-icons": {
"spotify": "",
"default": "🎜"
},
"escape": true,
"exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
// "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
},
"custom/archicon": {
"format":"󰣇",
// "on-click":"nwg-menu -d -fm nemo -cmd-lock gtklock -va top",
"on-click":"jgmenu_run",
"tooltip":false,
}
}

View File

@@ -0,0 +1,10 @@
#!/bin/dash
CONFIG_FILES="$HOME/.config/waybar/config $HOME/.config/waybar/style.css"
trap "killall waybar" EXIT
while true; do
waybar &
inotifywait -e create,modify $CONFIG_FILES
killall waybar
done

View File

@@ -0,0 +1,38 @@
/*
*
* Catppuccin Macchiato palette
* Maintainer: rubyowo
*
*/
@define-color base #24273a;
@define-color mantle #1e2030;
@define-color crust #181926;
@define-color text #cad3f5;
@define-color subtext0 #a5adcb;
@define-color subtext1 #b8c0e0;
@define-color surface0 #363a4f;
@define-color surface1 #494d64;
@define-color surface2 #5b6078;
@define-color overlay0 #6e738d;
@define-color overlay1 #8087a2;
@define-color overlay2 #939ab7;
@define-color blue #8aadf4;
@define-color lavender #b7bdf8;
@define-color sapphire #7dc4e4;
@define-color sky #91d7e3;
@define-color teal #8bd5ca;
@define-color green #a6da95;
@define-color yellow #eed49f;
@define-color peach #f5a97f;
@define-color maroon #ee99a0;
@define-color red #ed8796;
@define-color mauve #c6a0f6;
@define-color pink #f5bde6;
@define-color flamingo #f0c6c6;
@define-color rosewater #f4dbd6;

View File

@@ -0,0 +1,313 @@
@import "macchiato.css";
* {
/* `otf-font-awesome` is required to be installed for icons */
font-family: "NotoSans Nerd Font Propo", FontAwesome, Roboto, Helvetica, Arial, sans-serif;
font-size: 13px;
}
window#waybar {
background-color: shade(@base, 1);/* rgba(43, 48, 59, 0.5);*/
border-bottom: 3px solid shade(@overlay2, 0.5);
color: #ffffff;
transition-property: background-color;
transition-duration: .5s;
}
window#waybar.hidden {
opacity: 0.2;
}
/*
window#waybar.empty {
background-color: transparent;
}
window#waybar.solo {
background-color: #FFFFFF;
}
*/
window#waybar.termite {
background-color: #3F3F3F;
}
window#waybar.chromium {
background-color: @base;
border: none;
}
button {
/* Use box-shadow instead of border so the text isn't offset */
box-shadow: inset 0 -3px transparent;
/* Avoid rounded borders under each button name */
border: none;
border-radius: 0;
}
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
button:hover {
background: inherit;
box-shadow: inset 0 -3px #ffffff;
}
#workspaces button {
padding: 0 5px;
background-color: shade(@blue, 0.5);
color: #ffffff;
}
#workspaces button.empty {
background-color: transparent;/* rgba(43, 48, 59, 0.5);*/
}
#workspaces button:hover {
background: rgba(0, 0, 0, 0.2);
}
#workspaces button.active {
background-color: @overlay1;
box-shadow: inset 0 -3px #ffffff;
}
#workspaces button.urgent {
background-color: @red;
}
#mode {
background-color: #64727D;
border-bottom: 3px solid #ffffff;
}
#cava,
#clock,
#battery,
#cpu,
#memory,
#disk,
#temperature,
#backlight,
#network,
#pulseaudio,
#wireplumber,
#custom-media,
#tray,
#mode,
#idle_inhibitor,
#scratchpad,
#mpd {
padding: 0 10px;
color: @text;
}
#window,
#workspaces {
margin: 0 4px;
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left > widget:first-child > #workspaces {
margin-left: 0;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right > widget:last-child > #workspaces {
margin-right: 0;
}
#clock {
background-color: inherit;
}
#battery {
background-color: #ffffff;
color: @base;
}
#battery.charging, #battery.plugged {
color: @base;
background-color: @green;
}
@keyframes blink {
to {
background-color: #ffffff;
color: @base;
}
}
#battery.critical:not(.charging) {
background-color: #f53c3c;
color: #ffffff;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
label:focus {
background-color: @base;
}
#cpu {
background-color: @teal;
color: @surface0;
}
#memory {
background-color: @mauve;
color: @surface0;
}
#disk {
background-color: #964B00;
}
#backlight {
background-color: @teal;
color: @base;
}
#network {
background-color: @sky;
color: @base;
}
#network.disconnected {
background-color: @red;
}
#pulseaudio {
background-color: @yellow;
color: @base;
}
#pulseaudio.muted {
background-color: @peach;
color: @base;
}
#wireplumber {
background-color: @yellow;
color: @base;
}
#wireplumber.muted {
background-color: @peach;
}
#custom-media {
background-color: #66cc99;
color: #2a5c45;
min-width: 100px;
}
#custom-media.custom-spotify {
background-color: #66cc99;
}
#custom-media.custom-vlc {
background-color: #ffa000;
}
#temperature {
background-color: #f0932b;
color: @base;
}
#temperature.critical {
background-color: #eb4d4b;
}
#tray {
/*background-color: @crust;*/
}
#tray > .passive {
-gtk-icon-effect: dim;
}
#tray > .needs-attention {
-gtk-icon-effect: highlight;
background-color: @maroon;
}
#idle_inhibitor {
background-color: #2d3436;
}
#idle_inhibitor.activated {
background-color: #ecf0f1;
color: #2d3436;
}
#mpd {
background-color: #66cc99;
color: #2a5c45;
}
#mpd.disconnected {
background-color: #f53c3c;
}
#mpd.stopped {
background-color: #90b1b1;
}
#mpd.paused {
background-color: #51a37a;
}
#language {
background: #00b093;
color: #740864;
padding: 0 5px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state {
background: @sky;
color: @base;
padding: 0 0px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state > label {
padding: 0 5px;
}
#keyboard-state > label.locked {
background: rgba(0, 0, 0, 0.2);
}
#scratchpad {
background: rgba(0, 0, 0, 0.2);
}
#scratchpad.empty {
background-color: transparent;
}
#privacy {
padding: 0;
}
#privacy-item {
padding: 0 5px;
color: white;
}
#privacy-item.screenshare {
background-color: #cf5700;
}
#privacy-item.audio-in {
background-color: #1ca000;
}
#privacy-item.audio-out {
background-color: #0069d4;
}
#custom-archicon {
background-color: #ff0000;
min-width: 40px;
}

View File

@@ -10,7 +10,7 @@ alias .....="cd ../../../.."
alias ......="cd ../../../../.."
##* Colours!
alias ls="command exa"
alias ls="command eza"
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
@@ -24,17 +24,17 @@ alias j="jobs"
alias lessf="less +F"
# List all files colorized in long format
alias l="exa -G --icons"
alias ll="exa -l --icons"
alias lg="exa -lG"
alias lall="exa -lahF --icons --git"
alias lalg="exa -laGhF --icons --git"
alias latree="exa -laGghHT --git --icons"
alias l="eza -G --icons"
alias ll="eza -l --icons"
alias lg="eza -lG"
alias lall="eza -lahF --icons --git"
alias lalg="eza -laGhF --icons --git"
alias latree="eza -laGghHT --git --icons"
# List all files colorized in long format, including dot files
alias la="exa -la"
alias la="eza -la"
# List only directories
alias lsd="exa -laD"
alias lsd="eza -laD"
# Enable aliases to be sudoed
alias sudo='sudo '
@@ -89,5 +89,10 @@ alias please='sudo'
alias simon-says='sudo'
alias runhis="anyframe-widget-execute-history"
alias gitup='for dir in $(find . -name ".git"); do cd ${dir%/*}; pwd ; git pull ; cd -; done'
# Default xclip to use Ctrl-c/Ctrl-v clipboard
alias xclip="xclip -selection c"
alias :q="exit"
alias mirrorup='sudo reflector --verbose -c Poland -c Germany -c France -l 25 -a 2 -p https --sort rate --save /etc/pacman.d/mirrorlist'
alias lock="swaylock --screenshots --clock --indicator --indicator-radius 100 --indicator-thickness 7 --effect-blur 7x5 --effect-vignette 0.5:0.5 --ring-color bb00cc --key-hl-color 880033 --line-color 00000000 --inside-color 00000088 --separator-color 00000000 --grace 2 --fade-in 0.2"

View File

@@ -1,7 +1,7 @@
# Generated by Powerlevel10k configuration wizard on 2022-10-18 at 23:43 CEST.
# Based on romkatv/powerlevel10k/config/p10k-lean.zsh, checksum 30611.
# Wizard options: nerdfont-complete + powerline, small icons, unicode, lean, 2 lines,
# solid, right frame, darkest-ornaments, sparse, many icons, concise, transient_prompt,
# Generated by Powerlevel10k configuration wizard on 2023-11-22 at 09:26 CET.
# Based on romkatv/powerlevel10k/config/p10k-lean.zsh, checksum 61526.
# Wizard options: nerdfont-v3 + powerline, small icons, unicode, lean, 2 lines, solid,
# right frame, darkest-ornaments, sparse, many icons, concise, transient_prompt,
# instant_prompt=quiet.
# Type `p10k configure` to generate another config.
#
@@ -54,33 +54,33 @@
anaconda # conda environment (https://conda.io/)
pyenv # python environment (https://github.com/pyenv/pyenv)
goenv # go environment (https://github.com/syndbg/goenv)
# nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv)
nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv)
nvm # node.js version from nvm (https://github.com/nvm-sh/nvm)
# nodeenv # node.js environment (https://github.com/ekalinin/nodeenv)
node_version # node.js version
go_version # go version (https://golang.org)
nodeenv # node.js environment (https://github.com/ekalinin/nodeenv)
# node_version # node.js version
# go_version # go version (https://golang.org)
rust_version # rustc version (https://www.rust-lang.org)
# dotnet_version # .NET version (https://dotnet.microsoft.com)
# php_version # php version (https://www.php.net/)
# laravel_version # laravel php framework version (https://laravel.com/)
# java_version # java version (https://www.java.com/)
package # name@version from package.json (https://docs.npmjs.com/files/package.json)
# rbenv # ruby version from rbenv (https://github.com/rbenv/rbenv)
# rvm # ruby version from rvm (https://rvm.io)
rbenv # ruby version from rbenv (https://github.com/rbenv/rbenv)
rvm # ruby version from rvm (https://rvm.io)
fvm # flutter version management (https://github.com/leoafarias/fvm)
luaenv # lua version from luaenv (https://github.com/cehoffman/luaenv)
jenv # java version from jenv (https://github.com/jenv/jenv)
# plenv # perl version from plenv (https://github.com/tokuhirom/plenv)
# perlbrew # perl version from perlbrew (https://github.com/gugod/App-perlbrew)
plenv # perl version from plenv (https://github.com/tokuhirom/plenv)
perlbrew # perl version from perlbrew (https://github.com/gugod/App-perlbrew)
phpenv # php version from phpenv (https://github.com/phpenv/phpenv)
# scalaenv # scala version from scalaenv (https://github.com/scalaenv/scalaenv)
scalaenv # scala version from scalaenv (https://github.com/scalaenv/scalaenv)
haskell_stack # haskell version from stack (https://haskellstack.org/)
kubecontext # current kubernetes context (https://kubernetes.io/)
terraform # terraform workspace (https://www.terraform.io)
# terraform_version # terraform version (https://www.terraform.io)
# aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html)
# aws_eb_env # aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/)
# azure # azure account name (https://docs.microsoft.com/en-us/cli/azure)
aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html)
aws_eb_env # aws elastic beanstalk environment (https://aws.amazon.com/elasticbeanstalk/)
azure # azure account name (https://docs.microsoft.com/en-us/cli/azure)
gcloud # google cloud cli account and project (https://cloud.google.com/)
google_app_cred # google application credentials (https://cloud.google.com/docs/authentication/production)
toolbox # toolbox name (https://github.com/containers/toolbox)
@@ -88,18 +88,21 @@
nordvpn # nordvpn connection status, linux only (https://nordvpn.com/)
ranger # ranger shell (https://github.com/ranger/ranger)
nnn # nnn shell (https://github.com/jarun/nnn)
lf # lf shell (https://github.com/gokcehan/lf)
xplr # xplr shell (https://github.com/sayanarijit/xplr)
vim_shell # vim shell indicator (:sh)
midnight_commander # midnight commander shell (https://midnight-commander.org/)
nix_shell # nix shell (https://nixos.org/nixos/nix-pills/developing-with-nix-shell.html)
chezmoi_shell # chezmoi shell (https://www.chezmoi.io/)
# vpn_ip # virtual private network indicator
# load # CPU load
# disk_usage # disk usage
# ram # free RAM
# swap # used swap
# todo # todo items (https://github.com/todotxt/todo.txt-cli)
todo # todo items (https://github.com/todotxt/todo.txt-cli)
timewarrior # timewarrior tracking status (https://timewarrior.net/)
taskwarrior # taskwarrior task count (https://taskwarrior.org/)
per_directory_history # Oh My Zsh per-directory-history local/global indicator
# cpu_arch # CPU architecture
time # current time
# =========================[ Line #2 ]=========================
@@ -114,7 +117,7 @@
)
# Defines character set used by powerlevel10k. It's best to let `p10k configure` set it for you.
typeset -g POWERLEVEL9K_MODE=nerdfont-complete
typeset -g POWERLEVEL9K_MODE=nerdfont-v3
# When set to `moderate`, some icons will have an extra space after them. This is meant to avoid
# icon overlap when using non-monospace fonts. When set to `none`, spaces are not added.
typeset -g POWERLEVEL9K_ICON_PADDING=none
@@ -237,7 +240,7 @@
.java-version
.perl-version
.php-version
.tool-version
.tool-versions
.shorten_folder_marker
.svn
.terraform
@@ -344,7 +347,7 @@
#####################################[ vcs: git status ]######################################
# Branch icon. Set this parameter to '\UE0A0 ' for the popular Powerline branch icon.
typeset -g POWERLEVEL9K_VCS_BRANCH_ICON='\UE0A0 '
typeset -g POWERLEVEL9K_VCS_BRANCH_ICON='\uF126 '
# Untracked files icon. It's really a question mark, your font isn't broken.
# Change the value of this parameter to show a different icon.
@@ -423,11 +426,17 @@
res+=" ${modified}wip"
fi
if (( VCS_STATUS_COMMITS_AHEAD || VCS_STATUS_COMMITS_BEHIND )); then
# ⇣42 if behind the remote.
(( VCS_STATUS_COMMITS_BEHIND )) && res+=" ${clean}${VCS_STATUS_COMMITS_BEHIND}"
# ⇡42 if ahead of the remote; no leading space if also behind the remote: ⇣42⇡42.
(( VCS_STATUS_COMMITS_AHEAD && !VCS_STATUS_COMMITS_BEHIND )) && res+=" "
(( VCS_STATUS_COMMITS_AHEAD )) && res+="${clean}${VCS_STATUS_COMMITS_AHEAD}"
elif [[ -n $VCS_STATUS_REMOTE_BRANCH ]]; then
# Tip: Uncomment the next line to display '=' if up to date with the remote.
# res+=" ${clean}="
fi
# ⇠42 if behind the push remote.
(( VCS_STATUS_PUSH_COMMITS_BEHIND )) && res+=" ${clean}${VCS_STATUS_PUSH_COMMITS_BEHIND}"
(( VCS_STATUS_PUSH_COMMITS_AHEAD && !VCS_STATUS_PUSH_COMMITS_BEHIND )) && res+=" "
@@ -555,7 +564,7 @@
# Background jobs color.
typeset -g POWERLEVEL9K_BACKGROUND_JOBS_FOREGROUND=70
# Custom icon.
typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VISUAL_IDENTIFIER_EXPANSION=''
# typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VISUAL_IDENTIFIER_EXPANSION='⭐'
#######################[ direnv: direnv status (https://direnv.net/) ]########################
# Direnv color.
@@ -724,6 +733,12 @@
# Custom icon.
# typeset -g POWERLEVEL9K_NNN_VISUAL_IDENTIFIER_EXPANSION='⭐'
######################[ lf: lf shell (https://github.com/gokcehan/lf) ]#######################
# lf shell color.
typeset -g POWERLEVEL9K_LF_FOREGROUND=72
# Custom icon.
# typeset -g POWERLEVEL9K_LF_VISUAL_IDENTIFIER_EXPANSION='⭐'
##################[ xplr: xplr shell (https://github.com/sayanarijit/xplr) ]##################
# xplr shell color.
typeset -g POWERLEVEL9K_XPLR_FOREGROUND=72
@@ -746,12 +761,21 @@
# Nix shell color.
typeset -g POWERLEVEL9K_NIX_SHELL_FOREGROUND=74
# Display the icon of nix_shell if PATH contains a subdirectory of /nix/store.
# typeset -g POWERLEVEL9K_NIX_SHELL_INFER_FROM_PATH=false
# Tip: If you want to see just the icon without "pure" and "impure", uncomment the next line.
# typeset -g POWERLEVEL9K_NIX_SHELL_CONTENT_EXPANSION=
# Custom icon.
# typeset -g POWERLEVEL9K_NIX_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐'
##################[ chezmoi_shell: chezmoi shell (https://www.chezmoi.io/) ]##################
# chezmoi shell color.
typeset -g POWERLEVEL9K_CHEZMOI_SHELL_FOREGROUND=33
# Custom icon.
# typeset -g POWERLEVEL9K_CHEZMOI_SHELL_VISUAL_IDENTIFIER_EXPANSION='⭐'
##################################[ disk_usage: disk usage ]##################################
# Colors for different levels of disk usage.
typeset -g POWERLEVEL9K_DISK_USAGE_NORMAL_FOREGROUND=35
@@ -845,6 +869,19 @@
# Custom icon.
# typeset -g POWERLEVEL9K_TASKWARRIOR_VISUAL_IDENTIFIER_EXPANSION='⭐'
######[ per_directory_history: Oh My Zsh per-directory-history local/global indicator ]#######
# Color when using local/global history.
typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_FOREGROUND=135
typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_FOREGROUND=130
# Tip: Uncomment the next two lines to hide "local"/"global" text and leave just the icon.
# typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_CONTENT_EXPANSION=''
# typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_CONTENT_EXPANSION=''
# Custom icon.
# typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_LOCAL_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_PER_DIRECTORY_HISTORY_GLOBAL_VISUAL_IDENTIFIER_EXPANSION='⭐'
################################[ cpu_arch: CPU architecture ]################################
# CPU architecture color.
typeset -g POWERLEVEL9K_CPU_ARCH_FOREGROUND=172
@@ -981,6 +1018,11 @@
##############[ nvm: node.js version from nvm (https://github.com/nvm-sh/nvm) ]###############
# Nvm color.
typeset -g POWERLEVEL9K_NVM_FOREGROUND=70
# If set to false, hide node version if it's the same as default:
# $(nvm version current) == $(nvm version default).
typeset -g POWERLEVEL9K_NVM_PROMPT_ALWAYS_SHOW=false
# If set to false, hide node version if it's equal to "system".
typeset -g POWERLEVEL9K_NVM_SHOW_SYSTEM=true
# Custom icon.
# typeset -g POWERLEVEL9K_NVM_VISUAL_IDENTIFIER_EXPANSION='⭐'
@@ -1183,7 +1225,7 @@
#############[ kubecontext: current kubernetes context (https://kubernetes.io/) ]#############
# Show kubecontext only when the command you are typing invokes one of these tools.
# Tip: Remove the next line to always show kubecontext.
typeset -g POWERLEVEL9K_KUBECONTEXT_SHOW_ON_COMMAND='kubectl|helm|kubens|kubectx|oc|istioctl|kogito|k9s|helmfile|flux|fluxctl|stern|kubeseal|skaffold'
typeset -g POWERLEVEL9K_KUBECONTEXT_SHOW_ON_COMMAND='kubectl|helm|kubens|kubectx|oc|istioctl|kogito|k9s|helmfile|flux|fluxctl|stern|kubeseal|skaffold|kubent|kubecolor|cmctl|sparkctl'
# Kubernetes context classes for the purpose of using different colors, icons and expansions with
# different contexts.
@@ -1357,10 +1399,39 @@
# Show azure only when the command you are typing invokes one of these tools.
# Tip: Remove the next line to always show azure.
typeset -g POWERLEVEL9K_AZURE_SHOW_ON_COMMAND='az|terraform|pulumi|terragrunt'
# POWERLEVEL9K_AZURE_CLASSES is an array with even number of elements. The first element
# in each pair defines a pattern against which the current azure account name gets matched.
# More specifically, it's P9K_CONTENT prior to the application of context expansion (see below)
# that gets matched. If you unset all POWERLEVEL9K_AZURE_*CONTENT_EXPANSION parameters,
# you'll see this value in your prompt. The second element of each pair in
# POWERLEVEL9K_AZURE_CLASSES defines the account class. Patterns are tried in order. The
# first match wins.
#
# For example, given these settings:
#
# typeset -g POWERLEVEL9K_AZURE_CLASSES=(
# '*prod*' PROD
# '*test*' TEST
# '*' OTHER)
#
# If your current azure account is "company_test", its class is TEST because "company_test"
# doesn't match the pattern '*prod*' but does match '*test*'.
#
# You can define different colors, icons and content expansions for different classes:
#
# typeset -g POWERLEVEL9K_AZURE_TEST_FOREGROUND=28
# typeset -g POWERLEVEL9K_AZURE_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_AZURE_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <'
typeset -g POWERLEVEL9K_AZURE_CLASSES=(
# '*prod*' PROD # These values are examples that are unlikely
# '*test*' TEST # to match your needs. Customize them as needed.
'*' OTHER)
# Azure account name color.
typeset -g POWERLEVEL9K_AZURE_FOREGROUND=32
typeset -g POWERLEVEL9K_AZURE_OTHER_FOREGROUND=32
# Custom icon.
# typeset -g POWERLEVEL9K_AZURE_VISUAL_IDENTIFIER_EXPANSION='⭐'
# typeset -g POWERLEVEL9K_AZURE_OTHER_VISUAL_IDENTIFIER_EXPANSION='⭐'
##########[ gcloud: google cloud account and project (https://cloud.google.com/) ]###########
# Show gcloud only when the command you are typing invokes one of these tools.
@@ -1481,7 +1552,7 @@
typeset -g POWERLEVEL9K_VPN_IP_CONTENT_EXPANSION=
# Regular expression for the VPN network interface. Run `ifconfig` or `ip -4 a show` while on VPN
# to see the name of the interface.
typeset -g POWERLEVEL9K_VPN_IP_INTERFACE='(gpd|wg|(.*tun)|tailscale)[0-9]*'
typeset -g POWERLEVEL9K_VPN_IP_INTERFACE='(gpd|wg|(.*tun)|tailscale)[0-9]*|(zt.*)'
# If set to true, show one segment per matching network interface. If set to false, show only
# one segment corresponding to the first matching network interface.
# Tip: If you set it to true, you'll probably want to unset POWERLEVEL9K_VPN_IP_CONTENT_EXPANSION.
@@ -1526,7 +1597,7 @@
# Show battery in yellow when it's discharging.
typeset -g POWERLEVEL9K_BATTERY_DISCONNECTED_FOREGROUND=178
# Battery pictograms going from low to high level of charge.
typeset -g POWERLEVEL9K_BATTERY_STAGES='\uf58d\uf579\uf57a\uf57b\uf57c\uf57d\uf57e\uf57f\uf580\uf581\uf578'
typeset -g POWERLEVEL9K_BATTERY_STAGES='\UF008E\UF007A\UF007B\UF007C\UF007D\UF007E\UF007F\UF0080\UF0081\UF0082\UF0079'
# Don't show the remaining time to charge/discharge.
typeset -g POWERLEVEL9K_BATTERY_VERBOSE=false

View File

@@ -1,5 +1,5 @@
# Path shenanigans
export PATH="$PATH:~/.cargo/bin:~/.local/bin";
export PATH="$PATH:$HOME/.cargo/bin:$HOME/.local/bin";

View File

@@ -106,51 +106,6 @@ fi
PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
case "${TERM}" in
cons25*|linux) # plain BSD/Linux console
bindkey '\e[H' beginning-of-line # home
bindkey '\e[F' end-of-line # end
bindkey '\e[5~' delete-char # delete
bindkey '[D' emacs-backward-word # esc left
bindkey '[C' emacs-forward-word # esc right
;;
*rxvt*) # rxvt derivatives
bindkey '\eOc' forward-word # ctrl right
bindkey '\eOd' backward-word # ctrl left
bindkey '\e\e[D' backward-word ### Alt left
bindkey '\e\e[C' forward-word ### Alt right
# workaround for screen + urxvt
bindkey '\e[7~' beginning-of-line # home
bindkey '\e[8~' end-of-line # end
bindkey '^[[1~' beginning-of-line # home
bindkey '^[[4~' end-of-line # end
;;
*xterm*) # xterm derivatives
bindkey '\e[H' beginning-of-line # home
bindkey '\e[F' end-of-line # end
bindkey '\e[3~' delete-char # delete
bindkey '^[[C' forward-word # ctrl right
bindkey '^[[D' backward-word # ctrl left
bindkey '\eOC' forward-word # ctrl right
bindkey '\eOD' backward-word # ctrl left
bindkey '^[[1;3C' forward-word # alt right
bindkey '^[[1;3D' backward-word # alt left
# workaround for screen + xterm
bindkey '\e[1~' beginning-of-line # home
bindkey '\e[4~' end-of-line # end
;;
screen)
bindkey '^[[1~' beginning-of-line # home
bindkey '^[[4~' end-of-line # end
bindkey '\e[3~' delete-char # delete
bindkey '\eOc' forward-word # ctrl right
bindkey '\eOd' backward-word # ctrl left
bindkey '^[[1;5C' forward-word # ctrl right
bindkey '^[[1;5D' backward-word # ctrl left
;;
esac
setopt completealiases
setopt interactivecomments
@@ -167,9 +122,16 @@ zinit light romkatv/powerlevel10k
#zi ice tag1"<option1>" tag2"<option2>"
#zi load <repo/plugin>
zinit light zdharma-continuum/zinit-annex-patch-dl
zinit ice wait lucid
zinit light MichaelAquilina/zsh-you-should-use
zinit ice wait lucid
zinit light MichaelAquilina/zsh-autoswitch-virtualenv
zinit ice wait lucid
zinit light laggardkernel/zsh-thefuck
@@ -182,24 +144,18 @@ zinit ice wait lucid
zinit load 'wfxr/forgit'
# Vi mode :)
zinit ice depth=1
zinit light jeffreytse/zsh-vi-mode
#zinit ice depth=1
#zinit light jeffreytse/zsh-vi-mode
#zplug "plugins/virtualenv", from:oh-my-zsh
#zplug "plugins/pip", from:oh-my-zsh
#zplug "plugins/nmap", from:oh-my-zsh
#zplug "plugins/ipfs", from:oh-my-zsh
##zplug "plugins/gpg-agent", from:oh-my-zsh
#zplug "plugins/rsync", from:oh-my-zsh
#zplug "plugins/rust", from:oh-my-zsh
#zplug "plugins/git", from:oh-my-zsh
#zplug "plugins/colored-man-pages", from:oh-my-zsh
#zplug "plugins/command-not-found", from:oh-my-zsh
##zplug "plugins/tmux", from:oh-my-zsh
#zplug "plugins/urltools", from:oh-my-zsh
##zplug "plugins/thefuck", from:oh-my-zsh #Used interchangably with
##setopt correct #<-This option
## Load completion library for those sweet [tab] squares
#zplug "lib/completion", from:oh-my-zsh
##zplug "mollifier/anyframe", from:github
## Misc. visual tweaks
## zplug "modules/prompt", from:prezto
@@ -210,9 +166,20 @@ zinit light jeffreytse/zsh-vi-mode
## Syntax highlighting for commands, load last
#zplug "zsh-users/zsh-syntax-highlighting", from:github, defer:3
#zplug "Aloxaf/gencomp", defer:3
zinit snippet ~/.zsh_compl/zoxide
zinit snippet OMZP::pip
#zinit snippet OMZP::adb
zinit snippet OMZP::aliases
zinit snippet OMZP::encode64
#zinit snippet OMZP::fd
#zinit snippet OMZP::ripgrep
zinit snippet OMZP::nmap
#zinit snippet OMZP::ipfs
zinit snippet OMZP::rsync
zinit snippet OMZP::colored-man-pages
zinit snippet OMZP::rust
zinit snippet OMZP::zoxide
zinit snippet OMZL::completion.zsh
zinit snippet https://github.com/hyprwm/Hyprland/blob/main/hyprctl/hyprctl.zsh
zinit wait lucid for \
atinit"ZINIT[COMPINIT_OPTS]=-C; zicompinit; zicdreplay" \
@@ -222,7 +189,32 @@ zinit wait lucid for \
atload"!_zsh_autosuggest_start" \
zsh-users/zsh-autosuggestions
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
#[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
zinit pack"binary" for fzf
# GPG-SSH INTEGRATION
unset SSH_AGENT_PID
if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
fi
export GPG_TTY=$(tty)
gpg-connect-agent updatestartuptty /bye >/dev/null
[ "$TERM" = "xterm-kitty" ] && (alias ssh="command kitten ssh";)
[ "$TERMUX_APK_RELEASE" = "F_DROID" ] && (eval `okc-ssh-agent`)
preexec() { print -Pn "\e]0;$1\a" }
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
(( ! ${+functions[p10k]} )) || p10k finalize