├── .zshenv ├── LICENSE ├── MediaControl ├── README.md ├── config ├── bat │ ├── bat.config │ └── themes │ │ ├── Catppuccin-frappe.tmTheme │ │ ├── Catppuccin-latte.tmTheme │ │ ├── Catppuccin-macchiato.tmTheme │ │ └── Catppuccin-mocha.tmTheme ├── btop │ ├── btop.conf │ ├── btop.log │ └── themes │ │ ├── catppuccin_frappe.theme │ │ ├── catppuccin_latte.theme │ │ ├── catppuccin_macchiato.theme │ │ ├── catppuccin_mocha.theme │ │ └── tokyo-night.theme ├── cava │ ├── config │ └── shaders │ │ ├── bar_spectrum.frag │ │ ├── normalized_bars.frag │ │ └── pass_through.vert ├── dunst │ └── dunstrc ├── fcitx5 │ ├── conf │ │ ├── cached_layouts │ │ ├── chttrans.conf │ │ ├── classicui.conf │ │ ├── clipboard.conf │ │ ├── keyboard.conf │ │ ├── notifications.conf │ │ ├── pinyin.conf │ │ ├── punctuation.conf │ │ ├── waylandim.conf │ │ └── xim.conf │ ├── config │ ├── profile │ ├── profile_DV3Ysu │ └── themes │ │ └── FluentDark │ │ ├── arrow.png │ │ ├── back.png │ │ ├── next.png │ │ ├── panel.png │ │ ├── radio.png │ │ └── theme.conf ├── hypr │ ├── chino.mp4 │ ├── hyprland.conf │ ├── hyprland │ │ ├── animations.conf │ │ ├── autostart │ │ ├── decoration │ │ │ ├── blur.conf │ │ │ ├── opacity.conf │ │ │ ├── round.conf │ │ │ └── shadow.conf │ │ ├── dwinle.conf │ │ ├── env.conf │ │ ├── general.conf │ │ ├── gestures.conf │ │ ├── input.conf │ │ ├── keybinds │ │ │ ├── app.conf │ │ │ ├── bringtness.conf │ │ │ ├── dwinle_arror.conf │ │ │ ├── dwinle_hjkl.conf │ │ │ ├── group.conf │ │ │ ├── master.conf │ │ │ ├── other.conf │ │ │ ├── rofi.conf │ │ │ ├── term.conf │ │ │ ├── volume.conf │ │ │ ├── window.conf │ │ │ └── workspace.conf │ │ ├── master.conf │ │ ├── misc.conf │ │ └── windowrule.conf │ ├── icons │ │ ├── b0.png │ │ ├── b10.png │ │ ├── b100.png │ │ ├── b20.png │ │ ├── b30.png │ │ ├── b40.png │ │ ├── b50.png │ │ ├── b60.png │ │ ├── b70.png │ │ ├── b80.png │ │ ├── b90.png │ │ ├── battery_charging.png │ │ ├── battery_low.png │ │ ├── battery_mid.png │ │ ├── brightness-high.svg │ │ ├── brightness-low.svg │ │ ├── brightness-medium.svg │ │ ├── brightness-off.svg │ │ ├── gamma.png │ │ ├── resume.png │ │ ├── stop.png │ │ ├── volume_high.svg │ │ ├── volume_low.svg │ │ ├── volume_medium.svg │ │ ├── volume_muted.svg │ │ └── volume_off.svg │ ├── scripts │ │ ├── areaterm.sh │ │ ├── colorpicker │ │ ├── control │ │ │ ├── brightness │ │ │ └── volume │ │ ├── gtkthemes-bkp │ │ ├── other │ │ │ ├── transout │ │ │ ├── transout.speak │ │ │ └── write.sh │ │ ├── ramdomtext.py │ │ ├── rofi │ │ │ ├── askpass │ │ │ ├── launcher │ │ │ ├── music │ │ │ ├── powermenu │ │ │ ├── runner │ │ │ └── screenshot │ │ └── waybar │ │ │ ├── cycle.sh │ │ │ ├── wall │ │ │ └── waybar.sh │ ├── wallpaper │ │ ├── Clannad.png │ │ ├── Home.gif │ │ ├── Sakura.png │ │ └── StarDream.jpg │ └── wlogout │ │ ├── actions │ │ ├── icons │ │ ├── hibernate.png │ │ ├── lock.png │ │ ├── logout.png │ │ ├── reboot.png │ │ ├── shutdown.png │ │ └── suspend.png │ │ ├── layout │ │ └── style.css ├── mpd │ ├── database │ ├── log │ ├── mpd.conf │ ├── pid │ ├── playlists │ │ ├── 「10 Hz Alpha Thunderstorm」.m3u │ │ ├── 「東方钢琴祭:幻梦终醒 本无不散之宴」.m3u │ │ └── 「软萌合唱|让可愛治愈这个世界」.m3u │ ├── state │ └── sticker.sql ├── ncmpcpp │ ├── bindings │ ├── config │ ├── error.log │ └── lyrics │ │ ├── GET IN THE RING - Terminal Station.txt │ │ ├── QU4RTZ - Make-up session ABC.txt │ │ └── 阿澄佳奈新谷良子後藤邑子水橋かおり - でわっしょい.txt ├── nemo │ └── bookmark-metadata ├── neofetch │ └── config.conf ├── rofi │ ├── askpass.rasi │ ├── bluetooth.rasi │ ├── clipmenu.rasi │ ├── confirm.rasi │ ├── launcher.rasi │ ├── music.rasi │ ├── networkmenu.rasi │ ├── powermenu.rasi │ ├── runner.rasi │ ├── screenshot.rasi │ └── shared │ │ ├── colors.rasi │ │ └── fonts.rasi ├── waybar │ ├── config │ ├── configb │ ├── style.css │ └── style.cssb ├── wezterm │ ├── colors │ │ ├── rose-pine-dawn.toml │ │ ├── rose-pine-moon.toml │ │ ├── rose-pine.toml │ │ ├── tokyonight_day.toml │ │ ├── tokyonight_moon.toml │ │ ├── tokyonight_night.toml │ │ └── tokyonight_storm.toml │ ├── float.lua │ ├── lua │ │ ├── rose-pine-dawn.lua │ │ ├── rose-pine-moon.lua │ │ └── rose-pine.lua │ └── wezterm.lua └── zsh │ ├── .p10k.zsh │ ├── .zsh │ ├── aliases.zsh │ ├── env.zsh │ ├── fzf-keybind.zsh │ ├── fzf.zsh │ ├── fzf │ │ ├── bup │ │ ├── cani │ │ ├── efif │ │ ├── ffind │ │ ├── ffunctions │ │ ├── fhistory │ │ ├── fp │ │ ├── fps │ │ ├── fzf-find-widget │ │ ├── get_ip │ │ ├── kp │ │ ├── ks │ │ └── util │ └── keymaps.zsh │ └── .zshrc ├── install.sh └── local └── fonts └── 方正兰亭圆_GBK_中.ttf /.zshenv: -------------------------------------------------------------------------------- 1 | ZDOTDIR=$HOME/.config/zsh 2 | -------------------------------------------------------------------------------- /MediaControl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # ╔╦╗ ╦ ╦ ╔═╗ ╦ ╔═╗ 4 | # ║║║ ║ ║ ╚═╗ ║ ║ 5 | # ╩ ╩ ╚═╝ ╚═╝ ╩ ╚═╝ 6 | 7 | # author Niraj 8 | # github niraj998 9 | 10 | # ┌─┐┌─┐┌┐┌┌─┐┬┌─┐┬ ┬┬─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐ 11 | # │ │ ││││├┤ ││ ┬│ │├┬┘├─┤ │ ││ ││││└─┐ 12 | # └─┘└─┘┘└┘└ ┴└─┘└─┘┴└─┴ ┴ ┴ ┴└─┘┘└┘└─┘ 13 | 14 | # uncomment your music players below. 15 | # 16 | 17 | Control="MPD" 18 | [ -n "$(pgrep spotify)" ] && Control="spotify" 19 | # [ -n "$(pgrep brave-bin)" ] && Control="brave-bin" 20 | # [ -n "$(pgrep rhythmbox)" ] && Control="rhythmbox" 21 | # [ -n "$(pgrep audacious)" ] && Control="audacious" 22 | # [ -n "$(pgrep clementine)" ] && Control="clementine" 23 | # [ -n "$(pgrep strawberry)" ] && Control="strawberry" 24 | 25 | # saves covers here 26 | Cover=/tmp/cover.png 27 | # if cover not found in metadata use this instead 28 | bkpCover=~/.config/fallback.png 29 | # mpd music directory 30 | mpddir=/music 31 | 32 | # ┌─┐┬ ┌─┐┬ ┬┌─┐┬─┐┌─┐┌┬┐┬ ┌─┐┌─┐┬─┐┬┌─┐┌┬┐┌─┐ 33 | # ├─┘│ ├─┤└┬┘├┤ ├┬┘│ │ │ └─┐│ ├┬┘│├─┘ │ └─┐ 34 | # ┴ ┴─┘┴ ┴ ┴ └─┘┴└─└─┘ ┴ ┴─┘ └─┘└─┘┴└─┴┴ ┴ └─┘ 35 | 36 | ########################## Title ########################## 37 | title() { 38 | title=$(playerctl --player=$Control metadata --format {{title}}) 39 | [ -z "$title" ] && title="Play Something" 40 | echo "$title" 41 | } 42 | 43 | ########################## Artist ########################## 44 | artist() { 45 | artist=$(playerctl --player=$Control metadata --format {{artist}}) 46 | [ -z "$artist" ] && artist="Artist" 47 | echo "$artist" 48 | } 49 | 50 | ########################## Album ########################## 51 | album() { 52 | album=$(playerctl --player=$Control metadata --format {{album}}) 53 | [ -z "$album" ] && album="Album" 54 | echo "$album" 55 | } 56 | 57 | ########################## Status ########################## 58 | status() { 59 | status=$(playerctl --player=$Control status) 60 | [ -z "$status" ] && status="Stopped" 61 | echo "$status" 62 | } 63 | 64 | ########################## Time ########################## 65 | ctime() { 66 | time=$(playerctl --player=$Control position --format "{{ duration(position) }}") 67 | [ -z "$time" ] && time="0:00" 68 | echo "$time" 69 | } 70 | 71 | ########################## Length ########################## 72 | length() { 73 | length=$(playerctl --player=$Control metadata --format "{{ duration(mpris:length) }}") 74 | [ -z "$length" ] && length="0:00" 75 | echo "$length" 76 | } 77 | 78 | ########################## trackNumber ########################## 79 | playlist() { 80 | playlist=$(playerctl --player=$Control metadata xesam:trackNumber) 81 | [ -z "$playlist" ] && playlist="0" 82 | echo "$playlist" 83 | } 84 | 85 | ########################## Cover ########################## 86 | cover() { 87 | albumart="$(playerctl --player=$Control metadata mpris:artUrl | sed -e 's/open.spotify.com/i.scdn.co/g')" 88 | [ $(playerctl --player=$Control metadata mpris:artUrl) ] && curl -s "$albumart" --output $Cover || cp $bkpCover $Cover 89 | echo "$Cover" 90 | } 91 | 92 | ########################## Statusicon ########################## 93 | statusicon() { 94 | icon="" 95 | [ $(playerctl --player=$Control status) = "Playing" ] && icon="" 96 | [ $(playerctl --player=$Control status) = "Paused" ] && icon="" 97 | echo "$icon" 98 | } 99 | 100 | ########################## Lyrics ########################## 101 | lyrics() { 102 | Title=$(playerctl --player=$Control metadata --format {{title}}) 103 | Artist=$(playerctl --player=$Control metadata --format {{artist}}) 104 | URL="https://api.lyrics.ovh/v1/$Artist/$Title" 105 | lyrics=$(curl -s "$(echo "$URL" | sed s/" "/%20/g | sed s/"&"/%26/g | sed s/,/%2C/g | sed s/-/%2D/g)" | jq '.lyrics') 106 | [ "$lyrics" = "null" ] && lyrics=$(curl -s --get "https://makeitpersonal.co/lyrics" --data-urlencode "artist=$Artist" --data-urlencode "title=$Title") 107 | printf "$lyrics" | less 108 | } 109 | 110 | # ┌┬┐┌─┐┌┬┐ ┌─┐┌─┐┬─┐┬┌─┐┌┬┐┌─┐ 111 | # │││├─┘ ││ └─┐│ ├┬┘│├─┘ │ └─┐ 112 | # ┴ ┴┴ ─┴┘ └─┘└─┘┴└─┴┴ ┴ └─┘ 113 | 114 | ########################## Title ########################## 115 | mpctitle() { 116 | title=$(mpc -f %title% current) 117 | [ -z "$title" ] && title="Play Something" 118 | echo "$title" 119 | } 120 | 121 | ########################## Artist ########################## 122 | mpcartist() { 123 | artist=$(mpc -f %artist% current) 124 | [ -z "$artist" ] && artist="Artist" 125 | echo "$artist" 126 | } 127 | 128 | ########################## Album ########################## 129 | mpcalbum() { 130 | album=$(mpc -f %album% current) 131 | [ -z "$album" ] && album="Album" 132 | echo "$album" 133 | } 134 | 135 | ########################## Cover ########################## 136 | mpccover() { 137 | ffmpeg -i "$mpddir"/"$(mpc current -f %file%)" -vf scale=500:500 "${Cover}" -y || cp $bkpCover $Cover 138 | echo "$Cover" && exit 139 | } 140 | 141 | ## Cover for ncmpcpp ## 142 | ncmpcppcover() { 143 | ffmpeg -i "$mpddir"/"$(mpc current -f %file%)" -vf scale=500:500 "${Cover}" -y || cp $bkpCover $Cover 144 | exit 145 | } 146 | 147 | ########################## Time ########################## 148 | mpctime() { 149 | time=$(mpc status %currenttime%) 150 | [ -z "$time" ] && time="0:00" 151 | echo "$time" 152 | } 153 | 154 | ########################## Length ########################## 155 | mpclength() { 156 | length=$(mpc status %totaltime%) 157 | [ -z "$length" ] && length="0:00" 158 | echo "$length" 159 | } 160 | 161 | ########################## Icon ########################## 162 | mpcicon() { 163 | status=$(mpc status | head -2 | tail -1 | cut -c2-7) 164 | icon="" 165 | [ "$status" = "playin" ] && icon="" 166 | [ "$status" = "paused" ] && icon="" 167 | echo "$icon" 168 | } 169 | 170 | ########################## Status ########################## 171 | mpcstatus() { 172 | stat=$(mpc status | head -2 | tail -1 | cut -c2-7) 173 | status="Stopped" 174 | [ "$stat" = "playin" ] && status="Playing" 175 | [ "$stat" = "paused" ] && status="Paused" 176 | echo "$status" 177 | } 178 | 179 | ########################## Percent ########################## 180 | mpcperc() { 181 | perc=$(mpc status | grep "%)" | awk '{ print $4 }' | awk -F% '{ print $1 }' | awk 'sub(/^.{1}/,"")') 182 | [ -z "$perc" ] && perc="0" 183 | echo "$perc" 184 | } 185 | 186 | ########################## Playlist ########################## 187 | mpcsongpos() { 188 | playlist=$(mpc status %songpos%/%length%) 189 | [ -z "$playlist" ] && playlist="0/0" 190 | echo "$playlist" 191 | } 192 | 193 | ########################## Lyrics ########################## 194 | mpclyrics() { 195 | Title=$(mpc -f %title% current) 196 | Artist=$(mpc -f %artist% current) 197 | URL="https://api.lyrics.ovh/v1/$Artist/$Title" 198 | lyrics=$(curl -s "$(echo "$URL" | sed s/" "/%20/g | sed s/"&"/%26/g | sed s/,/%2C/g | sed s/-/%2D/g)" | jq '.lyrics') 199 | [ "$lyrics" = "null" ] && lyrics=$(curl -s --get "https://makeitpersonal.co/lyrics" --data-urlencode "artist=$Artist" --data-urlencode "title=$Title") 200 | printf "$lyrics" | less 201 | } 202 | 203 | # ┬ ┬┌─┐┬ ┌─┐ 204 | # ├─┤├┤ │ ├─┘ 205 | # ┴ ┴└─┘┴─┘┴ 206 | 207 | doc() { 208 | echo "Usage: 209 | MediaControl [Options] 210 | 211 | Options: 212 | --previous previous song 213 | --next next song 214 | --toggle toggle between play-pause song 215 | --stop stop song 216 | title shows title of current song 217 | album shows album of current song 218 | artist shows artist of current song 219 | status music status (playing/paused/stopped) 220 | statusicon music status icons (playing/paused/stopped) 221 | coverloc saves cover and shows location to cover of current song 222 | showcover opens cover using feh 223 | time shows current time of song 224 | length shows length of song 225 | percent shows percent song 226 | playlist shows playlist position of current song 227 | lyrics shows lyrics" 228 | } 229 | 230 | # ┌─┐┌─┐┌┬┐┬┌─┐┌┐┌┌─┐ 231 | # │ │├─┘ │ ││ ││││└─┐ 232 | # └─┘┴ ┴ ┴└─┘┘└┘└─┘ 233 | 234 | case $Control in 235 | MPD) 236 | case $1 in 237 | --next) mpc -q next ;; 238 | --previous) mpc -q prev ;; 239 | --toggle) mpc -q toggle ;; 240 | --stop) mpc -q stop ;; 241 | title) mpctitle ;; 242 | artist) mpcartist ;; 243 | album) mpcalbum ;; 244 | status) mpcstatus ;; 245 | statusicon) mpcicon ;; 246 | player) echo "$Control" ;; 247 | coverloc) mpccover ;; 248 | nccover) ncmpcppcover ;; 249 | showcover) mpccover | xargs feh ;; 250 | time) mpctime ;; 251 | length) mpclength ;; 252 | percent) mpcperc ;; 253 | playlist) mpcsongpos ;; 254 | lyrics) mpclyrics ;; 255 | *) doc ;; 256 | esac 257 | ;; 258 | *) 259 | case $1 in 260 | --next) playerctl --player=$Control next ;; 261 | --previous) playerctl --player=$Control previous ;; 262 | --toggle) playerctl --player=$Control play-pause ;; 263 | --stop) playerctl --player=$Control stop ;; 264 | title) title ;; 265 | artist) artist ;; 266 | album) album ;; 267 | status) status ;; 268 | statusicon) statusicon ;; 269 | player) echo "$Control" ;; 270 | coverloc) cover ;; 271 | showcover) cover | xargs feh ;; 272 | time) ctime ;; 273 | length) length ;; 274 | percent) echo "0" ;; 275 | playlist) playlist ;; 276 | lyrics) lyrics ;; 277 | *) doc ;; 278 | esac 279 | ;; 280 | esac 2>/dev/null 281 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | > [!WARNING] 2 | > 3 | > # **Move to [Buer-Nahida/flake](https://github.com/Buer-Nahida/flake)** 4 | 5 |
6 | 7 | ```ocaml 8 | ✨ Star Hyprland ✨ 9 | ``` 10 | 11 |

12 | 13 | 14 | 15 | 16 | 17 | 18 |

19 | 20 | # Gallery 21 | ![2023-08-19-05-35-02-full](https://github.com/SR-MyStar/Hyprdots/assets/139795416/d274043e-db40-4aa5-b6a4-1357b47f097d) 22 | ![2023-08-19-05-36-05-full](https://github.com/SR-MyStar/Hyprdots/assets/139795416/6fa1ba3b-febf-4a97-bfbb-bdd454ef914b) 23 | ![2023-08-19-05-36-27-full](https://github.com/SR-MyStar/Hyprdots/assets/139795416/8ef37ba7-ccb1-4193-ae1e-14b2500c1628) 24 | ![2023-08-19-05-36-35-full](https://github.com/SR-MyStar/Hyprdots/assets/139795416/109aa220-785f-4fec-b7e8-b1e6c67ef073) 25 | ![2023-08-19-05-37-22-full](https://github.com/SR-MyStar/Hyprdots/assets/139795416/9632b378-f866-4181-887a-150614d580c9) 26 | 27 | 28 | # Install 29 | 30 |
31 | 32 | > **Warning** 33 | > 34 | > **If you installed Hyprdots's main1.0 branch** 35 | > **You must remove all old's configs to install main2.0 branch!!!** 36 | 37 |
38 | 1. Install packages 39 | 40 | ```Bash 41 | yay -S hyprland wlroots xdg-desktop-portal-hyprland xorg-xwayland \ 42 | waybar-mpris-git waybar-hyprland-cava-git hyprpicker \ 43 | firefox \ 44 | mpv mpvpaper swww \ 45 | wf-recorder \ 46 | zsh \ 47 | wezterm \ 48 | wlogout \ 49 | dunst \ 50 | fcitx5 \ 51 | xfce-polkit \ 52 | cava \ 53 | python rust \ 54 | grim slurp \ 55 | jq \ 56 | wl-clipboard \ 57 | rofi \ 58 | lolcat \ 59 | nemo \ 60 | fortune-mod fortune-mod-zh \ 61 | lib32-pipewire lib32-pipewire-jack lib32-pipewire-v4l2 pipewire pipewire-alsa pipewire-docs pipewire-jack pipewire-pulse pipewire-roc pipewire-x11-bell pipewire-zeroconf \ 62 | highlight \ 63 | exa \ 64 | vim \ 65 | cowsay \ 66 | neofetch \ 67 | light \ 68 | libnotify \ 69 | bottom btop \ 70 | gtk-engine-murrine \ 71 | gnome-themes-extra lib32-gnome-themes-extra \ 72 | crow-translate \ 73 | python python3 \ 74 | catppuccin-mocha-dark-cursors \ 75 | mpd ncmpcpp \ 76 | slurp \ 77 | cliphist \ 78 | wget aria2 curl 79 | ``` 80 |
81 | 82 |
83 | 2. Install nerd-fonts 84 | 85 | ```Bash 86 | yay -S nerd-fonts-git 87 | ``` 88 | 89 |
90 | 91 |
92 | 3. Install Hyprdots 93 | 94 | ```Bash 95 | cd ~ 96 | git clone https://github.com/SR-MyStar/Hyprdots.git .hyprdots 97 | cd .hyprdots 98 | chmod +x ./install.sh 99 | ./install.sh 100 | ``` 101 | 102 |
103 | 104 | # Don't removed ~/.hyprdots directory!!! 105 | 106 |
107 | 108 |
109 | 110 |
111 | 4. Install & Apply themes 112 | 113 | ## Install Tokyonight gtk theme 114 | 115 | ```Bash 116 | git clone https://github.com/Fausto-Korpsvart/Tokyo-Night-GTK-Theme.git 117 | cd Tokyo-Night-GTK-Theme/ 118 | sudo mv themes/ /usr/share/themes/ 119 | cd .. 120 | rm -rv Tokyo-Night-GTK-Theme 121 | ``` 122 | 123 | ## Install Cursor theme 124 | 125 | ```Bash 126 | wget https://github.com/TeddyBearKilla/Afterglow-Cursors-Recolored/releases/download/Catppuccin/Afterglow-Recolored-Catppuccin-Blue-v3.tar.gz 127 | sudo mv Afterglow-Recolored-Catppuccin-Blue-v3 /usr/share/icons/Afterglow-Recolored-Catppuccin-Blue-v2 128 | ``` 129 | 130 | > **Warning** 131 | > 132 | > Cursor directory name is very important!!! 133 | > Because `gtkthemes-bkp` script is using cursor directory name to apply cursor theme!!! 134 | > Hyprland is using cursor directory name to apply cursor theme too!!! 135 | > So you must rename `Afterglow-Recolored-Catppuccin-Blue-v3` to `Afterglow-Recolored-Catppuccin-Blue-v2`!!! 136 | 137 | ## Install icon theme 138 | 139 | ```Bash 140 | yay -S papirus-folders 141 | ``` 142 | 143 | ## Apply themes 144 | 145 | ```Bash 146 | ~/.config/hypr/scripts/gtkthemes-bkp 147 | ``` 148 | 149 |
150 | -------------------------------------------------------------------------------- /config/bat/bat.config: -------------------------------------------------------------------------------- 1 | --theme="Catppuccin-mocha" 2 | -------------------------------------------------------------------------------- /config/btop/btop.conf: -------------------------------------------------------------------------------- 1 | #? Config file for btop v. 1.2.13 2 | 3 | #* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes. 4 | #* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes" 5 | color_theme = "/home/star/.config/btop/themes/catppuccin_mocha.theme" 6 | 7 | #* If the theme set background should be shown, set to False if you want terminal background transparency. 8 | theme_background = False 9 | 10 | #* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. 11 | truecolor = True 12 | 13 | #* Set to true to force tty mode regardless if a real tty has been detected or not. 14 | #* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols. 15 | force_tty = False 16 | 17 | #* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets. 18 | #* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box. 19 | #* Use whitespace " " as separator between different presets. 20 | #* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty" 21 | presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty" 22 | 23 | #* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists. 24 | #* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift. 25 | vim_keys = False 26 | 27 | #* Rounded corners on boxes, is ignored if TTY mode is ON. 28 | rounded_corners = False 29 | 30 | #* Default symbols to use for graph creation, "braille", "block" or "tty". 31 | #* "braille" offers the highest resolution but might not be included in all fonts. 32 | #* "block" has half the resolution of braille but uses more common characters. 33 | #* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY. 34 | #* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view. 35 | graph_symbol = "braille" 36 | 37 | # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". 38 | graph_symbol_cpu = "default" 39 | 40 | # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". 41 | graph_symbol_mem = "default" 42 | 43 | # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". 44 | graph_symbol_net = "default" 45 | 46 | # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". 47 | graph_symbol_proc = "default" 48 | 49 | #* Manually set which boxes to show. Available values are "cpu mem net proc", separate values with whitespace. 50 | shown_boxes = "proc cpu mem net" 51 | 52 | #* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs. 53 | update_ms = 500 54 | 55 | #* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct", 56 | #* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly. 57 | proc_sorting = "cpu lazy" 58 | 59 | #* Reverse sorting order, True or False. 60 | proc_reversed = False 61 | 62 | #* Show processes as a tree. 63 | proc_tree = False 64 | 65 | #* Use the cpu graph colors in the process list. 66 | proc_colors = True 67 | 68 | #* Use a darkening gradient in the process list. 69 | proc_gradient = True 70 | 71 | #* If process cpu usage should be of the core it's running on or usage of the total available cpu power. 72 | proc_per_core = True 73 | 74 | #* Show process memory as bytes instead of percent. 75 | proc_mem_bytes = True 76 | 77 | #* Show cpu graph for each process. 78 | proc_cpu_graphs = True 79 | 80 | #* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate) 81 | proc_info_smaps = False 82 | 83 | #* Show proc box on left side of screen instead of right. 84 | proc_left = False 85 | 86 | #* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). 87 | proc_filter_kernel = False 88 | 89 | #* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available. 90 | #* Select from a list of detected attributes from the options menu. 91 | cpu_graph_upper = "total" 92 | 93 | #* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available. 94 | #* Select from a list of detected attributes from the options menu. 95 | cpu_graph_lower = "total" 96 | 97 | #* Toggles if the lower CPU graph should be inverted. 98 | cpu_invert_lower = True 99 | 100 | #* Set to True to completely disable the lower CPU graph. 101 | cpu_single_graph = False 102 | 103 | #* Show cpu box at bottom of screen instead of top. 104 | cpu_bottom = False 105 | 106 | #* Shows the system uptime in the CPU box. 107 | show_uptime = True 108 | 109 | #* Show cpu temperature. 110 | check_temp = True 111 | 112 | #* Which sensor to use for cpu temperature, use options menu to select from list of available sensors. 113 | cpu_sensor = "Auto" 114 | 115 | #* Show temperatures for cpu cores also if check_temp is True and sensors has been found. 116 | show_coretemp = True 117 | 118 | #* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core. 119 | #* Use lm-sensors or similar to see which cores are reporting temperatures on your machine. 120 | #* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries. 121 | #* Example: "4:0 5:1 6:3" 122 | cpu_core_map = "" 123 | 124 | #* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine". 125 | temp_scale = "celsius" 126 | 127 | #* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024. 128 | base_10_sizes = True 129 | 130 | #* Show CPU frequency. 131 | show_cpu_freq = True 132 | 133 | #* Draw a clock at top of screen, formatting according to strftime, empty string to disable. 134 | #* Special formatting: /host = hostname | /user = username | /uptime = system uptime 135 | clock_format = "%X" 136 | 137 | #* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort. 138 | background_update = True 139 | 140 | #* Custom cpu model name, empty string to disable. 141 | custom_cpu_name = "" 142 | 143 | #* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ". 144 | #* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user". 145 | disks_filter = "" 146 | 147 | #* Show graphs instead of meters for memory values. 148 | mem_graphs = True 149 | 150 | #* Show mem box below net box instead of above. 151 | mem_below_net = False 152 | 153 | #* Count ZFS ARC in cached and available memory. 154 | zfs_arc_cached = True 155 | 156 | #* If swap memory should be shown in memory box. 157 | show_swap = True 158 | 159 | #* Show swap as a disk, ignores show_swap value above, inserts itself after first disk. 160 | swap_disk = True 161 | 162 | #* If mem box should be split to also show disks info. 163 | show_disks = False 164 | 165 | #* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar. 166 | only_physical = True 167 | 168 | #* Read disks list from /etc/fstab. This also disables only_physical. 169 | use_fstab = True 170 | 171 | #* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool) 172 | zfs_hide_datasets = False 173 | 174 | #* Set to true to show available disk space for privileged users. 175 | disk_free_priv = False 176 | 177 | #* Toggles if io activity % (disk busy time) should be shown in regular disk usage view. 178 | show_io_stat = True 179 | 180 | #* Toggles io mode for disks, showing big graphs for disk read/write speeds. 181 | io_mode = False 182 | 183 | #* Set to True to show combined read/write io graphs in io mode. 184 | io_graph_combined = False 185 | 186 | #* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ". 187 | #* Example: "/mnt/media:100 /:20 /boot:1". 188 | io_graph_speeds = "" 189 | 190 | #* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False. 191 | net_download = 100 192 | 193 | net_upload = 100 194 | 195 | #* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest. 196 | net_auto = True 197 | 198 | #* Sync the auto scaling for download and upload to whichever currently has the highest scale. 199 | net_sync = True 200 | 201 | #* Starts with the Network Interface specified here. 202 | net_iface = "" 203 | 204 | #* Show battery stats in top right if battery is present. 205 | show_battery = False 206 | 207 | #* Which battery to use if multiple are present. "Auto" for auto detection. 208 | selected_battery = "Auto" 209 | 210 | #* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". 211 | #* The level set includes all lower levels, i.e. "DEBUG" will show all logging info. 212 | log_level = "WARNING" -------------------------------------------------------------------------------- /config/btop/btop.log: -------------------------------------------------------------------------------- 1 | 2 | 2022/09/02 (13:03:22) | ===> btop++ v.1.2.9 3 | 2022/09/02 (13:03:22) | ERROR: Invalid RGB decimal value: "ba1a84" 4 | 5 | 2022/09/05 (18:51:51) | ===> btop++ v.1.2.9 6 | 2022/09/05 (18:51:51) | ERROR: Stall in Runner thread, restarting! 7 | -------------------------------------------------------------------------------- /config/btop/themes/catppuccin_frappe.theme: -------------------------------------------------------------------------------- 1 | theme[main_bg]="#303446" 2 | theme[main_fg]="#C6D0F5" 3 | theme[title]="#C6D0F5" 4 | theme[hi_fg]="#8CAAEE" 5 | theme[selected_bg]="#51576D" 6 | theme[selected_fg]="#8CAAEE" 7 | theme[inactive_fg]="#838BA7" 8 | theme[graph_text]="#F2D5CF" 9 | theme[meter_bg]="#51576D" 10 | theme[proc_misc]="#F2D5CF" 11 | theme[cpu_box]="#85C1DC" 12 | theme[mem_box]="#A6D189" 13 | theme[net_box]="#CA9EE6" 14 | theme[proc_box]="#EEBEBE" 15 | theme[div_line]="#737994" 16 | theme[temp_start]="#E5C890" 17 | theme[temp_mid]="#EF9F76" 18 | theme[temp_end]="#E78284" 19 | theme[cpu_start]="#85C1DC" 20 | theme[cpu_mid]="#99D1DB" 21 | theme[cpu_end]="#81C8BE" 22 | theme[free_start]="#81C8BE" 23 | theme[free_mid]="#81C8BE" 24 | theme[free_end]="#A6D189" 25 | theme[cached_start]="#F4B8E4" 26 | theme[cached_mid]="#F4B8E4" 27 | theme[cached_end]="#CA9EE6" 28 | theme[available_start]="#F2D5CF" 29 | theme[available_mid]="#EEBEBE" 30 | theme[available_end]="#EEBEBE" 31 | theme[used_start]="#EF9F76" 32 | theme[used_mid]="#EF9F76" 33 | theme[used_end]="#E78284" 34 | theme[download_start]="#BABBF1" 35 | theme[download_mid]="#BABBF1" 36 | theme[download_end]="#CA9EE6" 37 | theme[upload_start]="#BABBF1" 38 | theme[upload_mid]="#BABBF1" 39 | theme[upload_end]="#CA9EE6" 40 | theme[process_start]="#85C1DC" 41 | theme[process_mid]="#99D1DB" 42 | theme[process_end]="#81C8BE" 43 | -------------------------------------------------------------------------------- /config/btop/themes/catppuccin_latte.theme: -------------------------------------------------------------------------------- 1 | theme[main_bg]="#EFF1F5" 2 | theme[main_fg]="#4C4F69" 3 | theme[title]="#4C4F69" 4 | theme[hi_fg]="#1E66F5" 5 | theme[selected_bg]="#BCC0CC" 6 | theme[selected_fg]="#1E66F5" 7 | theme[inactive_fg]="#8C8FA1" 8 | theme[graph_text]="#DC8A78" 9 | theme[meter_bg]="#BCC0CC" 10 | theme[proc_misc]="#DC8A78" 11 | theme[cpu_box]="#209FB5" 12 | theme[mem_box]="#40A02B" 13 | theme[net_box]="#8839EF" 14 | theme[proc_box]="#DD7878" 15 | theme[div_line]="#9CA0B0" 16 | theme[temp_start]="#DF8E1D" 17 | theme[temp_mid]="#FE640B" 18 | theme[temp_end]="#D20F39" 19 | theme[cpu_start]="#209FB5" 20 | theme[cpu_mid]="#04A5E5" 21 | theme[cpu_end]="#179299" 22 | theme[free_start]="#179299" 23 | theme[free_mid]="#179299" 24 | theme[free_end]="#40A02B" 25 | theme[cached_start]="#EA76CB" 26 | theme[cached_mid]="#EA76CB" 27 | theme[cached_end]="#8839EF" 28 | theme[available_start]="#DC8A78" 29 | theme[available_mid]="#DD7878" 30 | theme[available_end]="#DD7878" 31 | theme[used_start]="#FE640B" 32 | theme[used_mid]="#FE640B" 33 | theme[used_end]="#D20F39" 34 | theme[download_start]="#7287FD" 35 | theme[download_mid]="#7287FD" 36 | theme[download_end]="#8839EF" 37 | theme[upload_start]="#7287FD" 38 | theme[upload_mid]="#7287FD" 39 | theme[upload_end]="#8839EF" 40 | theme[process_start]="#209FB5" 41 | theme[process_mid]="#04A5E5" 42 | theme[process_end]="#179299" 43 | -------------------------------------------------------------------------------- /config/btop/themes/catppuccin_macchiato.theme: -------------------------------------------------------------------------------- 1 | theme[main_bg]="#24273A" 2 | theme[main_fg]="#CAD3F5" 3 | theme[title]="#CAD3F5" 4 | theme[hi_fg]="#8AADF4" 5 | theme[selected_bg]="#494D64" 6 | theme[selected_fg]="#8AADF4" 7 | theme[inactive_fg]="#8087A2" 8 | theme[graph_text]="#F4DBD6" 9 | theme[meter_bg]="#494D64" 10 | theme[proc_misc]="#F4DBD6" 11 | theme[cpu_box]="#7DC4E4" 12 | theme[mem_box]="#A6DA95" 13 | theme[net_box]="#C6A0F6" 14 | theme[proc_box]="#F0C6C6" 15 | theme[div_line]="#6E738D" 16 | theme[temp_start]="#EED49F" 17 | theme[temp_mid]="#F5A97F" 18 | theme[temp_end]="#ED8796" 19 | theme[cpu_start]="#7DC4E4" 20 | theme[cpu_mid]="#91D7E3" 21 | theme[cpu_end]="#8BD5CA" 22 | theme[free_start]="#8BD5CA" 23 | theme[free_mid]="#8BD5CA" 24 | theme[free_end]="#A6DA95" 25 | theme[cached_start]="#F5BDE6" 26 | theme[cached_mid]="#F5BDE6" 27 | theme[cached_end]="#C6A0F6" 28 | theme[available_start]="#F4DBD6" 29 | theme[available_mid]="#F0C6C6" 30 | theme[available_end]="#F0C6C6" 31 | theme[used_start]="#F5A97F" 32 | theme[used_mid]="#F5A97F" 33 | theme[used_end]="#ED8796" 34 | theme[download_start]="#B7BDF8" 35 | theme[download_mid]="#B7BDF8" 36 | theme[download_end]="#C6A0F6" 37 | theme[upload_start]="#B7BDF8" 38 | theme[upload_mid]="#B7BDF8" 39 | theme[upload_end]="#C6A0F6" 40 | theme[process_start]="#7DC4E4" 41 | theme[process_mid]="#91D7E3" 42 | theme[process_end]="#8BD5CA" 43 | -------------------------------------------------------------------------------- /config/btop/themes/catppuccin_mocha.theme: -------------------------------------------------------------------------------- 1 | theme[main_bg]="#1E1E2E" 2 | theme[main_fg]="#CDD6F4" 3 | theme[title]="#CDD6F4" 4 | theme[hi_fg]="#89B4FA" 5 | theme[selected_bg]="#45475A" 6 | theme[selected_fg]="#89B4FA" 7 | theme[inactive_fg]="#7F849C" 8 | theme[graph_text]="#F5E0DC" 9 | theme[meter_bg]="#45475A" 10 | theme[proc_misc]="#F5E0DC" 11 | theme[cpu_box]="#74C7EC" 12 | theme[mem_box]="#A6E3A1" 13 | theme[net_box]="#CBA6F7" 14 | theme[proc_box]="#F2CDCD" 15 | theme[div_line]="#6C7086" 16 | theme[temp_start]="#F9E2AF" 17 | theme[temp_mid]="#FAB387" 18 | theme[temp_end]="#F38BA8" 19 | theme[cpu_start]="#74C7EC" 20 | theme[cpu_mid]="#89DCEB" 21 | theme[cpu_end]="#94E2D5" 22 | theme[free_start]="#94E2D5" 23 | theme[free_mid]="#94E2D5" 24 | theme[free_end]="#A6E3A1" 25 | theme[cached_start]="#F5C2E7" 26 | theme[cached_mid]="#F5C2E7" 27 | theme[cached_end]="#CBA6F7" 28 | theme[available_start]="#F5E0DC" 29 | theme[available_mid]="#F2CDCD" 30 | theme[available_end]="#F2CDCD" 31 | theme[used_start]="#FAB387" 32 | theme[used_mid]="#FAB387" 33 | theme[used_end]="#F38BA8" 34 | theme[download_start]="#B4BEFE" 35 | theme[download_mid]="#B4BEFE" 36 | theme[download_end]="#CBA6F7" 37 | theme[upload_start]="#B4BEFE" 38 | theme[upload_mid]="#B4BEFE" 39 | theme[upload_end]="#CBA6F7" 40 | theme[process_start]="#74C7EC" 41 | theme[process_mid]="#89DCEB" 42 | theme[process_end]="#94E2D5" 43 | -------------------------------------------------------------------------------- /config/btop/themes/tokyo-night.theme: -------------------------------------------------------------------------------- 1 | # Theme: tokyo-night 2 | # By: Pascal Jaeger 3 | 4 | # Main bg 5 | theme[main_bg]="#1a1b26" 6 | 7 | # Main text color 8 | theme[main_fg]="#cfc9c2" 9 | 10 | # Title color for boxes 11 | theme[title]="#cfc9c2" 12 | 13 | # Higlight color for keyboard shortcuts 14 | theme[hi_fg]="#7dcfff" 15 | 16 | # Background color of selected item in processes box 17 | theme[selected_bg]="#414868" 18 | 19 | # Foreground color of selected item in processes box 20 | theme[selected_fg]="#cfc9c2" 21 | 22 | # Color of inactive/disabled text 23 | theme[inactive_fg]="#565f89" 24 | 25 | # Misc colors for processes box including mini cpu graphs, details memory graph and details status text 26 | theme[proc_misc]="#7dcfff" 27 | 28 | # Cpu box outline color 29 | theme[cpu_box]="#565f89" 30 | 31 | # Memory/disks box outline color 32 | theme[mem_box]="#565f89" 33 | 34 | # Net up/down box outline color 35 | theme[net_box]="#565f89" 36 | 37 | # Processes box outline color 38 | theme[proc_box]="#565f89" 39 | 40 | # Box divider line and small boxes line color 41 | theme[div_line]="#565f89" 42 | 43 | # Temperature graph colors 44 | theme[temp_start]="#9ece6a" 45 | theme[temp_mid]="#e0af68" 46 | theme[temp_end]="#f7768e" 47 | 48 | # CPU graph colors 49 | theme[cpu_start]="#9ece6a" 50 | theme[cpu_mid]="#e0af68" 51 | theme[cpu_end]="#f7768e" 52 | 53 | # Mem/Disk free meter 54 | theme[free_start]="#9ece6a" 55 | theme[free_mid]="#e0af68" 56 | theme[free_end]="#f7768e" 57 | 58 | # Mem/Disk cached meter 59 | theme[cached_start]="#9ece6a" 60 | theme[cached_mid]="#e0af68" 61 | theme[cached_end]="#f7768e" 62 | 63 | # Mem/Disk available meter 64 | theme[available_start]="#9ece6a" 65 | theme[available_mid]="#e0af68" 66 | theme[available_end]="#f7768e" 67 | 68 | # Mem/Disk used meter 69 | theme[used_start]="#9ece6a" 70 | theme[used_mid]="#e0af68" 71 | theme[used_end]="#f7768e" 72 | 73 | # Download graph colors 74 | theme[download_start]="#9ece6a" 75 | theme[download_mid]="#e0af68" 76 | theme[download_end]="#f7768e" 77 | 78 | # Upload graph colors 79 | theme[upload_start]="#9ece6a" 80 | theme[upload_mid]="#e0af68" 81 | theme[upload_end]="#f7768e" 82 | -------------------------------------------------------------------------------- /config/cava/config: -------------------------------------------------------------------------------- 1 | ## Configuration file for CAVA. Default values are commented out. Use either ';' or '#' for commenting. 2 | 3 | 4 | [general] 5 | 6 | # Smoothing mode. Can be 'normal', 'scientific' or 'waves'. 7 | mode = normal 8 | 9 | # Accepts only non-negative values. 10 | framerate = 60 11 | 12 | # 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off 13 | # 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. 14 | ; autosens = 1 15 | ; overshoot = 20 16 | 17 | # Manual sensitivity in %. Autosens must be turned off for this to take effect. 18 | # 200 means double height. Accepts only non-negative values. 19 | ; sensitivity = 100 20 | 21 | # The number of bars (0-200). 0 sets it to auto (fill up console). 22 | # Bars' width and space between bars in number of characters. 23 | bars = 0 24 | bar_width = 4 25 | bar_spacing = 1 26 | 27 | # Lower and higher cutoff frequencies for lowest and highest bars 28 | # the bandwidth of the visualizer. 29 | # Note: there is a minimum total bandwidth of 43Mhz x number of bars. 30 | # Cava will automatically increase the higher cutoff if a too low band is specified. 31 | ; lower_cutoff_freq = 50 32 | ; higher_cutoff_freq = 10000 33 | 34 | 35 | 36 | [input] 37 | 38 | # Audio capturing method. Possible methods are: 'pulse', 'alsa' or 'fifo'. 39 | # Defaults to 'pulse', 'alsa' or 'fifo', in that order, dependent on what support cava was built with. 40 | # 41 | # All input methods uses the same config variable 'source' 42 | # to define where it should get the audio. 43 | # 44 | # For pulseaudio 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink 45 | # (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them). 46 | # 47 | # For alsa 'source' will be the capture device. 48 | # For fifo 'source' will be the path to fifo-file. 49 | ; method = pulse 50 | ; source = auto 51 | 52 | method = alsa 53 | source = pipewire 54 | 55 | ; method = fifo 56 | ; source = /tmp/mpd.fifo 57 | 58 | 59 | 60 | [output] 61 | 62 | # Ouput method. Can be 'ncurses', 'noncurses' or 'raw'. 63 | # 'noncurses' is for systems that does not suport ncurses. 64 | # 'raw' is a 16 bit data stream of the bar heights that can be used to send to other applications. 65 | # 'raw' defaults to 200 bars, which can be adjusted in the 'bars' option above. 66 | method = ncurses 67 | 68 | # Visual styles. Can be 'stereo' or 'mono'. 69 | # 'stereo' mirrors both channels with low frequencies in center. 70 | # 'mono' averages both channels and outputs left to right lowest to highest frequencies. 71 | style = mono 72 | 73 | # Raw output target. A fifo will be created if target does not exist. 74 | ; raw_target = /dev/stdout 75 | 76 | # Raw data format. Can be 'binary' or 'ascii'. 77 | ; data_format = binary 78 | 79 | # Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530). 80 | ; bit_format = 16bit 81 | 82 | # Ascii max value. In 'ascii' mode range will run from 0 to value specified here 83 | ; ascii_max_range = 1000 84 | 85 | # Ascii delimiters. In ascii format each bar and frame is separated by a delimiters. 86 | # Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)). 87 | ; bar_delimiter = 59 88 | ; frame_delimiter = 10 89 | 90 | 91 | 92 | # [color] 93 | 94 | # # Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow. 95 | # # Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires a 96 | # # terminal that can change color definitions such as Gnome-terminal or rxvt. 97 | # ; background = black 98 | # ; foreground = cyan 99 | 100 | # # Gradient mode, only hex defined colors are supported, background must also be defined in hex 101 | # # or remain commented out. 1 = on, 0 = off. Warning: for certain terminal emulators cava will 102 | # # not able to restore color definitions on exit, simply restart your terminal to restore colors. 103 | # gradient = 1 104 | # gradient_color_1 = '#0099ff' 105 | # gradient_color_2 = '#ff3399' 106 | 107 | 108 | 109 | [smoothing] 110 | 111 | # Multiplier for the integral smoothing calculations. Takes values from 0-0.99. 112 | # Higher values means smoother, but less precise. Set to 0 to disable. 113 | ; integral = 0.7 114 | 115 | # Disables or enables the so-called "Monstercat smoothing". Set to 0 to disable. 116 | ; monstercat = 1 117 | ; waves = 1 118 | 119 | # Set gravity multiplier for "drop off". Higher values means bars will drop faster. 120 | # Accepts only non-negative values. 0.5 means half gravity, 2 means double. Set to 0 to disable "drop off". 121 | ; gravity = 1 122 | 123 | 124 | # In bar height, bars that would have been lower that this will not be drawn. 125 | ; ignore = 0 126 | 127 | 128 | [eq] 129 | 130 | # This one is tricky. You can have as much keys as you want. 131 | # Remember to uncomment more then one key! More keys = more precision. 132 | # Look at readme.md on github for further explanations and examples. 133 | ; 1 = 1 # bass 134 | ; 2 = 1 135 | ; 3 = 1 # midtone 136 | ; 4 = 1 137 | ; 5 = 1 # treble 138 | 139 | 140 | #[color] 141 | 142 | ##background = '#191724' 143 | #gradient = 1 144 | #gradient_count = 6 145 | #gradient_color_1 = '#31748f' 146 | #gradient_color_2 = '#9ccfd8' 147 | #gradient_color_3 = '#c4a7e7' 148 | #gradient_color_4 = '#ebbcba' 149 | #gradient_color_5 = '#f6c177' 150 | #gradient_color_6 = '#eb6f92' 151 | 152 | [color] 153 | 154 | gradient = 1 155 | 156 | gradient_count = 8 157 | gradient_color_1 = '#87ADFF' 158 | gradient_color_2 = '#86A9F2' 159 | gradient_color_3 = '#8EAEF3' 160 | gradient_color_4 = '#91AEEC' 161 | gradient_color_5 = '#9DB8F2' 162 | gradient_color_6 = '#9FB7EA' 163 | gradient_color_7 = '#A9BEEE' 164 | gradient_color_8 = '#AFC3EE' 165 | -------------------------------------------------------------------------------- /config/cava/shaders/bar_spectrum.frag: -------------------------------------------------------------------------------- 1 | #version 330 2 | 3 | in vec2 fragCoord; 4 | out vec4 fragColor; 5 | 6 | // bar values. defaults to left channels first (low to high), then right (high to low). 7 | uniform float bars[512]; 8 | 9 | uniform int bars_count; // number of bars (left + right) (configurable) 10 | uniform int bar_width; // bar width (configurable), not used here 11 | uniform int bar_spacing; // space bewteen bars (configurable) 12 | 13 | uniform vec3 u_resolution; // window resolution 14 | 15 | //colors, configurable in cava config file (r,g,b) (0.0 - 1.0) 16 | uniform vec3 bg_color; // background color 17 | uniform vec3 fg_color; // foreground color 18 | 19 | uniform int gradient_count; 20 | uniform vec3 gradient_colors[8]; // gradient colors 21 | 22 | vec3 normalize_C(float y,vec3 col_1, vec3 col_2, float y_min, float y_max) 23 | { 24 | //create color based on fraction of this color and next color 25 | float yr = (y - y_min) / (y_max - y_min); 26 | return col_1 * (1.0 - yr) + col_2 * yr; 27 | } 28 | 29 | void main() 30 | { 31 | // find which bar to use based on where we are on the x axis 32 | float x = u_resolution.x * fragCoord.x; 33 | int bar = int(bars_count * fragCoord.x); 34 | 35 | //calculate a bar size 36 | float bar_size = u_resolution.x / bars_count; 37 | 38 | //the y coordinate and bar values are the same 39 | float y = bars[bar]; 40 | 41 | // make sure there is a thin line at bottom 42 | if (y * u_resolution.y < 1.0) 43 | { 44 | y = 1.0 / u_resolution.y; 45 | } 46 | 47 | //draw the bar up to current height 48 | if (y > fragCoord.y) 49 | { 50 | //make some space between bars basen on settings 51 | if (x > (bar + 1) * (bar_size) - bar_spacing) 52 | { 53 | fragColor = vec4(bg_color,1.0); 54 | } 55 | else 56 | { 57 | if (gradient_count == 0) 58 | { 59 | fragColor = vec4(fg_color,1.0); 60 | } 61 | else 62 | { 63 | //find which color in the configured gradient we are at 64 | int color = int((gradient_count - 1) * fragCoord.y); 65 | 66 | //find where on y this and next color is supposed to be 67 | float y_min = color / (gradient_count - 1.0); 68 | float y_max = (color + 1.0) / (gradient_count - 1.0); 69 | 70 | //make color 71 | fragColor = vec4(normalize_C(fragCoord.y, gradient_colors[color], gradient_colors[color + 1], y_min, y_max), 1.0); 72 | } 73 | } 74 | } 75 | else 76 | { 77 | fragColor = vec4(bg_color,1.0); 78 | } 79 | } -------------------------------------------------------------------------------- /config/cava/shaders/normalized_bars.frag: -------------------------------------------------------------------------------- 1 | #version 330 2 | 3 | in vec2 fragCoord; 4 | out vec4 fragColor; 5 | 6 | // bar values. defaults to left channels first (low to high), then right (high to low). 7 | uniform float bars[512]; 8 | 9 | uniform int bars_count; // number of bars (left + right) (configurable) 10 | 11 | uniform vec3 u_resolution; // window resolution, not used here 12 | 13 | //colors, configurable in cava config file 14 | uniform vec3 bg_color; // background color(r,g,b) (0.0 - 1.0), not used here 15 | uniform vec3 fg_color; // foreground color, not used here 16 | 17 | float normalize_C(float x, float x_min, float x_max, float r_min, float r_max ) 18 | { 19 | float xr; 20 | xr = (r_max-r_min) * (x - x_min) / (x_max - x_min) + r_min; 21 | return xr; 22 | } 23 | 24 | void main() 25 | { 26 | // find which bar to use based on where we are on the x axis 27 | int bar = int(bars_count * fragCoord.x); 28 | 29 | // create a normal along the y axis based on the bar height 30 | float x = normalize_C(fragCoord.y, 1.0, 0.0, 0.0, bars[bar]); 31 | 32 | // set color 33 | fragColor.r=fg_color.x*x; 34 | fragColor.g=fg_color.y*x; 35 | fragColor.b=fg_color.z*x; 36 | fragColor.a=1.0; 37 | 38 | } 39 | -------------------------------------------------------------------------------- /config/cava/shaders/pass_through.vert: -------------------------------------------------------------------------------- 1 | #version 330 2 | 3 | 4 | // Input vertex data, different for all executions of this shader. 5 | layout(location = 0) in vec3 vertexPosition_modelspace; 6 | 7 | // Output data ; will be interpolated for each fragment. 8 | out vec2 fragCoord; 9 | 10 | void main() 11 | { 12 | gl_Position = vec4(vertexPosition_modelspace,1); 13 | fragCoord = (vertexPosition_modelspace.xy+vec2(1,1))/2.0; 14 | } 15 | -------------------------------------------------------------------------------- /config/dunst/dunstrc: -------------------------------------------------------------------------------- 1 | [global] 2 | 3 | # --- Display --- # 4 | 5 | # The monitor to be displayed to 6 | monitor = 0 7 | 8 | # Follow monitor with mouse 9 | follow = mouse 10 | 11 | width = 300 12 | # height = 260 13 | origin = bottom-right 14 | offset = 24x24 15 | 16 | 17 | progress_bar = true 18 | progress_bar_height = 14 19 | progress_bar_frame_width = 1 20 | progress_bar_min_width = 150 21 | progress_bar_max_width = 300 22 | 23 | 24 | # Show how many messages are hidden 25 | indicate_hidden = yes 26 | 27 | # Shrink window if it's smaller than the width. 28 | shrink = no 29 | 30 | # The transparency of the window. 31 | transparency = 1 32 | 33 | # Draw a line between multiple notifications 34 | separator_height = 6 35 | 36 | separator_color = "#00000000" 37 | 38 | # Set notification padding 39 | padding = 16 40 | horizontal_padding = 16 41 | 42 | # Disable frame (border) 43 | frame_width = 0 44 | 45 | # Sort messages by urgency. 46 | sort = no 47 | 48 | # Disable idle time 49 | idle_threshold = 0 50 | 51 | 52 | # --- Text --- # 53 | 54 | # Set the font 55 | # font = "Noto Sans 11" 56 | font = "FZLanTingYuan-DB1-GBK 11" 57 | 58 | # Set line height to font height 59 | line_height = 0 60 | 61 | # Reference for markup and formatting: 62 | # bold 63 | # italic 64 | # strikethrough 65 | # underline 66 | # . 67 | # %a appname 68 | # %s summary 69 | # %b body 70 | # %i iconname (including its path) 71 | # %I iconname (without its path) 72 | # %p progress value if set ([ 0%] to [100%]) or nothing 73 | # %n progress value if set without any extra characters 74 | # %% Literal % 75 | 76 | markup = full 77 | format = "%a\n%s" 78 | 79 | # Left align the text 80 | alignment = left 81 | 82 | # Vertical alignment of message text and icon. 83 | vertical_alignment = center 84 | 85 | # Show age of message if message is old 86 | show_age_threshold = 120 87 | 88 | # Wrap text if it doesn't fit in geometry 89 | word_wrap = yes 90 | 91 | # Where to place ellipses if word wrap is disabled 92 | # ellipsize = middle 93 | 94 | # Use newlines '\n' in notifications. 95 | ignore_newline = no 96 | 97 | # Don't stack together notifications 98 | stack_duplicates = false 99 | 100 | # Hide the count of stacked notifications 101 | # hide_duplicate_count = false 102 | 103 | # Display indicators for URLs (U) and actions (A). 104 | show_indicators = yes 105 | 106 | 107 | # ---- Icons ---- # 108 | 109 | # Align icons left/right/off 110 | icon_position = left 111 | 112 | # Scale small icons up to this size, set to 0 to disable. 113 | min_icon_size = 50 114 | 115 | # Scale larger icons down to this size, set to 0 to disable 116 | max_icon_size = 60 117 | 118 | # Paths to default icons. 119 | icon_path = /usr/share/icons/kora/apps/scalable:/usr/share/icons/kora/status/scalable:/usr/share/icons/kora/actions/scalable:/usr/share/icons/kora/emblems/scalable:/usr/share/icons/kora/devices/scalable 120 | 121 | # --- History --- # 122 | 123 | # Avoid timing out hidden notifications 124 | sticky_history = yes 125 | 126 | # Maximum amount of notifications kept in history 127 | history_length = 100 128 | 129 | 130 | # --- Misc/Advanced --- # 131 | 132 | dmenu = /usr/bin/dmenu -p dunst: 133 | 134 | # Browser for opening urls in context menu. 135 | browser = /usr/bin/firefox -new-tab 136 | 137 | # Always run rule-defined scripts, even if the notification is suppressed 138 | always_run_script = false 139 | 140 | # Define the title of the windows spawned by dunst 141 | title = Dunst 142 | 143 | # Define the class of the windows spawned by dunst 144 | class = Dunst 145 | 146 | # Define the corner radius of the notification window 147 | corner_radius = 0 148 | 149 | # Don't gnore the dbus closeNotification message. 150 | ignore_dbusclose = false 151 | 152 | 153 | # --- Legacy --- # 154 | 155 | # Use the Xinerama extension instead of RandR for multi-monitor support. 156 | force_xinerama = false 157 | 158 | 159 | # --- Mouse --- # 160 | mouse_left_click = close_current 161 | mouse_middle_click = do_action, close_current 162 | mouse_right_click = close_all 163 | 164 | 165 | [experimental] 166 | per_monitor_dpi = false 167 | 168 | [urgency_low] 169 | background = "#141929fe" 170 | highlight = "#6fa6e7" 171 | frame_color = "#272f57" 172 | foreground = "#dae1f2" 173 | timeout = 8 174 | 175 | [urgency_normal] 176 | background = "#141929fe" 177 | highlight = "#5ca1ff" 178 | 179 | frame_color = "#272f57" 180 | foreground = "#dae1f2" 181 | timeout = 8 182 | 183 | [urgency_critical] 184 | background = "#5ca1ffff" 185 | highlight = "#fe6c5a" 186 | foreground = "#1c2138" 187 | frame_color = "#52426e" 188 | timeout = 0 189 | icon = battery-ac-adapter 190 | 191 | [backlight] 192 | appname = "Backlight" 193 | highlight = "#f1cf8a" 194 | set_stack_tag = "backlight" 195 | 196 | [music] 197 | appname = "Music" 198 | 199 | [volume] 200 | summary = "Volume*" 201 | highlight = "#70a5eb" 202 | set_stack_tag = "volume" 203 | 204 | [battery] 205 | appname = "Power Warning" 206 | 207 | [volume-muted] 208 | appname="Volume(muted)" 209 | summary = "*" 210 | highlight = "#e05f65" 211 | 212 | [logger] 213 | summary = "*" 214 | -------------------------------------------------------------------------------- /config/fcitx5/conf/chttrans.conf: -------------------------------------------------------------------------------- 1 | # 转换引擎 2 | Engine=OpenCC 3 | # 启用的输入法 4 | EnabledIM= 5 | # 简转繁的 OpenCC 配置 6 | OpenCCS2TProfile= 7 | # 繁转简的 OpenCC 配置 8 | OpenCCT2SProfile= 9 | 10 | [Hotkey] 11 | 0=Control+Shift+F 12 | 13 | -------------------------------------------------------------------------------- /config/fcitx5/conf/classicui.conf: -------------------------------------------------------------------------------- 1 | # 垂直候选列表 2 | Vertical Candidate List=False 3 | # 按每个屏幕 DPI 显示 4 | PerScreenDPI=True 5 | # 使用鼠标滚轮翻页 6 | WheelForPaging=True 7 | # 字体 8 | Font="华康方圆体W7 12" 9 | # 菜单字体 10 | MenuFont="华康方圆体W7 11" 11 | # 托盘字体 12 | TrayFont="华康方圆体W7 11" 13 | # 托盘标签轮廓颜色 14 | TrayOutlineColor=#0e1f2f 15 | # 托盘标签文本颜色 16 | TrayTextColor=#ff4647 17 | # 优先使用文字图标 18 | PreferTextIcon=False 19 | # 在图标中显示布局名称 20 | ShowLayoutNameInIcon=True 21 | # 使用输入法的语言来显示文字 22 | UseInputMethodLangaugeToDisplayText=True 23 | # 主题 24 | Theme=FluentDark 25 | # 固定 Wayland 的字体 DPI 26 | ForceWaylandDPI=0 27 | 28 | -------------------------------------------------------------------------------- /config/fcitx5/conf/clipboard.conf: -------------------------------------------------------------------------------- 1 | # 粘贴主选区 2 | PastePrimaryKey= 3 | # 项目个数 4 | Number of entries=10 5 | 6 | [TriggerKey] 7 | 0=Super+V 8 | 9 | -------------------------------------------------------------------------------- /config/fcitx5/conf/keyboard.conf: -------------------------------------------------------------------------------- 1 | # 页大小 2 | PageSize=5 3 | # 在输入提示中启用 Emoji 4 | EnableEmoji=True 5 | # 在快速输入中启用颜文字 6 | EnableQuickPhraseEmoji=True 7 | # 选词修饰键 8 | Choose Modifier=None 9 | # 默认启用提示 10 | EnableHintByDefault=False 11 | # 使用新的组合键行为 12 | UseNewComposeBehavior=True 13 | # 用长按来输入特殊字符 14 | EnableLongPress=False 15 | 16 | [PrevCandidate] 17 | 0=Shift+Tab 18 | 19 | [NextCandidate] 20 | 0=Tab 21 | 22 | [Hint Trigger] 23 | 0=Control+Alt+H 24 | 25 | [One Time Hint Trigger] 26 | 0=Control+Alt+J 27 | 28 | [LongPressBlocklist] 29 | 0=konsole 30 | 31 | -------------------------------------------------------------------------------- /config/fcitx5/conf/notifications.conf: -------------------------------------------------------------------------------- 1 | # 隐藏通知 2 | HiddenNotifications= 3 | 4 | -------------------------------------------------------------------------------- /config/fcitx5/conf/pinyin.conf: -------------------------------------------------------------------------------- 1 | # 双拼方案 2 | ShuangpinProfile=Ziranma 3 | # 显示当前双拼模式 4 | ShowShuangpinMode=True 5 | # 页大小 6 | PageSize=7 7 | # 启用拼写检查 8 | SpellEnabled=True 9 | # 启用颜文字 10 | EmojiEnabled=True 11 | # 启用拆字 12 | ChaiziEnabled=True 13 | # 启用 Unicode CJK 拓展区 B 中的字符 14 | ExtBEnabled=True 15 | # 启用云拼音 16 | CloudPinyinEnabled=True 17 | # 云拼音位置 18 | CloudPinyinIndex=2 19 | # 在程序中显示预编辑文本 20 | PreeditInApplication=True 21 | # 将嵌入预编辑文本的光标固定在开头 22 | PreeditCursorPositionAtBeginning=True 23 | # 在预编辑中显示完整拼音 24 | PinyinInPreedit=False 25 | # 启用预测 26 | Prediction=False 27 | # 预测个数 28 | PredictionSize=10 29 | # 切换输入法时的行为 30 | SwitchInputMethodBehavior="Commit current preedit" 31 | # 选择第 2 个候选词 32 | SecondCandidate= 33 | # 选择第 3 个候选词 34 | ThirdCandidate= 35 | # 使用数字键盘选词 36 | UseKeypadAsSelection=False 37 | # 使用退格键取消选词 38 | BackSpaceToUnselect=True 39 | # 句子数量 40 | Number of sentence=1 41 | # 输入长于...时提示长词 (设置为 0 时禁用) 42 | LongWordLengthLimit=1 43 | # 快速输入的触发键 44 | QuickPhraseKey=semicolon 45 | # 使用 V 来触发快速输入 46 | VAsQuickphrase=True 47 | # FirstRun 48 | FirstRun=False 49 | 50 | [ForgetWord] 51 | 0=Control+7 52 | 53 | [PrevPage] 54 | 0=Page_Up 55 | 1=Up 56 | 2=KP_Up 57 | 58 | [NextPage] 59 | 0=Next 60 | 1=Down 61 | 2=KP_Down 62 | 63 | [PrevCandidate] 64 | 0=Shift+Tab 65 | 66 | [NextCandidate] 67 | 0=Tab 68 | 69 | [ChooseCharFromPhrase] 70 | 0=bracketleft 71 | 1=bracketright 72 | 73 | [FilterByStroke] 74 | 0=grave 75 | 76 | [QuickPhrase trigger] 77 | 0=www. 78 | 1=ftp. 79 | 2=http: 80 | 3=mail. 81 | 4=bbs. 82 | 5=forum. 83 | 6=https: 84 | 7=ftp: 85 | 8=telnet: 86 | 9=mailto: 87 | 88 | [Fuzzy] 89 | # ue -> ve 90 | VE_UE=True 91 | # 常见错误 92 | NG_GN=True 93 | # 内模糊音节 (xian -> xi'an) 94 | Inner=True 95 | # 短拼音的内模糊音节 (qie -> qi'e) 96 | InnerShort=True 97 | # 匹配不完整的元音 (e -> en, eng, ei) 98 | PartialFinal=True 99 | # 输入长度大于 4 时进行部分双拼匹配 100 | PartialSp=False 101 | # u <-> v 102 | V_U=False 103 | # an <-> ang 104 | AN_ANG=False 105 | # en <-> eng 106 | EN_ENG=False 107 | # ian <-> iang 108 | IAN_IANG=False 109 | # in <-> ing 110 | IN_ING=False 111 | # u <-> ou 112 | U_OU=False 113 | # uan <-> uang 114 | UAN_UANG=False 115 | # c <-> ch 116 | C_CH=False 117 | # f <-> h 118 | F_H=False 119 | # l <-> n 120 | L_N=False 121 | # s <-> sh 122 | S_SH=False 123 | # z <-> zh 124 | Z_ZH=False 125 | 126 | -------------------------------------------------------------------------------- /config/fcitx5/conf/punctuation.conf: -------------------------------------------------------------------------------- 1 | # 字母或者数字之后输入半角标点 2 | HalfWidthPuncAfterLetterOrNumber=True 3 | # 同时输入成对标点 (例如引号) 4 | TypePairedPunctuationsTogether=False 5 | # Enabled 6 | Enabled=True 7 | 8 | [Hotkey] 9 | 0=Control+period 10 | 11 | -------------------------------------------------------------------------------- /config/fcitx5/conf/waylandim.conf: -------------------------------------------------------------------------------- 1 | # 检测当前运行的程序 (需要重启) 2 | DetectApplication=True 3 | 4 | -------------------------------------------------------------------------------- /config/fcitx5/conf/xim.conf: -------------------------------------------------------------------------------- 1 | # 使用 On The Spot 风格 (需要重启) 2 | UseOnTheSpot=True 3 | 4 | -------------------------------------------------------------------------------- /config/fcitx5/config: -------------------------------------------------------------------------------- 1 | [Hotkey] 2 | # 反复按切换键时进行轮换 3 | EnumerateWithTriggerKeys=True 4 | # 临时在当前和第一个输入法之间切换 5 | AltTriggerKeys= 6 | # 向前切换输入法 7 | EnumerateForwardKeys= 8 | # 向后切换输入法 9 | EnumerateBackwardKeys= 10 | # 轮换输入法时跳过第一个输入法 11 | EnumerateSkipFirst=False 12 | # 向前切换输入分组 13 | EnumerateGroupForwardKeys= 14 | # 向后切换输入法分组 15 | EnumerateGroupBackwardKeys= 16 | 17 | [Hotkey/TriggerKeys] 18 | 0=Super+space 19 | 20 | [Hotkey/ActivateKeys] 21 | 0=Super+space 22 | 23 | [Hotkey/DeactivateKeys] 24 | 0=Control+Super+Escape 25 | 26 | [Hotkey/PrevPage] 27 | 0=Page_Up 28 | 29 | [Hotkey/NextPage] 30 | 0=Next 31 | 32 | [Hotkey/PrevCandidate] 33 | 0=Shift+Tab 34 | 35 | [Hotkey/NextCandidate] 36 | 0=Tab 37 | 38 | [Hotkey/TogglePreedit] 39 | 0=Control+Alt+P 40 | 41 | [Behavior] 42 | # 默认状态为激活 43 | ActiveByDefault=False 44 | # 共享输入状态 45 | ShareInputState=All 46 | # 在程序中显示预编辑文本 47 | PreeditEnabledByDefault=True 48 | # 切换输入法时显示输入法信息 49 | ShowInputMethodInformation=True 50 | # 在焦点更改时显示输入法信息 51 | showInputMethodInformationWhenFocusIn=False 52 | # 显示紧凑的输入法信息 53 | CompactInputMethodInformation=True 54 | # 显示第一个输入法的信息 55 | ShowFirstInputMethodInformation=True 56 | # 默认页大小 57 | DefaultPageSize=4 58 | # 覆盖 Xkb 选项 59 | OverrideXkbOption=False 60 | # 自定义 Xkb 选项 61 | CustomXkbOption= 62 | # Force Enabled Addons 63 | EnabledAddons= 64 | # Force Disabled Addons 65 | DisabledAddons= 66 | # Preload input method to be used by default 67 | PreloadInputMethod=True 68 | 69 | -------------------------------------------------------------------------------- /config/fcitx5/profile: -------------------------------------------------------------------------------- 1 | [Groups/0] 2 | # Group Name 3 | Name=默认 4 | # Layout 5 | Default Layout=cn 6 | # Default Input Method 7 | DefaultIM=pinyin 8 | 9 | [Groups/0/Items/0] 10 | # Name 11 | Name=keyboard-cn 12 | # Layout 13 | Layout= 14 | 15 | [Groups/0/Items/1] 16 | # Name 17 | Name=pinyin 18 | # Layout 19 | Layout= 20 | 21 | [GroupOrder] 22 | 0=默认 23 | 24 | -------------------------------------------------------------------------------- /config/fcitx5/profile_DV3Ysu: -------------------------------------------------------------------------------- 1 | [Groups/0] 2 | # Group Name 3 | Name=默认 4 | # Layout 5 | Default Layout=cn 6 | # Default Input Method 7 | DefaultIM=pinyin 8 | 9 | [Groups/0/Items/0] 10 | # Name 11 | Name=keyboard-cn 12 | # Layout 13 | Layout= 14 | 15 | [Groups/0/Items/1] 16 | # Name 17 | Name=pinyin 18 | # Layout 19 | Layout= 20 | 21 | [GroupOrder] 22 | 0=默认 23 | 24 | -------------------------------------------------------------------------------- /config/fcitx5/themes/FluentDark/arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/fcitx5/themes/FluentDark/arrow.png -------------------------------------------------------------------------------- /config/fcitx5/themes/FluentDark/back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/fcitx5/themes/FluentDark/back.png -------------------------------------------------------------------------------- /config/fcitx5/themes/FluentDark/next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/fcitx5/themes/FluentDark/next.png -------------------------------------------------------------------------------- /config/fcitx5/themes/FluentDark/panel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/fcitx5/themes/FluentDark/panel.png -------------------------------------------------------------------------------- /config/fcitx5/themes/FluentDark/radio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/fcitx5/themes/FluentDark/radio.png -------------------------------------------------------------------------------- /config/fcitx5/themes/FluentDark/theme.conf: -------------------------------------------------------------------------------- 1 | [Metadata] 2 | Name=FluentDark 3 | Version=0.3 4 | Author=Reverier 5 | Description=A Fluent-Design dark theme. 6 | ScaleWithDPI=False 7 | 8 | [InputPanel] 9 | EnableBlur=True 10 | NormalColor=#5a8bf1 11 | HighlightCandidateColor=#5a8bf1 12 | HighlightColor=#5a8bf1 13 | HighlightBackgroundColor=#161b4100 14 | Spacing=0 15 | 16 | [InputPanel/ShadowMargin] 17 | Left=9 18 | Right=9 19 | Top=9 20 | Bottom=9 21 | 22 | [InputPanel/BlurMargin] 23 | Left=9 24 | Right=9 25 | Top=9 26 | Bottom=9 27 | 28 | [InputPanel/ContentMargin] 29 | Left=9 30 | Right=9 31 | Top=9 32 | Bottom=9 33 | 34 | [InputPanel/TextMargin] 35 | Left=16 36 | Right=16 37 | Top=8 38 | Bottom=8 39 | 40 | [InputPanel/Background] 41 | Image=panel.png 42 | 43 | [InputPanel/Background/Margin] 44 | Left=9 45 | Right=9 46 | Top=9 47 | Bottom=9 48 | 49 | [InputPanel/Highlight] 50 | Color=#ffffff10 51 | 52 | [InputPanel/Highlight/Margin] 53 | Left=16 54 | Right=16 55 | Top=8 56 | Bottom=8 57 | 58 | [InputPanel/PrevPage] 59 | Image=back.png 60 | 61 | [InputPanel/PrevPage/ClickMargin] 62 | Left=0 63 | Right=0 64 | Top=0 65 | Bottom=0 66 | 67 | [InputPanel/NextPage] 68 | Image=next.png 69 | 70 | [InputPanel/NextPage/ClickMargin] 71 | Left=0 72 | Right=0 73 | Top=0 74 | Bottom=0 75 | -------------------------------------------------------------------------------- /config/hypr/chino.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/chino.mp4 -------------------------------------------------------------------------------- /config/hypr/hyprland.conf: -------------------------------------------------------------------------------- 1 | $MOD=SUPER 2 | 3 | monitor=,preferred,auto,1 4 | 5 | # █████╗ ██╗ ██╗████████╗ ██████╗ ███████╗████████╗ █████╗ ██████╗ ████████╗ 6 | # ██╔══██╗██║ ██║╚══██╔══╝██╔═══██╗ ██╔════╝╚══██╔══╝██╔══██╗██╔══██╗╚══██╔══╝ 7 | # ███████║██║ ██║ ██║ ██║ ██║ ███████╗ ██║ ███████║██████╔╝ ██║ 8 | # ██╔══██║██║ ██║ ██║ ██║ ██║ ╚════██║ ██║ ██╔══██║██╔══██╗ ██║ 9 | # ██║ ██║╚██████╔╝ ██║ ╚██████╔╝ ███████║ ██║ ██║ ██║██║ ██║ ██║ 10 | # ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═════╝ ╚══════╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ 11 | exec-once=~/.config/hypr/hyprland/autostart 12 | 13 | source=~/.config/hypr/hyprland/env.conf 14 | 15 | source=~/.config/hypr/hyprland/input.conf 16 | source=~/.config/hypr/hyprland/misc.conf 17 | source=~/.config/hypr/hyprland/general.conf 18 | source=~/.config/hypr/hyprland/dwinle.conf 19 | source=~/.config/hypr/hyprland/master.conf 20 | source=~/.config/hypr/hyprland/gestures.conf 21 | 22 | source=~/.config/hypr/hyprland/windowrule.conf 23 | 24 | source=~/.config/hypr/hyprland/keybinds/other.conf 25 | source=~/.config/hypr/hyprland/keybinds/app.conf 26 | source=~/.config/hypr/hyprland/keybinds/term.conf 27 | source=~/.config/hypr/hyprland/keybinds/window.conf 28 | source=~/.config/hypr/hyprland/keybinds/master.conf 29 | ###### If general/layout=dwinle please open keybinds/dwinle_hjkl.conf or keybinds/dwinle_arror.conf LINE ##### 30 | ###### AND CLOSE keybinds/master.conf LINE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ##### 31 | # source=~/.config/hypr/hyprland/keybinds/dwinle_hjkl.conf 32 | # source=~/.config/hypr/hyprland/keybinds/dwinle_arror.conf 33 | source=~/.config/hypr/hyprland/keybinds/workspace.conf 34 | source=~/.config/hypr/hyprland/keybinds/bringtness.conf 35 | source=~/.config/hypr/hyprland/keybinds/volume.conf 36 | source=~/.config/hypr/hyprland/keybinds/rofi.conf 37 | 38 | bind=$MOD,O,exec,~/.config/hypr/scripts/lock 39 | 40 | 41 | decoration { 42 | # ██████╗ ██████╗ ██╗ ██╗███╗ ██╗██████╗ 43 | # ██╔══██╗██╔═══██╗██║ ██║████╗ ██║██╔══██╗ 44 | # ██████╔╝██║ ██║██║ ██║██╔██╗ ██║██║ ██║ 45 | # ██╔══██╗██║ ██║██║ ██║██║╚██╗██║██║ ██║ 46 | # ██║ ██║╚██████╔╝╚██████╔╝██║ ╚████║██████╔╝ 47 | # ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚═════╝ 48 | source=~/.config/hypr/hyprland/decoration/round.conf 49 | # ██████╗ ██████╗ █████╗ ██████╗██╗████████╗██╗ ██╗ 50 | # ██╔═══██╗██╔══██╗██╔══██╗██╔════╝██║╚══██╔══╝╚██╗ ██╔╝ 51 | # ██║ ██║██████╔╝███████║██║ ██║ ██║ ╚████╔╝ 52 | # ██║ ██║██╔═══╝ ██╔══██║██║ ██║ ██║ ╚██╔╝ 53 | # ╚██████╔╝██║ ██║ ██║╚██████╗██║ ██║ ██║ 54 | # ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝ ╚═╝ 55 | source=~/.config/hypr/hyprland/decoration/opacity.conf 56 | # ██████╗ ██╗ ██╗ ██╗██████╗ 57 | # ██╔══██╗██║ ██║ ██║██╔══██╗ 58 | # ██████╔╝██║ ██║ ██║██████╔╝ 59 | # ██╔══██╗██║ ██║ ██║██╔══██╗ 60 | # ██████╔╝███████╗╚██████╔╝██║ ██║ 61 | # ╚═════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝ 62 | blur { 63 | enabled=1 64 | source=~/.config/hypr/hyprland/decoration/blur.conf 65 | } 66 | # ███████╗██╗ ██╗ █████╗ ██████╗ ██████╗ ██╗ ██╗ 67 | # ██╔════╝██║ ██║██╔══██╗██╔══██╗██╔═══██╗██║ ██║ 68 | # ███████╗███████║███████║██║ ██║██║ ██║██║ █╗ ██║ 69 | # ╚════██║██╔══██║██╔══██║██║ ██║██║ ██║██║███╗██║ 70 | # ███████║██║ ██║██║ ██║██████╔╝╚██████╔╝╚███╔███╔╝ 71 | # ╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚═════╝ ╚══╝╚══╝ 72 | drop_shadow = true 73 | source=~/.config/hypr/hyprland/decoration/shadow.conf 74 | } 75 | 76 | # █████╗ ███╗ ██╗██╗███╗ ███╗ █████╗ ████████╗██╗ ██████╗ ███╗ ██╗███████╗ 77 | # ██╔══██╗████╗ ██║██║████╗ ████║██╔══██╗╚══██╔══╝██║██╔═══██╗████╗ ██║██╔════╝ 78 | # ███████║██╔██╗ ██║██║██╔████╔██║███████║ ██║ ██║██║ ██║██╔██╗ ██║███████╗ 79 | # ██╔══██║██║╚██╗██║██║██║╚██╔╝██║██╔══██║ ██║ ██║██║ ██║██║╚██╗██║╚════██║ 80 | # ██║ ██║██║ ╚████║██║██║ ╚═╝ ██║██║ ██║ ██║ ██║╚██████╔╝██║ ╚████║███████║ 81 | # ╚═╝ ╚═╝╚═╝ ╚═══╝╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝╚══════╝ 82 | animations { 83 | enabled=1 84 | source=~/.config/hypr/hyprland/animations.conf 85 | } 86 | -------------------------------------------------------------------------------- /config/hypr/hyprland/animations.conf: -------------------------------------------------------------------------------- 1 | # bezier=overshot,0.05,0.9,0.1,1.1 2 | bezier=overshot,0.13,0.99,0.29,1.1 3 | bezier=linear,0.0,0.0,1.0,1.0 4 | animation=windows,1,4,overshot,slide 5 | animation=border,1,10,default 6 | animation=fade,1,10,default 7 | animation=workspaces,1,6,overshot,slidevert 8 | animation=border,1,10,linear 9 | animation=borderangle,1,100,linear,loop 10 | -------------------------------------------------------------------------------- /config/hypr/hyprland/autostart: -------------------------------------------------------------------------------- 1 | #!/usr/bin/bash 2 | 3 | # █████╗ ██╗ ██╗████████╗ ██████╗ ███████╗████████╗ █████╗ ██████╗ ████████╗ 4 | # ██╔══██╗██║ ██║╚══██╔══╝██╔═══██╗ ██╔════╝╚══██╔══╝██╔══██╗██╔══██╗╚══██╔══╝ 5 | # ███████║██║ ██║ ██║ ██║ ██║ ███████╗ ██║ ███████║██████╔╝ ██║ 6 | # ██╔══██║██║ ██║ ██║ ██║ ██║ ╚════██║ ██║ ██╔══██║██╔══██╗ ██║ 7 | # ██║ ██║╚██████╔╝ ██║ ╚██████╔╝ ███████║ ██║ ██║ ██║██║ ██║ ██║ 8 | # ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═════╝ ╚══════╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ 9 | 10 | # variables 11 | config=$HOME/.config/hypr 12 | scripts=$config/scripts 13 | 14 | # Cursor 15 | hyprctl setcursor "Afterglow-Recolored-Catppuccin-Blue-v2" 32 16 | #hyprctl setcursor oreo_spark_light_pink_cursors 24 17 | # notification daemon 18 | dunst & 19 | 20 | fcitx5 -d & 21 | 22 | # waybar 23 | $scripts/waybar/waybar.sh & 24 | 25 | # wallpaper 26 | #mpvpaper HDMI-A-1 -p -s ~/.config/hypr/wallpaper/chino.mp4 -o " --loop --no-audio " -f & 27 | $scripts/waybar/wall $config/wallpaper/images/1.png 28 | 29 | # other 30 | /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & 31 | dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP & 32 | 33 | wl-paste --type text --watch cliphist store & #Stores only text data 34 | 35 | wl-paste --type image --watch cliphist store & #Stores only image data 36 | -------------------------------------------------------------------------------- /config/hypr/hyprland/decoration/blur.conf: -------------------------------------------------------------------------------- 1 | # ██████╗ ██╗ ██╗ ██╗██████╗ 2 | # ██╔══██╗██║ ██║ ██║██╔══██╗ 3 | # ██████╔╝██║ ██║ ██║██████╔╝ 4 | # ██╔══██╗██║ ██║ ██║██╔══██╗ 5 | # ██████╔╝███████╗╚██████╔╝██║ ██║ 6 | # ╚═════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝ 7 | size = 1 8 | passes = 4 9 | new_optimizations = true 10 | xray = true 11 | ignore_opacity = true 12 | blurls = gtk-layer-shell 13 | blurls = lockscreen 14 | -------------------------------------------------------------------------------- /config/hypr/hyprland/decoration/opacity.conf: -------------------------------------------------------------------------------- 1 | # ██████╗ ██████╗ █████╗ ██████╗██╗████████╗██╗ ██╗ 2 | # ██╔═══██╗██╔══██╗██╔══██╗██╔════╝██║╚══██╔══╝╚██╗ ██╔╝ 3 | # ██║ ██║██████╔╝███████║██║ ██║ ██║ ╚████╔╝ 4 | # ██║ ██║██╔═══╝ ██╔══██║██║ ██║ ██║ ╚██╔╝ 5 | # ╚██████╔╝██║ ██║ ██║╚██████╗██║ ██║ ██║ 6 | # ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝ ╚═╝ 7 | active_opacity = 1.0 8 | inactive_opacity = 1.0 9 | -------------------------------------------------------------------------------- /config/hypr/hyprland/decoration/round.conf: -------------------------------------------------------------------------------- 1 | # ██████╗ ██████╗ ██╗ ██╗███╗ ██╗██████╗ 2 | # ██╔══██╗██╔═══██╗██║ ██║████╗ ██║██╔══██╗ 3 | # ██████╔╝██║ ██║██║ ██║██╔██╗ ██║██║ ██║ 4 | # ██╔══██╗██║ ██║██║ ██║██║╚██╗██║██║ ██║ 5 | # ██║ ██║╚██████╔╝╚██████╔╝██║ ╚████║██████╔╝ 6 | # ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚═════╝ 7 | rounding=0 8 | -------------------------------------------------------------------------------- /config/hypr/hyprland/decoration/shadow.conf: -------------------------------------------------------------------------------- 1 | # ███████╗██╗ ██╗ █████╗ ██████╗ ██████╗ ██╗ ██╗ 2 | # ██╔════╝██║ ██║██╔══██╗██╔══██╗██╔═══██╗██║ ██║ 3 | # ███████╗███████║███████║██║ ██║██║ ██║██║ █╗ ██║ 4 | # ╚════██║██╔══██║██╔══██║██║ ██║██║ ██║██║███╗██║ 5 | # ███████║██║ ██║██║ ██║██████╔╝╚██████╔╝╚███╔███╔╝ 6 | # ╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚═════╝ ╚══╝╚══╝ 7 | col.shadow= 0x33000000 8 | col.shadow_inactive=0x22000000 9 | shadow_ignore_window = true 10 | shadow_offset = 1 2 11 | shadow_range = 20 12 | shadow_render_power = 5 13 | -------------------------------------------------------------------------------- /config/hypr/hyprland/dwinle.conf: -------------------------------------------------------------------------------- 1 | dwindle { 2 | pseudotile=0 3 | preserve_split=1 4 | force_split=0 5 | } 6 | -------------------------------------------------------------------------------- /config/hypr/hyprland/env.conf: -------------------------------------------------------------------------------- 1 | # Cursor 2 | env=XCURSOR_SIZE,32 3 | env=XCURSOR_THEME,Afterglow-Recolored-Catppuccin-Blue-v2 4 | 5 | env=XDG_CURRENT_DESKTOP,Hyprland 6 | env=XDG_SESSION_TYPE,wayland 7 | env=XDG_SESSION_DESKTOP,Hyprland 8 | 9 | env=GDK_BACKEND,wayland 10 | env=QT_QPA_PLATFORM,wayland 11 | env=QT_QPA_PLATFORMTHEME,qt6ct 12 | env=QT_WAYLAND_DISABLE_WINDOWDECORATION,1 13 | env=QT_AUTO_SCREEN_SCALE_FACTOR,1 14 | 15 | env=SDL_VIDEODRIVER,wayland 16 | env=_JAVA_AWT_WM_NONREPARENTING,1 17 | env=WLR_NO_HARDWARE_CURSORS,1 18 | 19 | env=MOZ_DISABLE_RDD_SANDBOX,1 20 | env=MOZ_ENABLE_WAYLAND,1 21 | 22 | env=OZONE_PLATFORM,wayland 23 | -------------------------------------------------------------------------------- /config/hypr/hyprland/general.conf: -------------------------------------------------------------------------------- 1 | general { 2 | layout=master 3 | sensitivity=1.0 # for mouse cursor 4 | gaps_in=2 5 | gaps_out=10 6 | border_size=2 7 | col.inactive_border=0xff45475a 8 | col.active_border=0xFF82AAFF 0xff45475a 0xff45475a 0xFF82AAFF 9 | # whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse) 10 | apply_sens_to_raw=0 11 | col.group_border=0xff89dceb 12 | col.group_border_active=0xfff9e2af 13 | } 14 | -------------------------------------------------------------------------------- /config/hypr/hyprland/gestures.conf: -------------------------------------------------------------------------------- 1 | gestures { 2 | workspace_swipe=yes 3 | workspace_swipe_fingers=4 4 | } 5 | -------------------------------------------------------------------------------- /config/hypr/hyprland/input.conf: -------------------------------------------------------------------------------- 1 | input { 2 | kb_layout= 3 | kb_variant=ffffff 4 | kb_model= 5 | kb_options= #caps:escape 6 | kb_rules= 7 | } 8 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/app.conf: -------------------------------------------------------------------------------- 1 | bind=$MOD,w,exec,firefox 2 | bind=$MOD,E,exec,nemo 3 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/bringtness.conf: -------------------------------------------------------------------------------- 1 | bind=CTRL ALT,x,exec,~/.config/hypr/scripts/control/brightness inc 1 2 | bind=CTRL,ALT z,exec,~/.config/hypr/scripts/control/brightness dec 1 3 | bind=,XF86MonBrightnessUp,exec,~/.config/hypr/scripts/control/brightness inc 1 4 | bind=,XF86MonBrightnessDown,exec,~/.config/hypr/scripts/control/brightness dec 1 5 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/dwinle_arror.conf: -------------------------------------------------------------------------------- 1 | bind=$MOD SHIFT,left,movewindow,l 2 | bind=$MOD SHIFT,right,movewindow,r 3 | bind=$MOD SHIFT,up,movewindow,u 4 | bind=$MOD SHIFT,down,movewindow,d 5 | 6 | bind=$MOD,left,movefocus,l 7 | bind=$MOD,right,movefocus,r 8 | bind=$MOD,up,movefocus,u 9 | bind=$MOD,down,movefocus,d 10 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/dwinle_hjkl.conf: -------------------------------------------------------------------------------- 1 | bind=$MOD,h,movefocus,l 2 | bind=$MOD,l,movefocus,r 3 | bind=$MOD,k,movefocus,u 4 | bind=$MOD,j,movefocus,d 5 | 6 | bind=$MOD SHIFT,h,movewindow,l 7 | bind=$MOD SHIFT,l,movewindow,r 8 | bind=$MOD SHIFT,k,movewindow,u 9 | bind=$MOD SHIFT,j,movewindow,d 10 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/group.conf: -------------------------------------------------------------------------------- 1 | bind=$MOD,g,togglegroup 2 | bind=$MOD,grave,changegroupactive 3 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/master.conf: -------------------------------------------------------------------------------- 1 | bind=$MOD,TAB,layoutmsg,cyclenext 2 | bind=$MOD,J,layoutmsg,cyclenext 3 | bind=$MOD,K,layoutmsg,cycleprev 4 | bind=$MOD,L,layoutmsg,cyclenext 5 | bind=$MOD,H,layoutmsg,cycleprev 6 | bind=$MOD SHIFT,J,layoutmsg,swapnext 7 | bind=$MOD SHIFT,K,layoutmsg,swapprev 8 | bind=$MOD SHIFT,L,layoutmsg,swapnext 9 | bind=$MOD SHIFT,H,layoutmsg,swapprev 10 | bind=ALT,TAB,layoutmsg,swapwithmaster master 11 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/other.conf: -------------------------------------------------------------------------------- 1 | bind=CTRL ALT,c,exec,~/.config/hypr/scripts/colorpicker 2 | bind=$MOD,escape,exec,~/.config/hypr/scripts/other/transout 3 | bind=$MOD SHIFT,escape,exec,~/.config/hypr/scripts/other/transout.speak 4 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/rofi.conf: -------------------------------------------------------------------------------- 1 | bind=$MOD,m,exec,~/.config/hypr/scripts/rofi/music 2 | bind=$MOD,R,exec,~/.config/hypr/scripts/rofi/runner 3 | bind=$MOD,D,exec,~/.config/hypr/scripts/rofi/launcher 4 | bind=,Print,exec,~/.config/hypr/scripts/rofi/screenshot 5 | bind=$MOD ALT,Q,exec,~/.config/hypr/scripts/rofi/powermenu 6 | bind=$MOD,V,exec,cliphist list | rofi -dmenu -display-columns 2 -p "Clipboard" -config ~/.config/rofi/clipmenu.rasi | cliphist decode | wl-copy 7 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/term.conf: -------------------------------------------------------------------------------- 1 | bind=$MOD,RETURN,exec,wezterm 2 | bind=$MOD,A,exec,~/.config/hypr/scripts/areaterm.sh 3 | bind=CTRL ALT,RETURN,exec,wezterm --config-file ~/.config/wezterm/float.lua start --class floatwezterm 4 | bind=CTRL ALT,DELETE,exec,wezterm --config-file ~/.config/wezterm/float.lua start --class floatwezterm btm 5 | bind=SHIFT ALT,RETURN,exec,wezterm --config-file ~/.config/wezterm/float.lua start --class floatwezterm ~/.config/hypr/scripts/other/write.sh 6 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/volume.conf: -------------------------------------------------------------------------------- 1 | bind=,XF86AudioRaisevolume,exec,~/.config/hypr/scripts/control/volume --inc 2 | bind=,XF86AudioLowervolume,exec,~/.config/hypr/scripts/control/volume --dec 3 | bind=,XF86AudioMute,exec,~/.config/hypr/scripts/control/volume --toggle 4 | bind=$MOD ALT,x,exec,~/.config/hypr/scripts/control/volume --inc 5 | bind=$MOD ALT,z,exec,~/.config/hypr/scripts/control/volume --dec 6 | bind=$MOD ALT,m,exec,~/.config/hypr/scripts/control/volume --toggle 7 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/window.conf: -------------------------------------------------------------------------------- 1 | bindm=$MOD,mouse:272,movewindow 2 | bindm=$MOD,mouse:273,resizewindow 3 | bind=$MOD,Q,killactive 4 | bind=$MOD,t,fullscreen 5 | # bind=$MOD,A,togglesplit 6 | bind=$MOD,S,togglefloating 7 | bind=ALT,F4,exec,hyprctl kill 8 | -------------------------------------------------------------------------------- /config/hypr/hyprland/keybinds/workspace.conf: -------------------------------------------------------------------------------- 1 | bind=$MOD,z,workspace,-1 2 | bind=$MOD,x,workspace,+1 3 | bind=$MOD,1,workspace,1 4 | bind=$MOD,2,workspace,2 5 | bind=$MOD,3,workspace,3 6 | bind=$MOD,4,workspace,4 7 | bind=$MOD,5,workspace,5 8 | bind=$MOD,6,workspace,6 9 | bind=$MOD,7,workspace,7 10 | bind=$MOD,8,workspace,8 11 | bind=$MOD,9,workspace,9 12 | bind=$MOD,0,workspace,10 13 | 14 | bind=$MOD SHIFT,z,movetoworkspace,-1 15 | bind=$MOD SHIFT,x,movetoworkspace,+1 16 | bind=$MOD SHIFT,1,movetoworkspace,1 17 | bind=$MOD SHIFT,2,movetoworkspace,2 18 | bind=$MOD SHIFT,3,movetoworkspace,3 19 | bind=$MOD SHIFT,4,movetoworkspace,4 20 | bind=$MOD SHIFT,5,movetoworkspace,5 21 | bind=$MOD SHIFT,6,movetoworkspace,6 22 | bind=$MOD SHIFT,7,movetoworkspace,7 23 | bind=$MOD SHIFT,8,movetoworkspace,8 24 | bind=$MOD SHIFT,9,movetoworkspace,9 25 | bind=$MOD SHIFT,0,movetoworkspace,10 26 | -------------------------------------------------------------------------------- /config/hypr/hyprland/master.conf: -------------------------------------------------------------------------------- 1 | master { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /config/hypr/hyprland/misc.conf: -------------------------------------------------------------------------------- 1 | misc { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /config/hypr/hyprland/windowrule.conf: -------------------------------------------------------------------------------- 1 | windowrule=move 320 181,floatwezterm 2 | windowrule=size 1280 720,floatwezterm 3 | windowrule=float,floatwezterm 4 | windowrule=noborder,floatwezterm 5 | windowrule=rounding 10,floatwezterm 6 | 7 | windowrule=opacity 0.6,nemo 8 | 9 | windowrule=animation popin, areaterm 10 | windowrule=float, areaterm 11 | windowrule=noborder,areaterm 12 | windowrule=rounding 10,areaterm 13 | 14 | windowrule=move 460 209,Clash for Windows 15 | windowrule=size 1000 700,Clash for Windows 16 | windowrule=float,Clash for Windows 17 | -------------------------------------------------------------------------------- /config/hypr/icons/b0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b0.png -------------------------------------------------------------------------------- /config/hypr/icons/b10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b10.png -------------------------------------------------------------------------------- /config/hypr/icons/b100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b100.png -------------------------------------------------------------------------------- /config/hypr/icons/b20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b20.png -------------------------------------------------------------------------------- /config/hypr/icons/b30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b30.png -------------------------------------------------------------------------------- /config/hypr/icons/b40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b40.png -------------------------------------------------------------------------------- /config/hypr/icons/b50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b50.png -------------------------------------------------------------------------------- /config/hypr/icons/b60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b60.png -------------------------------------------------------------------------------- /config/hypr/icons/b70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b70.png -------------------------------------------------------------------------------- /config/hypr/icons/b80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b80.png -------------------------------------------------------------------------------- /config/hypr/icons/b90.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/b90.png -------------------------------------------------------------------------------- /config/hypr/icons/battery_charging.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/battery_charging.png -------------------------------------------------------------------------------- /config/hypr/icons/battery_low.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/battery_low.png -------------------------------------------------------------------------------- /config/hypr/icons/battery_mid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/battery_mid.png -------------------------------------------------------------------------------- /config/hypr/icons/brightness-high.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /config/hypr/icons/brightness-low.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /config/hypr/icons/brightness-medium.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /config/hypr/icons/brightness-off.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /config/hypr/icons/gamma.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/gamma.png -------------------------------------------------------------------------------- /config/hypr/icons/resume.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/resume.png -------------------------------------------------------------------------------- /config/hypr/icons/stop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/icons/stop.png -------------------------------------------------------------------------------- /config/hypr/icons/volume_high.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /config/hypr/icons/volume_low.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /config/hypr/icons/volume_medium.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /config/hypr/icons/volume_muted.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /config/hypr/icons/volume_off.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /config/hypr/scripts/areaterm.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | slurp -d -b "#00000000" -c "#82AAFFFF" -s "#00000044" -f "hyprctl keyword windowrule unset, areaterm 3 | hyprctl keyword windowrule animation popin, areaterm 4 | hyprctl keyword windowrule move %x %y, areaterm 5 | hyprctl keyword windowrule float, areaterm 6 | hyprctl keyword windowrule size %w %h, areaterm 7 | hyprctl keyword windowrule noborder,areaterm 8 | hyprctl keyword windowrule rounding 10,areaterm 9 | wezterm --config-file ~/.config/wezterm/float.lua start --class areaterm" | bash 10 | -------------------------------------------------------------------------------- /config/hypr/scripts/colorpicker: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2022 Aditya Shakya 4 | 5 | ## Simple Script To Pick Color Quickly. 6 | 7 | color=$(hyprpicker) 8 | image=/tmp/${color}.png 9 | 10 | main() { 11 | if [[ "$color" ]]; then 12 | # copy color code to clipboard 13 | echo $color | tr -d "\n" | wl-copy 14 | # generate preview 15 | convert -size 48x48 xc:"$color" ${image} 16 | # notify about it 17 | notify-send -h string:x-canonical-private-synchronous:sys-notify -i ${image} "$color, copied to clipboard." 18 | fi 19 | } 20 | 21 | # Run the script 22 | main 23 | -------------------------------------------------------------------------------- /config/hypr/scripts/control/brightness: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | subinc=2 4 | subchange=$(echo "1 / $subinc" | bc -l) 5 | delay=0.001 6 | opt="" 7 | 8 | 9 | getIcon() { 10 | if [ "$1" -eq 0 ]; then 11 | echo "$HOME/.icons/tmp/brightness-off.svg" 12 | elif [ "$1" -lt 33 ]; then 13 | echo "$HOME/.icons/tmp/brightness-low.svg" 14 | elif [ "$1" -lt 66 ]; then 15 | echo "$HOME/.icons/tmp/brightness-medium.svg" 16 | else 17 | echo "$HOME/.icons/tmp/brightness-high.svg" 18 | fi 19 | 20 | } 21 | 22 | if [ "$1" == "inc" ]; then 23 | opt="-A" 24 | else 25 | opt="-U" 26 | fi 27 | 28 | 29 | for i in $(seq $2); do 30 | current=$(light) 31 | truncated=$(echo "$current" | cut -d '.' -f1) 32 | 33 | if (( $(echo "$current==0" | bc -l) )) && [ "$opt" == "-U" ]; then 34 | exit 0; 35 | elif (( $(echo "$current==100" | bc -l) )) && [ "$opt" == "-A" ]; then 36 | exit 0; 37 | fi 38 | 39 | for i in $(seq $subinc); do 40 | light $opt "$subchange" 41 | sleep "$delay" 42 | done 43 | 44 | current=$(light) 45 | truncated=$(echo "$current" | cut -d '.' -f1) 46 | 47 | 48 | dunstify "Brightness at ${truncated}%" -i $(getIcon "$truncated") -a Backlight -u normal -h "int:value:$current" -h string:x-dunst-stack-tag:backlight 49 | done 50 | -------------------------------------------------------------------------------- /config/hypr/scripts/control/volume: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2022 Aditya Shakya 4 | 5 | ## Script To Manage Speaker Volume For Archcraft (in Wayland). 6 | 7 | iDIR="$HOME/.config/hypr/icons" 8 | 9 | # Get Volume 10 | get_volume() { 11 | volume=$(amixer get Master | tail -n1 | awk -F ' ' '{print $5}' | tr -d '[]') 12 | echo "$volume" 13 | } 14 | 15 | # Get icons 16 | get_icon() { 17 | vol="$(get_volume)" 18 | current="${vol%%%}" 19 | amixer get Master | grep '\[on\]' &>/dev/null 20 | if [[ "$?" == 0 ]]; then 21 | if [ "$current" -eq 0 ]; then 22 | icon="$iDIR/volume_off.svg" 23 | elif [ "$current" -lt 33 ]; then 24 | icon="$iDIR/volume_low.svg" 25 | elif [ "$current" -lt 66 ]; then 26 | icon="$iDIR/volume_medium.svg" 27 | else 28 | icon="$iDIR/volume_high.svg" 29 | fi 30 | else 31 | icon="$iDIR/volume_muted.svg" 32 | fi 33 | } 34 | 35 | # Notify 36 | notify_user() { 37 | amixer get Master | grep '\[on\]' &>/dev/null 38 | if [[ "$?" == 0 ]]; then 39 | dunstify -i "$icon" -u normal -h string:x-dunst-stack-tag:volume -a "Volume" "Volume at $(get_volume)" -h "int:value:$(get_volume)" 40 | else 41 | dunstify -i "$icon" -u normal -h string:x-dunst-stack-tag:volume-muted -a "Volume(muted)" "Volume at $(get_volume)" -h "int:value:$(get_volume)" 42 | fi 43 | } 44 | 45 | # Increase Volume 46 | inc_volume() { 47 | for i in $(seq "5"); do 48 | amixer -Mq set Master,0 1%+ unmute && get_icon && notify_user 49 | sleep 0.00001 50 | done 51 | } 52 | 53 | # Decrease Volume 54 | dec_volume() { 55 | for d in $(seq "5"); do 56 | amixer -Mq set Master,0 1%- unmute && get_icon && notify_user 57 | sleep 0.00001 58 | done 59 | } 60 | 61 | # Toggle Mute 62 | toggle_mute() { 63 | amixer set Master toggle && get_icon && notify_user 64 | } 65 | 66 | # Execute accordingly 67 | if [[ "$1" == "--get" ]]; then 68 | get_volume 69 | elif [[ "$1" == "--inc" ]]; then 70 | inc_volume 71 | elif [[ "$1" == "--dec" ]]; then 72 | dec_volume 73 | elif [[ "$1" == "--toggle" ]]; then 74 | toggle_mute 75 | else 76 | get_volume 77 | fi 78 | -------------------------------------------------------------------------------- /config/hypr/scripts/gtkthemes-bkp: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2022 Aditya Shakya 4 | 5 | ## Set GTK Themes, Icons, Cursor and Fonts 6 | 7 | THEME='Tokyonight-Dark-BL' 8 | ICONS='Papirus-Dark' 9 | FONT='方正兰亭圆_GBK_中粗 11' 10 | CURSOR='Afterglow-Recolored-Catppuccin-Blue-v2' 11 | CUROSO_SIZE='32' 12 | 13 | SCHEMA='gsettings set org.gnome.desktop.interface' 14 | 15 | apply_themes() { 16 | ${SCHEMA} gtk-theme "$THEME" 17 | ${SCHEMA} icon-theme "$ICONS" 18 | ${SCHEMA} cursor-theme "$CURSOR" 19 | ${SCHEMA} font-name "$FONT" 20 | ${SCHEMA} cursor-size "$CUROSO_SIZE" 21 | } 22 | 23 | apply_themes 24 | -------------------------------------------------------------------------------- /config/hypr/scripts/other/transout: -------------------------------------------------------------------------------- 1 | notify-send "$(crow -b "$(wl-paste -p)")" 2 | -------------------------------------------------------------------------------- /config/hypr/scripts/other/transout.speak: -------------------------------------------------------------------------------- 1 | notify-send "$(crow -b "$(wl-paste -p)")" 2 | crow -u "$(wl-paste -p)" 3 | -------------------------------------------------------------------------------- /config/hypr/scripts/other/write.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | read input 3 | echo -n "$input" | wl-copy 4 | -------------------------------------------------------------------------------- /config/hypr/scripts/ramdomtext.py: -------------------------------------------------------------------------------- 1 | import random 2 | a = random.choice(["嘿嘿啊哈哈哈,截图来喽,哈哈哈,啊,啊哈","司令啊,这截图十分滴珍贵","我不打扰,我走了哈","我就一个催逝员,怎么能拿这截图呢"]) 3 | print (a) 4 | -------------------------------------------------------------------------------- /config/hypr/scripts/rofi/askpass: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2023 Aditya Shakya 4 | 5 | # Import Current Theme 6 | DIR="$HOME/.config/rofi" 7 | RASI="$DIR/launcher.rasi" 8 | 9 | # rofi text dialog to get password 10 | rofi -dmenu \ 11 | -password \ 12 | -i \ 13 | -p "Root" \ 14 | -theme ${RASI} 15 | -------------------------------------------------------------------------------- /config/hypr/scripts/rofi/launcher: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2023 Aditya Shakya 4 | 5 | # Import Current Theme 6 | DIR="$HOME/.config/rofi" 7 | RASI="$DIR/launcher.rasi" 8 | 9 | # Run 10 | rofi \ 11 | -show drun \ 12 | -theme ${RASI} 13 | -------------------------------------------------------------------------------- /config/hypr/scripts/rofi/music: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2023 Aditya Shakya 4 | 5 | # Import Current Theme 6 | DIR="$HOME/.config/rofi" 7 | RASI="$DIR/music.rasi" 8 | 9 | # Theme Elements 10 | status="$(mpc status)" 11 | if [[ -z "$status" ]]; then 12 | prompt='Offline' 13 | mesg="MPD Offline" 14 | else 15 | prompt="$(mpc -f "%artist%" current)" 16 | mesg="$(mpc -f "%title%" current)" 17 | fi 18 | 19 | # Options 20 | layout=$(cat ${RASI} | grep 'USE_ICON' | cut -d'=' -f2) 21 | if [[ "$layout" == 'NO' ]]; then 22 | if [[ ${status} == *"[playing]"* ]]; then 23 | option_1=" Pause" 24 | else 25 | option_1=" Play" 26 | fi 27 | option_2=" Stop" 28 | option_3=" Previous" 29 | option_4=" Next" 30 | option_5=" Playlist" 31 | option_6=" Repeat" 32 | option_7=" Random" 33 | else 34 | if [[ ${status} == *"[playing]"* ]]; then 35 | option_1="" 36 | else 37 | option_1="" 38 | fi 39 | option_2="" 40 | option_3="" 41 | option_4="" 42 | option_5="" 43 | option_6="" 44 | option_7="" 45 | fi 46 | 47 | # Toggle Actions 48 | active='' 49 | urgent='' 50 | # Repeat 51 | if [[ ${status} == *"repeat: on"* ]]; then 52 | active="-a 5" 53 | elif [[ ${status} == *"repeat: off"* ]]; then 54 | urgent="-u 5" 55 | else 56 | option_5=" Parsing Error" 57 | fi 58 | # Random 59 | if [[ ${status} == *"random: on"* ]]; then 60 | [ -n "$active" ] && active+=",6" || active="-a 6" 61 | elif [[ ${status} == *"random: off"* ]]; then 62 | [ -n "$urgent" ] && urgent+=",6" || urgent="-u 6" 63 | else 64 | option_6=" Parsing Error" 65 | fi 66 | 67 | # Rofi CMD 68 | rofi_cmd() { 69 | rofi -dmenu \ 70 | -p "$prompt" \ 71 | -mesg "$mesg" \ 72 | ${active} ${urgent} \ 73 | -markup-rows \ 74 | -theme ${RASI} 75 | } 76 | 77 | # Pass variables to rofi dmenu 78 | run_rofi() { 79 | echo -e "$option_1\n$option_2\n$option_3\n$option_4\n$option_5\n$option_6\n$option_7" | rofi_cmd 80 | } 81 | 82 | # Execute Command 83 | run_cmd() { 84 | if [[ "$1" == '--opt1' ]]; then 85 | if [[ ${status} == *"[playing]"* ]]; then 86 | mpc -q pause && MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png -a "Pause" "$(mpc --format '%title%\n\n%artist%' current)" 87 | else 88 | mpc -q play && MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png -a "Play" "$(mpc --format '%title%\n\n%artist%' current)" 89 | fi 90 | elif [[ "$1" == '--opt2' ]]; then 91 | MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png -a "Stop mpd" "Stoping mpd..." && mpc -q stop 92 | elif [[ "$1" == '--opt3' ]]; then 93 | mpc -q prev && MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png -a "$(mpc --format '%title%' current)" "$(mpc --format '\n%artist%' current)" 94 | elif [[ "$1" == '--opt4' ]]; then 95 | mpc -q next && MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png -a "$(mpc --format '%title%' current)" "$(mpc --format '\n%artist%' current)" 96 | elif [[ "$1" == '--opt5' ]]; then 97 | mpc clear && mpc load "$(mpc lsplaylists | rofi -dmenu -markup-rows -theme playlist.rasi)" 98 | elif [[ "$1" == '--opt6' ]]; then 99 | if [[ ${status} == *"repeat: off"* ]]; then 100 | mpc -q repeat && MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png -a "Repeat On" "$(mpc --format '%title%\n\n%artist%' current)" 101 | else 102 | mpc -q repeat && MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png -a "Repeat Off" "$(mpc --format '%title%\n\n%artist%' current)" 103 | fi 104 | elif [[ "$1" == '--opt7' ]]; then 105 | if [[ ${status} == *"random: off"* ]]; then 106 | mpc -q random && MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png -a "Random On" "$(mpc --format '%title%\n\n%artist%' current)" 107 | else 108 | mpc -q random && MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png -a "Random Off" "$(mpc --format '%title%\n\n%artist%' current)" 109 | fi 110 | fi 111 | } 112 | 113 | # Actions 114 | chosen="$(run_rofi)" 115 | case ${chosen} in 116 | $option_1) 117 | run_cmd --opt1 118 | ;; 119 | $option_2) 120 | run_cmd --opt2 121 | ;; 122 | $option_3) 123 | run_cmd --opt3 124 | ;; 125 | $option_4) 126 | run_cmd --opt4 127 | ;; 128 | $option_5) 129 | run_cmd --opt5 130 | ;; 131 | $option_6) 132 | run_cmd --opt6 133 | ;; 134 | $option_7) 135 | run_cmd --opt7 136 | ;; 137 | esac 138 | -------------------------------------------------------------------------------- /config/hypr/scripts/rofi/powermenu: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2023 Aditya Shakya 4 | 5 | # Import Current Theme 6 | DIR="$HOME/.config/rofi" 7 | RASI="$DIR/powermenu.rasi" 8 | CNFR="$DIR/confirm.rasi" 9 | 10 | # Theme Elements 11 | prompt="$(hostname) ($(echo $DESKTOP_SESSION))" 12 | mesg="Uptime : $(uptime -p | sed -e 's/up //g')" 13 | 14 | # Options 15 | layout=$(cat ${RASI} | grep 'USE_ICON' | cut -d'=' -f2) 16 | if [[ "$layout" == 'NO' ]]; then 17 | option_1=" Suspend" 18 | option_2=" Logout" 19 | option_3=" Lock" 20 | option_4=" Reboot" 21 | option_5=" Shutdown" 22 | else 23 | option_1="" 24 | option_2="" 25 | option_3="" 26 | option_4="" 27 | option_5="" 28 | fi 29 | cnflayout=$(cat ${CNFR} | grep 'USE_ICON' | cut -d'=' -f2) 30 | if [[ "$cnflayout" == 'NO' ]]; then 31 | yes=' Yes' 32 | no=' No' 33 | else 34 | yes='' 35 | no='' 36 | fi 37 | 38 | # Rofi CMD 39 | rofi_cmd() { 40 | rofi -dmenu \ 41 | -p "$prompt" \ 42 | -mesg "$mesg" \ 43 | -markup-rows \ 44 | -theme ${RASI} 45 | } 46 | 47 | # Pass variables to rofi dmenu 48 | run_rofi() { 49 | echo -e "$option_1\n$option_2\n$option_3\n$option_4\n$option_5" | rofi_cmd 50 | } 51 | 52 | # Confirmation CMD 53 | confirm_cmd() { 54 | rofi -dmenu \ 55 | -p 'Confirmation' \ 56 | -mesg 'Are you Sure?' \ 57 | -theme ${CNFR} 58 | } 59 | 60 | # Ask for confirmation 61 | confirm_exit() { 62 | echo -e "$yes\n$no" | confirm_cmd 63 | } 64 | 65 | # Confirm and execute 66 | confirm_run() { 67 | selected="$(confirm_exit)" 68 | if [[ "$selected" == "$yes" ]]; then 69 | ${1} && ${2} && ${3} 70 | else 71 | exit 72 | fi 73 | } 74 | 75 | screen_locker() { 76 | swaylock \ 77 | --screenshots \ 78 | --indicator \ 79 | --clock \ 80 | --inside-wrong-color 000000 \ 81 | --ring-wrong-color 11111b \ 82 | --inside-clear-color a6e3a1 \ 83 | --ring-clear-color 11111b \ 84 | --inside-ver-color 89b4fa \ 85 | --ring-ver-color 11111b \ 86 | --text-color f5c2e7 \ 87 | --indicator-radius 80 \ 88 | --indicator-thickness 5 \ 89 | --effect-vignette 0.5:0.5 \ 90 | --ring-color 11111b \ 91 | --key-hl-color f5c2e7 \ 92 | --line-color 313244 \ 93 | --inside-color 00000000 \ 94 | --separator-color 00000000 \ 95 | --fade-in 0.1 & 96 | } 97 | 98 | # Execute Command 99 | run_cmd() { 100 | if [[ "$1" == '--opt1' ]]; then 101 | confirm_run 'systemctl hybrid-sleep' 102 | elif [[ "$1" == '--opt2' ]]; then 103 | confirm_run 'hyprctl dispatch exit' 104 | elif [[ "$1" == '--opt3' ]]; then 105 | screen_locker 106 | elif [[ "$1" == '--opt4' ]]; then 107 | confirm_run 'systemctl reboot' 108 | elif [[ "$1" == '--opt5' ]]; then 109 | confirm_run 'systemctl poweroff' 110 | fi 111 | } 112 | 113 | # Actions 114 | chosen="$(run_rofi)" 115 | case ${chosen} in 116 | $option_1) 117 | run_cmd --opt1 118 | ;; 119 | $option_2) 120 | run_cmd --opt2 121 | ;; 122 | $option_3) 123 | run_cmd --opt3 124 | ;; 125 | $option_4) 126 | run_cmd --opt4 127 | ;; 128 | $option_5) 129 | run_cmd --opt5 130 | ;; 131 | esac 132 | -------------------------------------------------------------------------------- /config/hypr/scripts/rofi/runner: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2023 Aditya Shakya 4 | 5 | # Import Current Theme 6 | DIR="$HOME/.config/rofi" 7 | RASI="$DIR/runner.rasi" 8 | 9 | # Run 10 | rofi \ 11 | -show run \ 12 | -theme ${RASI} 13 | -------------------------------------------------------------------------------- /config/hypr/scripts/rofi/screenshot: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2023 Aditya Shakya 4 | 5 | # Import Current Theme 6 | DIR="$HOME/.config/rofi" 7 | RASI="$DIR/screenshot.rasi" 8 | 9 | # Theme Elements 10 | prompt='Screenshot' 11 | mesg="Directory:$(xdg-user-dir PICTURES)/Screenshots" 12 | 13 | # Options 14 | layout=$(cat ${RASI} | grep 'USE_ICON' | cut -d'=' -f2) 15 | if [[ "$layout" == 'NO' ]]; then 16 | option_1=" Capture Desktop" 17 | option_2=" Capture Area" 18 | option_3=" Capture Window" 19 | option_4=" Capture in 5s" 20 | option_5=" Capture in 10s" 21 | else 22 | option_1="" 23 | option_2="" 24 | option_3="" 25 | option_4="" 26 | option_5="" 27 | fi 28 | 29 | # Rofi CMD 30 | rofi_cmd() { 31 | rofi -dmenu \ 32 | -p "$prompt" \ 33 | -mesg "$mesg" \ 34 | -markup-rows \ 35 | -theme ${RASI} 36 | } 37 | 38 | # Pass variables to rofi dmenu 39 | run_rofi() { 40 | echo -e "$option_1\n$option_2\n$option_3\n$option_4\n$option_5" | rofi_cmd 41 | } 42 | 43 | # Image Name 44 | Name="$(date "+%Y-%m-%d-%H-%M-%S")" 45 | 46 | # Screenshot Mode 47 | screenshot_full() { 48 | grim -c -t png ~/Pictures/Screenshots/"${Name}"-full.png 49 | notify-send -h string:x-canonical-private-synchronous:sys-notify -i ~/Pictures/Screenshots/"${Name}"-full.png -a "$(python3 ~/.config/hypr/scripts/ramdomtext.py)" " " 50 | } 51 | 52 | screenshot_area() { 53 | grim -c -t png -g "$(slurp -d -b "#00000000" -c "#82AAFFFF" -s "#00000044" && sleep 0.7)" ~/Pictures/Screenshots/"${Name}"-area.png 54 | notify-send -h string:x-canonical-private-synchronous:sys-notify -i ~/Pictures/Screenshots/"${Name}"-area.png -a "$(python3 ~/.config/hypr/scripts/ramdomtext.py)" " " 55 | } 56 | 57 | screenshot_window() { 58 | grim -c -t png -g "$( 59 | echo -n $(hyprctl activewindow | grep at: | awk -F ': ' '{print $2}') 60 | hyprctl activewindow | grep size | awk -F ': ' '{print $2}' | awk -F ',' '{print " "$1"x"$2}' 61 | )" ~/Pictures/Screenshots/"${Name}"-window.png 62 | notify-send -h string:x-canonical-private-synchronous:sys-notify -i ~/Pictures/Screenshots/"${Name}"-window.png -a "$(python3 ~/.config/hypr/scripts/ramdomtext.py)" " " 63 | } 64 | 65 | # Execute Command 66 | run_cmd() { 67 | if [[ "$1" == '--opt1' ]]; then 68 | sleep 0.7 && screenshot_full 69 | elif [[ "$1" == '--opt2' ]]; then 70 | screenshot_area 71 | elif [[ "$1" == '--opt3' ]]; then 72 | sleep 0.7 && screenshot_window 73 | elif [[ "$1" == '--opt4' ]]; then 74 | sleep 5 && screenshot_full 75 | elif [[ "$1" == '--opt5' ]]; then 76 | sleep 10 && screenshot_full 77 | fi 78 | } 79 | 80 | # Actions 81 | chosen="$(run_rofi)" 82 | case ${chosen} in 83 | $option_1) 84 | run_cmd --opt1 85 | ;; 86 | $option_2) 87 | run_cmd --opt2 88 | ;; 89 | $option_3) 90 | run_cmd --opt3 91 | ;; 92 | $option_4) 93 | run_cmd --opt4 94 | ;; 95 | $option_5) 96 | run_cmd --opt5 97 | ;; 98 | esac 99 | -------------------------------------------------------------------------------- /config/hypr/scripts/waybar/cycle.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/bash 2 | TEMP=/tmp/current_wall 3 | 4 | files=(~/.config/hypr/wallpaper/*) 5 | 6 | hypr=~/.config/hypr 7 | scripts=$hypr/scripts/waybar 8 | 9 | index=$(cat $TEMP) 10 | index=$((index + 1)) 11 | if [ $index -ge ${#files[@]} ]; then 12 | index=0 13 | fi 14 | echo $index >$TEMP 15 | $scripts/wall "${files[$index]}" 16 | exit 0 17 | -------------------------------------------------------------------------------- /config/hypr/scripts/waybar/wall: -------------------------------------------------------------------------------- 1 | #!/usr/bin/bash 2 | swww init 3 | swww img $1 --transition-type outer --transition-pos "$(hyprctl cursorpos | awk -F ', ' '{print $1}'), $(hyprctl cursorpos | awk -F ', ' '{print 1079-$2}')" --transition-duration 3 4 | -------------------------------------------------------------------------------- /config/hypr/scripts/waybar/waybar.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/bash 2 | waybar & 3 | -------------------------------------------------------------------------------- /config/hypr/wallpaper/Clannad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wallpaper/Clannad.png -------------------------------------------------------------------------------- /config/hypr/wallpaper/Home.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wallpaper/Home.gif -------------------------------------------------------------------------------- /config/hypr/wallpaper/Sakura.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wallpaper/Sakura.png -------------------------------------------------------------------------------- /config/hypr/wallpaper/StarDream.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wallpaper/StarDream.jpg -------------------------------------------------------------------------------- /config/hypr/wlogout/actions: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ## Copyright (C) 2020-2022 Aditya Shakya 4 | 5 | ## wlogout actions 6 | 7 | # Ask for confirmation 8 | cdialog () { 9 | yad --title='Confirm?' --borders=15 --center --fixed --undecorated --button=Yes:0 --button=No:1 --text="Are you sure?" --text-align=center 10 | } 11 | 12 | if [[ "$1" == '--shutdown' ]]; then 13 | cdialog 14 | if [[ "$?" == 0 ]]; then 15 | systemctl poweroff 16 | else 17 | exit 18 | fi 19 | elif [[ "$1" == '--reboot' ]]; then 20 | cdialog 21 | if [[ "$?" == 0 ]]; then 22 | systemctl reboot 23 | else 24 | exit 25 | fi 26 | elif [[ "$1" == '--hibernate' ]]; then 27 | cdialog 28 | if [[ "$?" == 0 ]]; then 29 | systemctl hibernate 30 | else 31 | exit 32 | fi 33 | elif [[ "$1" == '--lock' ]]; then 34 | ~/.config/hypr/scripts/lockscreen 35 | elif [[ "$1" == '--suspend' ]]; then 36 | cdialog 37 | if [[ "$?" == 0 ]]; then 38 | mpc -q pause 39 | amixer set Master mute 40 | ~/.config/hypr/scripts/lockscreen 41 | systemctl suspend 42 | else 43 | exit 44 | fi 45 | elif [[ "$1" == '--logout' ]]; then 46 | cdialog 47 | if [[ "$?" == 0 ]]; then 48 | kill -9 -1 49 | else 50 | exit 51 | fi 52 | fi 53 | -------------------------------------------------------------------------------- /config/hypr/wlogout/icons/hibernate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wlogout/icons/hibernate.png -------------------------------------------------------------------------------- /config/hypr/wlogout/icons/lock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wlogout/icons/lock.png -------------------------------------------------------------------------------- /config/hypr/wlogout/icons/logout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wlogout/icons/logout.png -------------------------------------------------------------------------------- /config/hypr/wlogout/icons/reboot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wlogout/icons/reboot.png -------------------------------------------------------------------------------- /config/hypr/wlogout/icons/shutdown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wlogout/icons/shutdown.png -------------------------------------------------------------------------------- /config/hypr/wlogout/icons/suspend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/hypr/wlogout/icons/suspend.png -------------------------------------------------------------------------------- /config/hypr/wlogout/layout: -------------------------------------------------------------------------------- 1 | { 2 | "label" : "suspend", 3 | "text" : "Suspend", 4 | "action" : "~/.config/hypr/wlogout/actions --suspend", 5 | "keybind" : "u" 6 | } 7 | { 8 | "label" : "logout", 9 | "text" : "Logout", 10 | "action" : "~/.config/hypr/wlogout/actions --logout", 11 | "keybind" : "e" 12 | } 13 | { 14 | "label" : "lock", 15 | "text" : "Lock", 16 | "action" : "~/.config/hypr/wlogout/actions --lock", 17 | "keybind" : "l" 18 | } 19 | { 20 | "label" : "reboot", 21 | "text" : "Reboot", 22 | "action" : "~/.config/hypr/wlogout/actions --reboot", 23 | "keybind" : "r" 24 | } 25 | { 26 | "label" : "shutdown", 27 | "text" : "Shutdown", 28 | "action" : "~/.config/hypr/wlogout/actions --shutdown", 29 | "keybind" : "s" 30 | } 31 | -------------------------------------------------------------------------------- /config/hypr/wlogout/style.css: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2020-2022 Aditya Shakya 3 | */ 4 | 5 | /** ********** Fonts ********** **/ 6 | * { 7 | font-family: "JetBrains Mono", "Iosevka Nerd Font", archcraft, sans-serif; 8 | font-size: 14px; 9 | font-weight: bold; 10 | } 11 | 12 | /** ********** Main Window ********** **/ 13 | window { 14 | background-color: #1E1E2E; 15 | } 16 | 17 | /** ********** Buttons ********** **/ 18 | button { 19 | background-color: #242434; 20 | color: #FFFFFF; 21 | border: 2px solid #282838; 22 | border-radius: 20px; 23 | background-repeat: no-repeat; 24 | background-position: center; 25 | background-size: 35%; 26 | } 27 | 28 | button:focus, button:active, button:hover { 29 | background-color: #89B4FA; 30 | outline-style: none; 31 | } 32 | 33 | /** ********** Icons ********** **/ 34 | #lock { 35 | background-image: image(url("icons/lock.png"), url("/usr/share/wlogout/icons/lock.png")); 36 | } 37 | 38 | #logout { 39 | background-image: image(url("icons/logout.png"), url("/usr/share/wlogout/icons/logout.png")); 40 | } 41 | 42 | #suspend { 43 | background-image: image(url("icons/suspend.png"), url("/usr/share/wlogout/icons/suspend.png")); 44 | } 45 | 46 | #hibernate { 47 | background-image: image(url("icons/hibernate.png"), url("/usr/share/wlogout/icons/hibernate.png")); 48 | } 49 | 50 | #shutdown { 51 | background-image: image(url("icons/shutdown.png"), url("/usr/share/wlogout/icons/shutdown.png")); 52 | } 53 | 54 | #reboot { 55 | background-image: image(url("icons/reboot.png"), url("/usr/share/wlogout/icons/reboot.png")); 56 | } 57 | -------------------------------------------------------------------------------- /config/mpd/database: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/mpd/database -------------------------------------------------------------------------------- /config/mpd/mpd.conf: -------------------------------------------------------------------------------- 1 | db_file "~/.config/mpd/database" 2 | log_file "~/.config/mpd/log" 3 | music_directory "/music" 4 | playlist_directory "~/.config/mpd/playlists" 5 | pid_file "~/.config/mpd/pid" 6 | state_file "~/.config/mpd/state" 7 | sticker_file "~/.config/mpd/sticker.sql" 8 | audio_output { 9 | type "pipewire" 10 | name "MPD PipeWire Output" 11 | mixer_type "hardware" 12 | replay_gain_handler "software" 13 | dsd "yes" 14 | } 15 | input { 16 | plugin "file" 17 | enabled "yes" 18 | } 19 | bind_to_address "localhost" 20 | -------------------------------------------------------------------------------- /config/mpd/pid: -------------------------------------------------------------------------------- 1 | 1552 2 | -------------------------------------------------------------------------------- /config/mpd/playlists/「10 Hz Alpha Thunderstorm」.m3u: -------------------------------------------------------------------------------- 1 | 「10 Hz Alpha Thunderstorm」/Dan Gibson - Dreamstorm.mp3 2 | 「10 Hz Alpha Thunderstorm」/Echoes of Nature - Thunder & Rain.mp3 3 | 「10 Hz Alpha Thunderstorm」/Deep Sleep Music - Rain and Thunder.mp3 4 | 「10 Hz Alpha Thunderstorm」/Echoes of Nature - Rain With Pygmy Owl.mp3 5 | 「10 Hz Alpha Thunderstorm」/Brad Miller - The Thunderstorm.mp3 6 | 「10 Hz Alpha Thunderstorm」/Dan Gibson - Thunderstorm in the Wilderness.mp3 7 | 「10 Hz Alpha Thunderstorm」/The Nature Sounds Society Japan - Thunder and Hailstone.mp3 8 | 「10 Hz Alpha Thunderstorm」/The Nature Sounds Society Japan - Rain, Totoro Forest.mp3 9 | 「10 Hz Alpha Thunderstorm」/Echoes of Nature - Thunder And Rain.mp3 10 | 「10 Hz Alpha Thunderstorm」/Echoes of Nature - Jamboree.mp3 11 | 「10 Hz Alpha Thunderstorm」/이펙터 - 비와 번개.mp3 12 | 「10 Hz Alpha Thunderstorm」/自然的聲音 - 雷聲和降雨.flac 13 | -------------------------------------------------------------------------------- /config/mpd/sticker.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/mpd/sticker.sql -------------------------------------------------------------------------------- /config/ncmpcpp/bindings: -------------------------------------------------------------------------------- 1 | ############################################################## 2 | ## This is the example bindings file. Copy it to ## 3 | ## ~/.ncmpcpp/bindings or $XDG_CONFIG_HOME/ncmpcpp/bindings ## 4 | ## and set up your preferences ## 5 | ############################################################## 6 | # 7 | #def_key "mouse" 8 | # mouse_event 9 | # 10 | #def_key "up" 11 | # scroll_up 12 | # 13 | #def_key "shift-up" 14 | # select_item 15 | # scroll_up 16 | # 17 | #def_key "down" 18 | # scroll_down 19 | # 20 | #def_key "shift-down" 21 | # select_item 22 | # scroll_down 23 | # 24 | #def_key "[" 25 | # scroll_up_album 26 | # 27 | #def_key "]" 28 | # scroll_down_album 29 | # 30 | #def_key "{" 31 | # scroll_up_artist 32 | # 33 | #def_key "}" 34 | # scroll_down_artist 35 | # 36 | #def_key "page_up" 37 | # page_up 38 | # 39 | #def_key "page_down" 40 | # page_down 41 | # 42 | #def_key "home" 43 | # move_home 44 | # 45 | #def_key "end" 46 | # move_end 47 | # 48 | #def_key "insert" 49 | # select_item 50 | # 51 | #def_key "enter" 52 | # enter_directory 53 | # 54 | #def_key "enter" 55 | # toggle_output 56 | # 57 | #def_key "enter" 58 | # run_action 59 | # 60 | #def_key "enter" 61 | # play_item 62 | # 63 | #def_key "space" 64 | # add_item_to_playlist 65 | # 66 | #def_key "space" 67 | # toggle_lyrics_update_on_song_change 68 | # 69 | #def_key "space" 70 | # toggle_visualization_type 71 | # 72 | #def_key "delete" 73 | # delete_playlist_items 74 | # 75 | #def_key "delete" 76 | # delete_browser_items 77 | # 78 | #def_key "delete" 79 | # delete_stored_playlist 80 | # 81 | #def_key "right" 82 | # next_column 83 | # 84 | #def_key "right" 85 | # slave_screen 86 | # 87 | #def_key "right" 88 | # volume_up 89 | # 90 | #def_key "+" 91 | # volume_up 92 | # 93 | #def_key "left" 94 | # previous_column 95 | # 96 | #def_key "left" 97 | # master_screen 98 | # 99 | #def_key "left" 100 | # volume_down 101 | # 102 | #def_key "-" 103 | # volume_down 104 | # 105 | #def_key ":" 106 | # execute_command 107 | # 108 | #def_key "tab" 109 | # next_screen 110 | # 111 | #def_key "shift-tab" 112 | # previous_screen 113 | # 114 | #def_key "f1" 115 | # show_help 116 | # 117 | #def_key "1" 118 | # show_playlist 119 | # 120 | #def_key "2" 121 | # show_browser 122 | # 123 | #def_key "2" 124 | # change_browse_mode 125 | # 126 | #def_key "3" 127 | # show_search_engine 128 | # 129 | #def_key "3" 130 | # reset_search_engine 131 | # 132 | #def_key "4" 133 | # show_media_library 134 | # 135 | #def_key "4" 136 | # toggle_media_library_columns_mode 137 | # 138 | #def_key "5" 139 | # show_playlist_editor 140 | # 141 | #def_key "6" 142 | # show_tag_editor 143 | # 144 | #def_key "7" 145 | # show_outputs 146 | # 147 | #def_key "8" 148 | # show_visualizer 149 | # 150 | #def_key "=" 151 | # show_clock 152 | # 153 | #def_key "@" 154 | # show_server_info 155 | # 156 | #def_key "s" 157 | # stop 158 | # 159 | #def_key "p" 160 | # pause 161 | # 162 | #def_key ">" 163 | # next 164 | # 165 | #def_key "<" 166 | # previous 167 | # 168 | #def_key "ctrl-h" 169 | # jump_to_parent_directory 170 | # 171 | #def_key "ctrl-h" 172 | # replay_song 173 | # 174 | #def_key "backspace" 175 | # jump_to_parent_directory 176 | # 177 | #def_key "backspace" 178 | # replay_song 179 | # 180 | #def_key "f" 181 | # seek_forward 182 | # 183 | #def_key "b" 184 | # seek_backward 185 | # 186 | #def_key "r" 187 | # toggle_repeat 188 | # 189 | #def_key "z" 190 | # toggle_random 191 | # 192 | #def_key "y" 193 | # save_tag_changes 194 | # 195 | #def_key "y" 196 | # start_searching 197 | # 198 | #def_key "y" 199 | # toggle_single 200 | # 201 | #def_key "R" 202 | # toggle_consume 203 | # 204 | #def_key "Y" 205 | # toggle_replay_gain_mode 206 | # 207 | #def_key "T" 208 | # toggle_add_mode 209 | # 210 | #def_key "|" 211 | # toggle_mouse 212 | # 213 | #def_key "#" 214 | # toggle_bitrate_visibility 215 | # 216 | #def_key "Z" 217 | # shuffle 218 | # 219 | #def_key "x" 220 | # toggle_crossfade 221 | # 222 | #def_key "X" 223 | # set_crossfade 224 | # 225 | #def_key "u" 226 | # update_database 227 | # 228 | #def_key "ctrl-s" 229 | # sort_playlist 230 | # 231 | #def_key "ctrl-s" 232 | # toggle_browser_sort_mode 233 | # 234 | #def_key "ctrl-s" 235 | # toggle_media_library_sort_mode 236 | # 237 | #def_key "ctrl-r" 238 | # reverse_playlist 239 | # 240 | #def_key "ctrl-f" 241 | # apply_filter 242 | # 243 | #def_key "ctrl-_" 244 | # select_found_items 245 | # 246 | #def_key "/" 247 | # find 248 | # 249 | #def_key "/" 250 | # find_item_forward 251 | # 252 | #def_key "?" 253 | # find 254 | # 255 | #def_key "?" 256 | # find_item_backward 257 | # 258 | #def_key "." 259 | # next_found_item 260 | # 261 | #def_key "," 262 | # previous_found_item 263 | # 264 | #def_key "w" 265 | # toggle_find_mode 266 | # 267 | #def_key "e" 268 | # edit_song 269 | # 270 | #def_key "e" 271 | # edit_library_tag 272 | # 273 | #def_key "e" 274 | # edit_library_album 275 | # 276 | #def_key "e" 277 | # edit_directory_name 278 | # 279 | #def_key "e" 280 | # edit_playlist_name 281 | # 282 | #def_key "e" 283 | # edit_lyrics 284 | # 285 | #def_key "i" 286 | # show_song_info 287 | # 288 | #def_key "I" 289 | # show_artist_info 290 | # 291 | #def_key "g" 292 | # jump_to_position_in_song 293 | # 294 | #def_key "l" 295 | # show_lyrics 296 | # 297 | #def_key "ctrl-v" 298 | # select_range 299 | # 300 | #def_key "v" 301 | # reverse_selection 302 | # 303 | #def_key "V" 304 | # remove_selection 305 | # 306 | #def_key "B" 307 | # select_album 308 | # 309 | #def_key "a" 310 | # add_selected_items 311 | # 312 | #def_key "c" 313 | # clear_playlist 314 | # 315 | #def_key "c" 316 | # clear_main_playlist 317 | # 318 | #def_key "C" 319 | # crop_playlist 320 | # 321 | #def_key "C" 322 | # crop_main_playlist 323 | # 324 | #def_key "m" 325 | # move_sort_order_up 326 | # 327 | #def_key "m" 328 | # move_selected_items_up 329 | # 330 | #def_key "n" 331 | # move_sort_order_down 332 | # 333 | #def_key "n" 334 | # move_selected_items_down 335 | # 336 | #def_key "M" 337 | # move_selected_items_to 338 | # 339 | #def_key "A" 340 | # add 341 | # 342 | #def_key "S" 343 | # save_playlist 344 | # 345 | #def_key "o" 346 | # jump_to_playing_song 347 | # 348 | #def_key "G" 349 | # jump_to_browser 350 | # 351 | #def_key "G" 352 | # jump_to_playlist_editor 353 | # 354 | #def_key "~" 355 | # jump_to_media_library 356 | # 357 | #def_key "E" 358 | # jump_to_tag_editor 359 | # 360 | #def_key "U" 361 | # toggle_playing_song_centering 362 | # 363 | #def_key "P" 364 | # toggle_display_mode 365 | # 366 | #def_key "\\" 367 | # toggle_interface 368 | # 369 | #def_key "!" 370 | # toggle_separators_between_albums 371 | # 372 | #def_key "L" 373 | # toggle_lyrics_fetcher 374 | # 375 | #def_key "F" 376 | # fetch_lyrics_in_background 377 | # 378 | #def_key "alt-l" 379 | # toggle_fetching_lyrics_in_background 380 | # 381 | #def_key "ctrl-l" 382 | # toggle_screen_lock 383 | # 384 | #def_key "`" 385 | # toggle_library_tag_type 386 | # 387 | #def_key "`" 388 | # refetch_lyrics 389 | # 390 | #def_key "`" 391 | # add_random_items 392 | # 393 | #def_key "ctrl-p" 394 | # set_selected_items_priority 395 | # 396 | #def_key "q" 397 | # quit 398 | # 399 | # 400 | #def_key "f" 401 | # find 402 | #def_key "f" 403 | # find_item_forward 404 | 405 | def_key "+" 406 | show_clock 407 | def_key "=" 408 | volume_up 409 | 410 | def_key "j" 411 | scroll_down 412 | def_key "k" 413 | scroll_up 414 | 415 | def_key "ctrl-u" 416 | page_up 417 | #push_characters "kkkkkkkkkkkkkkk" 418 | def_key "ctrl-d" 419 | page_down 420 | #push_characters "jjjjjjjjjjjjjjj" 421 | def_key "u" 422 | page_up 423 | #push_characters "kkkkkkkkkkkkkkk" 424 | def_key "d" 425 | page_down 426 | #push_characters "jjjjjjjjjjjjjjj" 427 | def_key "h" 428 | previous_column 429 | def_key "l" 430 | next_column 431 | 432 | def_key "P" 433 | show_lyrics 434 | 435 | def_key "n" 436 | next_found_item 437 | def_key "N" 438 | previous_found_item 439 | 440 | # not used but bound 441 | def_key "J" 442 | move_sort_order_down 443 | def_key "K" 444 | move_sort_order_up 445 | def_key "h" 446 | jump_to_parent_directory 447 | def_key "l" 448 | enter_directory 449 | def_key "l" 450 | run_action 451 | def_key "l" 452 | play_item 453 | def_key "m" 454 | show_media_library 455 | def_key "m" 456 | toggle_media_library_columns_mode 457 | def_key "t" 458 | show_tag_editor 459 | def_key "v" 460 | show_visualizer 461 | def_key "G" 462 | move_end 463 | def_key "g" 464 | move_home 465 | #jump_to_position_in_song 466 | def_key "U" 467 | update_database 468 | def_key "s" 469 | reset_search_engine 470 | def_key "s" 471 | show_search_engine 472 | def_key "f" 473 | show_browser 474 | def_key "f" 475 | change_browse_mode 476 | def_key "x" 477 | delete_playlist_items 478 | def_key "P" 479 | show_playlist 480 | -------------------------------------------------------------------------------- /config/ncmpcpp/config: -------------------------------------------------------------------------------- 1 | ############################################################## 2 | ## This is an example configuration file. Copy it to ## 3 | ## $XDG_CONFIG_HOME/ncmpcpp/config or $HOME/.ncmpcpp/config ## 4 | ## and set up your preferences. ## 5 | ############################################################## 6 | 7 | mpd_host = "127.0.0.1" 8 | mpd_port = 6600 9 | mpd_connection_timeout = "5" 10 | mpd_crossfade_time = "5" 11 | ncmpcpp_directory = "~/.config/ncmpcpp" 12 | mpd_music_dir = /music 13 | lyrics_directory = ~/.config/ncmpcpp/lyrics 14 | execute_on_song_change = "MediaControl nccover && dunstify --replace=27072 -i /tmp/cover.png "$(mpc --format '%title%\n\n%artist%' current)"" 15 | 16 | visualizer_data_source = /tmp/mpd.fifo 17 | visualizer_output_name = my_fifo 18 | 19 | visualizer_in_stereo = "no" 20 | visualizer_fps = "60" 21 | visualizer_type = "wave" 22 | visualizer_look = "∗▐" 23 | visualizer_color = "199,200,201,202,166,130,94,58,22" 24 | visualizer_spectrum_smooth_look = "yes" 25 | 26 | # GENERAL 27 | # --- 28 | connected_message_on_startup = "yes" 29 | cyclic_scrolling = "yes" 30 | mouse_support = "no" 31 | mouse_list_scroll_whole_page = "yes" 32 | lines_scrolled = "1" 33 | message_delay_time = "1" 34 | playlist_shorten_total_times = "yes" 35 | playlist_display_mode = "columns" 36 | browser_display_mode = "columns" 37 | search_engine_display_mode = "columns" 38 | playlist_editor_display_mode = "columns" 39 | autocenter_mode = "yes" 40 | centered_cursor = "yes" 41 | user_interface = "classic" 42 | follow_now_playing_lyrics = "yes" 43 | locked_screen_width_part = "50" 44 | ask_for_locked_screen_width_part = "yes" 45 | display_bitrate = "no" 46 | external_editor = "nano" 47 | main_window_color = "default" 48 | startup_screen = "playlist" 49 | 50 | # PROGRESS BAR 51 | # --- 52 | progressbar_look = "━━━" 53 | #progressbar_look = "▃▃▃" 54 | progressbar_elapsed_color = "magenta" 55 | progressbar_color = "black" 56 | 57 | # UI VISIBILITY 58 | # --- 59 | header_visibility = "no" 60 | statusbar_visibility = "yes" 61 | titles_visibility = "yes" 62 | enable_window_title = "yes" 63 | 64 | # COLORS 65 | # --- 66 | statusbar_color = "white" 67 | color1 = "white" 68 | color2 = "blue" 69 | 70 | # UI APPEARANCE 71 | # --- 72 | now_playing_prefix = "$b$2$7 " 73 | now_playing_suffix = " $/b$8" 74 | current_item_prefix = "$b$7$/b$3 " 75 | current_item_suffix = " $8" 76 | 77 | song_columns_list_format = "(50)[]{t|fr:Title} (0)[magenta]{a}" 78 | song_list_format = " {%t $R  $8%a$8}|{%f $R  $8%l$8} $8" 79 | song_status_format = "$b$2󰣐 $7 {$b$6$8 %t $6} $7 $8" 80 | song_window_title_format = "Now Playing .." 81 | -------------------------------------------------------------------------------- /config/ncmpcpp/error.log: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/ncmpcpp/error.log -------------------------------------------------------------------------------- /config/ncmpcpp/lyrics/GET IN THE RING - Terminal Station.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/ncmpcpp/lyrics/GET IN THE RING - Terminal Station.txt -------------------------------------------------------------------------------- /config/ncmpcpp/lyrics/QU4RTZ - Make-up session ABC.txt: -------------------------------------------------------------------------------- 1 | 1 ContributorMake-up session ABC LyricsCancel 2 | How to Format Lyrics: 3 | Type out all lyrics, even repeating song parts like the chorusLyrics should be broken down into individual linesUse section headers above different song parts like [Verse], [Chorus], etc.Use italics (lyric) and bold (lyric) to distinguish between different vocalists in the same song partIf you don’t understand a lyric, use [?] 4 | To learn more, check out our transcription guide or visit our transcribers forum -------------------------------------------------------------------------------- /config/ncmpcpp/lyrics/阿澄佳奈新谷良子後藤邑子水橋かおり - でわっしょい.txt: -------------------------------------------------------------------------------- 1 | 2 ContributorsTranslationsRomanization?でわっしょい (Hatena de Wasshoi) LyricsCancel 2 | How to Format Lyrics: 3 | Type out all lyrics, even repeating song parts like the chorusLyrics should be broken down into individual linesUse section headers above different song parts like [Verse], [Chorus], etc.Use italics (lyric) and bold (lyric) to distinguish between different vocalists in the same song partIf you don’t understand a lyric, use [?] 4 | To learn more, check out our transcription guide or visit our transcribers forum -------------------------------------------------------------------------------- /config/nemo/bookmark-metadata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/config/nemo/bookmark-metadata -------------------------------------------------------------------------------- /config/rofi/askpass.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (C) 2020-2023 Aditya Shakya 3 | **/ 4 | 5 | /*****----- Global Properties -----*****/ 6 | @import "shared/colors.rasi" 7 | @import "shared/fonts.rasi" 8 | 9 | /*****----- Main Window -----*****/ 10 | window { 11 | location: center; 12 | anchor: center; 13 | fullscreen: false; 14 | width: 350px; 15 | x-offset: 0px; 16 | y-offset: 0px; 17 | padding: 15px; 18 | border: 0px solid; 19 | border-radius: 10px; 20 | border-color: @selected; 21 | background-color: @background; 22 | cursor: "default"; 23 | children: [ "inputbar", "listview" ]; 24 | } 25 | 26 | /*****----- Inputbar -----*****/ 27 | inputbar { 28 | enabled: true; 29 | spacing: 10px; 30 | margin: 0px; 31 | padding: 0px; 32 | border: 0px solid; 33 | border-radius: 0px; 34 | border-color: @selected; 35 | background-color: transparent; 36 | text-color: @foreground; 37 | children: [ "textbox-prompt-colon", "prompt", "entry" ]; 38 | } 39 | 40 | dummy { 41 | expand: false; 42 | width: 10px; 43 | background-color: transparent; 44 | } 45 | textbox-prompt-colon { 46 | enabled: true; 47 | expand: false; 48 | str: ""; 49 | padding: 10px 13px; 50 | border-radius: 100%; 51 | background-color: @active; 52 | text-color: @background; 53 | } 54 | prompt { 55 | enabled: true; 56 | padding: 10px; 57 | border-radius: 15px; 58 | background-color: @selected; 59 | text-color: @background; 60 | } 61 | entry { 62 | enabled: true; 63 | padding: 10px 15px; 64 | border-radius: 15px; 65 | background-color: @background-alt; 66 | text-color: inherit; 67 | cursor: text; 68 | placeholder: "Password"; 69 | placeholder-color: inherit; 70 | } 71 | 72 | /*****----- Listview -----*****/ 73 | listview { 74 | enabled: false; 75 | } 76 | -------------------------------------------------------------------------------- /config/rofi/confirm.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (C) 2020-2023 Aditya Shakya 3 | **/ 4 | 5 | /*****----- Configuration -----*****/ 6 | configuration { 7 | show-icons: false; 8 | } 9 | 10 | /*****----- Global Properties -----*****/ 11 | @import "shared/colors.rasi" 12 | @import "shared/fonts.rasi" 13 | 14 | /* 15 | USE_ICON=YES 16 | */ 17 | 18 | /*****----- Main Window -----*****/ 19 | window { 20 | transparency: "real"; 21 | location: center; 22 | anchor: center; 23 | fullscreen: false; 24 | width: 300px; 25 | x-offset: 0px; 26 | y-offset: 0px; 27 | margin: 0px; 28 | padding: 0px; 29 | border: 0px solid; 30 | border-radius: 10px; 31 | border-color: @selected; 32 | cursor: "default"; 33 | background-color: @background; 34 | } 35 | 36 | /*****----- Main Box -----*****/ 37 | mainbox { 38 | enabled: true; 39 | spacing: 10px; 40 | margin: 0px; 41 | padding: 30px; 42 | background-color: transparent; 43 | children: [ "message", "listview" ]; 44 | } 45 | 46 | /*****----- Inputbar -----*****/ 47 | inputbar { 48 | enabled: true; 49 | spacing: 10px; 50 | padding: 0px; 51 | border: 0px; 52 | border-radius: 0px; 53 | border-color: @selected; 54 | background-color: transparent; 55 | text-color: @foreground; 56 | children: [ "textbox-prompt-colon", "prompt"]; 57 | } 58 | 59 | textbox-prompt-colon { 60 | enabled: true; 61 | expand: false; 62 | str: ""; 63 | padding: 10px 14px; 64 | border-radius: 100%; 65 | background-color: @active; 66 | text-color: @background; 67 | } 68 | prompt { 69 | enabled: true; 70 | padding: 10px; 71 | border-radius: 20px; 72 | background-color: @selected; 73 | text-color: @background; 74 | } 75 | 76 | /*****----- Message -----*****/ 77 | message { 78 | enabled: true; 79 | margin: 0px; 80 | padding: 10px; 81 | border: 0px solid; 82 | border-radius: 8px; 83 | border-color: @selected; 84 | background-color: @background-alt; 85 | text-color: @foreground; 86 | } 87 | textbox { 88 | background-color: inherit; 89 | text-color: inherit; 90 | vertical-align: 0.5; 91 | horizontal-align: 0.5; 92 | } 93 | 94 | /*****----- Listview -----*****/ 95 | listview { 96 | enabled: true; 97 | columns: 2; 98 | lines: 1; 99 | cycle: true; 100 | scrollbar: false; 101 | layout: vertical; 102 | 103 | spacing: 10px; 104 | background-color: transparent; 105 | cursor: "default"; 106 | } 107 | 108 | /*****----- Elements -----*****/ 109 | element { 110 | enabled: true; 111 | padding: 5px 10px; 112 | border: 0px solid; 113 | border-radius: 8px; 114 | border-color: @selected; 115 | background-color: transparent; 116 | text-color: @foreground; 117 | cursor: pointer; 118 | } 119 | element-text { 120 | font: "feather 20"; 121 | background-color: transparent; 122 | text-color: inherit; 123 | cursor: inherit; 124 | vertical-align: 0.5; 125 | horizontal-align: 0.5; 126 | } 127 | 128 | element normal.normal, 129 | element alternate.normal { 130 | background-color: var(background-alt); 131 | text-color: var(foreground); 132 | } 133 | element normal.urgent, 134 | element alternate.urgent, 135 | element selected.active { 136 | background-color: var(urgent); 137 | text-color: var(background); 138 | } 139 | element normal.active, 140 | element alternate.active, 141 | element selected.urgent { 142 | background-color: var(active); 143 | text-color: var(background); 144 | } 145 | element selected.normal { 146 | background-color: var(selected); 147 | text-color: var(background); 148 | } 149 | -------------------------------------------------------------------------------- /config/rofi/music.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (C) 2020-2023 Aditya Shakya 3 | **/ 4 | 5 | /*****----- Configuration -----*****/ 6 | configuration { 7 | show-icons: false; 8 | } 9 | 10 | /*****----- Global Properties -----*****/ 11 | @import "shared/colors.rasi" 12 | @import "shared/fonts.rasi" 13 | 14 | /* 15 | USE_ICON=YES 16 | */ 17 | 18 | /*****----- Main Window -----*****/ 19 | window { 20 | transparency: "real"; 21 | location: center; 22 | anchor: center; 23 | fullscreen: false; 24 | width: 600px; 25 | x-offset: 0px; 26 | y-offset: 0px; 27 | margin: 0px; 28 | padding: 0px; 29 | border: 0px solid; 30 | border-radius: 10px; 31 | border-color: @selected; 32 | cursor: "default"; 33 | background-color: @background; 34 | } 35 | 36 | /*****----- Main Box -----*****/ 37 | mainbox { 38 | enabled: true; 39 | spacing: 10px; 40 | margin: 0px; 41 | padding: 30px; 42 | background-color: transparent; 43 | children: [ "inputbar", "message", "listview" ]; 44 | } 45 | 46 | /*****----- Inputbar -----*****/ 47 | inputbar { 48 | enabled: true; 49 | spacing: 10px; 50 | padding: 0px; 51 | border: 0px; 52 | border-radius: 0px; 53 | border-color: @selected; 54 | background-color: transparent; 55 | text-color: @foreground; 56 | children: [ "textbox-prompt-colon", "prompt"]; 57 | } 58 | 59 | textbox-prompt-colon { 60 | enabled: true; 61 | expand: false; 62 | str: ""; 63 | font: "Iosevka 12"; 64 | padding: 11px 14px; 65 | border-radius: 100%; 66 | background-color: @active; 67 | text-color: @background; 68 | } 69 | prompt { 70 | enabled: true; 71 | padding: 12px 14px; 72 | border-radius: 20px; 73 | background-color: @selected; 74 | text-color: @background; 75 | } 76 | 77 | /*****----- Message -----*****/ 78 | message { 79 | enabled: true; 80 | margin: 0px; 81 | padding: 10px; 82 | border: 0px solid; 83 | border-radius: 12px; 84 | border-color: @selected; 85 | background-color: @background-alt; 86 | text-color: @foreground; 87 | } 88 | textbox { 89 | background-color: inherit; 90 | text-color: inherit; 91 | vertical-align: 0.5; 92 | horizontal-align: 0.0; 93 | } 94 | 95 | /*****----- Listview -----*****/ 96 | listview { 97 | enabled: true; 98 | columns: 6; 99 | lines: 1; 100 | cycle: true; 101 | scrollbar: false; 102 | layout: vertical; 103 | 104 | spacing: 10px; 105 | background-color: transparent; 106 | cursor: "default"; 107 | } 108 | 109 | /*****----- Elements -----*****/ 110 | element { 111 | enabled: true; 112 | padding: 22px 10px; 113 | border: 0px solid; 114 | border-radius: 12px; 115 | border-color: @selected; 116 | background-color: transparent; 117 | text-color: @foreground; 118 | cursor: pointer; 119 | } 120 | element-text { 121 | font: "feather 20"; 122 | background-color: transparent; 123 | text-color: inherit; 124 | cursor: inherit; 125 | vertical-align: 0.5; 126 | horizontal-align: 0.5; 127 | } 128 | 129 | element normal.normal, 130 | element alternate.normal { 131 | background-color: var(background-alt); 132 | text-color: var(foreground); 133 | } 134 | element normal.urgent, 135 | element alternate.urgent, 136 | element selected.active { 137 | background-color: var(urgent); 138 | text-color: var(background); 139 | } 140 | element normal.active, 141 | element alternate.active, 142 | element selected.urgent { 143 | background-color: var(active); 144 | text-color: var(background); 145 | } 146 | element selected.normal { 147 | background-color: var(selected); 148 | text-color: var(background); 149 | } 150 | -------------------------------------------------------------------------------- /config/rofi/powermenu.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (C) 2020-2023 Aditya Shakya 3 | **/ 4 | 5 | /*****----- Configuration -----*****/ 6 | configuration { 7 | show-icons: false; 8 | } 9 | 10 | /*****----- Global Properties -----*****/ 11 | @import "shared/colors.rasi" 12 | * { 13 | font: "JetBrainsMono Nerd Font 11"; 14 | } 15 | 16 | /* 17 | USE_ICON=YES 18 | */ 19 | 20 | /*****----- Main Window -----*****/ 21 | window { 22 | transparency: "real"; 23 | location: center; 24 | anchor: center; 25 | fullscreen: false; 26 | width: 550px; 27 | x-offset: 0px; 28 | y-offset: 0px; 29 | margin: 0px; 30 | padding: 0px; 31 | border: 0px solid; 32 | border-radius: 10px; 33 | border-color: @selected; 34 | cursor: "default"; 35 | background-color: @background; 36 | } 37 | 38 | /*****----- Main Box -----*****/ 39 | mainbox { 40 | enabled: true; 41 | spacing: 10px; 42 | margin: 0px; 43 | padding: 30px; 44 | background-color: transparent; 45 | children: [ "inputbar", "message", "listview" ]; 46 | } 47 | 48 | /*****----- Inputbar -----*****/ 49 | inputbar { 50 | enabled: true; 51 | spacing: 10px; 52 | padding: 0px; 53 | border: 0px; 54 | border-radius: 0px; 55 | border-color: @selected; 56 | background-color: transparent; 57 | text-color: @foreground; 58 | children: [ "textbox-prompt-colon", "prompt"]; 59 | } 60 | 61 | textbox-prompt-colon { 62 | enabled: true; 63 | expand: false; 64 | str: ""; 65 | padding: 10px 19px 10px 16px; 66 | border-radius: 100%; 67 | background-color: @active; 68 | text-color: @background; 69 | } 70 | prompt { 71 | enabled: true; 72 | padding: 10px; 73 | border-radius: 20px; 74 | background-color: @selected; 75 | text-color: @background; 76 | } 77 | 78 | /*****----- Message -----*****/ 79 | message { 80 | enabled: true; 81 | margin: 0px; 82 | padding: 10px; 83 | border: 0px solid; 84 | border-radius: 12px; 85 | border-color: @selected; 86 | background-color: @background-alt; 87 | text-color: @foreground; 88 | } 89 | textbox { 90 | background-color: inherit; 91 | text-color: inherit; 92 | vertical-align: 0.5; 93 | horizontal-align: 0.0; 94 | } 95 | 96 | /*****----- Listview -----*****/ 97 | listview { 98 | enabled: true; 99 | columns: 5; 100 | lines: 1; 101 | cycle: true; 102 | scrollbar: false; 103 | layout: vertical; 104 | 105 | spacing: 10px; 106 | background-color: transparent; 107 | cursor: "default"; 108 | } 109 | 110 | /*****----- Elements -----*****/ 111 | element { 112 | enabled: true; 113 | padding: 22px 10px; 114 | border: 0px solid; 115 | border-radius: 12px; 116 | border-color: @selected; 117 | background-color: transparent; 118 | text-color: @foreground; 119 | cursor: pointer; 120 | } 121 | element-text { 122 | font: "feather 20"; 123 | background-color: transparent; 124 | text-color: inherit; 125 | cursor: inherit; 126 | vertical-align: 0.5; 127 | horizontal-align: 0.5; 128 | } 129 | 130 | element normal.normal, 131 | element alternate.normal { 132 | background-color: var(background-alt); 133 | text-color: var(foreground); 134 | } 135 | element normal.urgent, 136 | element alternate.urgent, 137 | element selected.active { 138 | background-color: var(urgent); 139 | text-color: var(background); 140 | } 141 | element normal.active, 142 | element alternate.active, 143 | element selected.urgent { 144 | background-color: var(active); 145 | text-color: var(background); 146 | } 147 | element selected.normal { 148 | background-color: var(selected); 149 | text-color: var(background); 150 | } 151 | -------------------------------------------------------------------------------- /config/rofi/screenshot.rasi: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (C) 2020-2023 Aditya Shakya 3 | **/ 4 | 5 | /*****----- Configuration -----*****/ 6 | configuration { 7 | show-icons: false; 8 | } 9 | 10 | /*****----- Global Properties -----*****/ 11 | @import "shared/colors.rasi" 12 | @import "shared/fonts.rasi" 13 | 14 | /* 15 | USE_ICON=YES 16 | */ 17 | 18 | /*****----- Main Window -----*****/ 19 | window { 20 | transparency: "real"; 21 | location: center; 22 | anchor: center; 23 | fullscreen: false; 24 | width: 500px; 25 | x-offset: 0px; 26 | y-offset: 0px; 27 | margin: 0px; 28 | padding: 0px; 29 | border: 0px solid; 30 | border-radius: 10px; 31 | border-color: @selected; 32 | cursor: "default"; 33 | background-color: @background; 34 | } 35 | 36 | /*****----- Main Box -----*****/ 37 | mainbox { 38 | enabled: true; 39 | spacing: 10px; 40 | margin: 0px; 41 | padding: 30px; 42 | background-color: transparent; 43 | children: [ "inputbar", "message", "listview" ]; 44 | } 45 | 46 | /*****----- Inputbar -----*****/ 47 | inputbar { 48 | enabled: true; 49 | spacing: 10px; 50 | padding: 0px; 51 | border: 0px; 52 | border-radius: 0px; 53 | border-color: @selected; 54 | background-color: transparent; 55 | text-color: @foreground; 56 | children: [ "textbox-prompt-colon", "prompt"]; 57 | } 58 | 59 | textbox-prompt-colon { 60 | enabled: true; 61 | expand: false; 62 | str: ""; 63 | padding: 10px 12px; 64 | border-radius: 100%; 65 | background-color: @active; 66 | text-color: @background; 67 | } 68 | prompt { 69 | enabled: true; 70 | padding: 10px; 71 | border-radius: 20px; 72 | background-color: @selected; 73 | text-color: @background; 74 | } 75 | 76 | /*****----- Message -----*****/ 77 | message { 78 | enabled: true; 79 | margin: 0px; 80 | padding: 10px; 81 | border: 0px solid; 82 | border-radius: 12px; 83 | border-color: @selected; 84 | background-color: @background-alt; 85 | text-color: @foreground; 86 | } 87 | textbox { 88 | background-color: inherit; 89 | text-color: inherit; 90 | vertical-align: 0.5; 91 | horizontal-align: 0.0; 92 | } 93 | 94 | /*****----- Listview -----*****/ 95 | listview { 96 | enabled: true; 97 | columns: 5; 98 | lines: 1; 99 | cycle: true; 100 | scrollbar: false; 101 | layout: vertical; 102 | 103 | spacing: 10px; 104 | background-color: transparent; 105 | cursor: "default"; 106 | } 107 | 108 | /*****----- Elements -----*****/ 109 | element { 110 | enabled: true; 111 | padding: 22px 10px; 112 | border: 0px solid; 113 | border-radius: 12px; 114 | border-color: @selected; 115 | background-color: transparent; 116 | text-color: @foreground; 117 | cursor: pointer; 118 | } 119 | element-text { 120 | font: "feather 20"; 121 | background-color: transparent; 122 | text-color: inherit; 123 | cursor: inherit; 124 | vertical-align: 0.5; 125 | horizontal-align: 0.5; 126 | } 127 | 128 | element normal.normal, 129 | element alternate.normal { 130 | background-color: var(background-alt); 131 | text-color: var(foreground); 132 | } 133 | element normal.urgent, 134 | element alternate.urgent, 135 | element selected.active { 136 | background-color: var(urgent); 137 | text-color: var(background); 138 | } 139 | element normal.active, 140 | element alternate.active, 141 | element selected.urgent { 142 | background-color: var(active); 143 | text-color: var(background); 144 | } 145 | element selected.normal { 146 | background-color: var(selected); 147 | text-color: var(background); 148 | } 149 | -------------------------------------------------------------------------------- /config/rofi/shared/colors.rasi: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2020-2023 Aditya Shakya */ 2 | 3 | /* Colors */ 4 | 5 | * { 6 | background: #1E2128; 7 | background-alt: #292d37; 8 | foreground: #c0caf5; 9 | selected: #7aa2f7; 10 | active: #9ece6a; 11 | urgent: #f7768e; 12 | } 13 | -------------------------------------------------------------------------------- /config/rofi/shared/fonts.rasi: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2020-2023 Aditya Shakya */ 2 | 3 | /* Text Font */ 4 | 5 | * { 6 | font: "FZLanTingYuan-DB-GBK 11"; 7 | } 8 | -------------------------------------------------------------------------------- /config/waybar/config: -------------------------------------------------------------------------------- 1 | [{ 2 | "layer" : "top", 3 | "position" : "top", 4 | "modules-left" : [ 5 | // "custom/launcher", 6 | "wlr/workspaces", 7 | "temperature", 8 | "memory", 9 | "cpu", 10 | ], 11 | "modules-center" : [ 12 | "clock", 13 | ], 14 | "modules-right" : [ 15 | "cava", 16 | // "custom/wall", 17 | "mpd", 18 | "pulseaudio", 19 | "backlight", 20 | // "network" 21 | "battery", 22 | "tray", 23 | ], 24 | "custom/launcher" : { 25 | "format" : " ", 26 | "on-click" : "~/.config/hypr/scripts/rofi/launcher", 27 | "tooltip" : false, 28 | }, 29 | "custom/wall" : { 30 | "on-click" : "~/.config/hypr/scripts/waybar/cycle.sh", 31 | "format" : " 󰠖 ", 32 | "tooltip" : false, 33 | }, 34 | "cava": { 35 | // "cava_config": "$XDG_CONFIG_HOME/cava/cava.conf", 36 | "framerate": 60, 37 | "autosens": 1, 38 | "bars": 10, 39 | "method": "pipewire", 40 | "source": "auto", 41 | "bar_delimiter": 0, 42 | "format-icons" : ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█" ], 43 | }, 44 | "wlr/workspaces" : { 45 | "format" : "{icon}", 46 | "on-click" : "activate", 47 | "on-scroll-up" : "hyprctl dispatch workspace e+1", 48 | "on-scroll-down" : "hyprctl dispatch workspace e-1", 49 | }, 50 | "idle_inhibitor" : { 51 | "format" : "{icon}", 52 | "format-icons" : { 53 | "activated" : "", 54 | "deactivated" : "", 55 | }, 56 | "tooltip" : false, 57 | }, 58 | "backlight" : { 59 | "device" : "intel_backlight", 60 | "on-scroll-up" : "light -A 5", 61 | "on-scroll-down" : "light -U 5", 62 | "format" : "{icon} {percent}%", 63 | "format-icons" : [ "󰃝", "󰃞", "󰃟", "󰃠", ], 64 | }, 65 | "pulseaudio" : { 66 | "scroll-step" : 1, 67 | "format" : "{icon} {volume}%", 68 | "format-muted" : "󰖁 Muted", 69 | "format-icons" : { 70 | "default" : [ "", "", "", ], 71 | }, 72 | "on-click" : "pavucontrol", 73 | "on-click-right" : "~/.config/hypr/scripts/control/volume --toggle", 74 | "tooltip" : false, 75 | }, 76 | "battery" : { 77 | "interval" : 10, 78 | "states" : { 79 | "warning" : 20, 80 | "critical" : 10, 81 | }, 82 | "format" : "{icon} {capacity}%", 83 | "format-icons" : [ "󰁺", "󰁻", "󰁼", "󰁽", "󰁾", "󰁿", "󰂀", "󰂁", "󰂂", "󰁹", ], 84 | "format-full" : "{icon} {capacity}%", 85 | "format-charging" : "󰂄 {capacity}%", 86 | "tooltip" : false, 87 | }, 88 | "clock" : { 89 | "interval" : 1, 90 | "on-click" : "~/.config/hypr/scripts/waybar/cycle.sh", 91 | "format" : "{:%Y年%m月%d日 %H:%M:%S %A}", 92 | "tooltip" : true, 93 | "tooltip-format" : "{:%Y年%b%d日}\n{calendar}", 94 | }, 95 | "memory" : { 96 | "interval" : 1, 97 | "format" : " {percentage}%", 98 | "on-click" : "wezterm --config-file ~/.config/wezterm/float.lua start --class floatwezterm btm -e --default_widget_type proc", 99 | "states" : { 100 | "warning" : 85, 101 | }, 102 | }, 103 | "cpu" : { 104 | "interval" : 1, 105 | "on-click" : "wezterm --config-file ~/.config/wezterm/float.lua start --class floatwezterm btm -e --default_widget_type cpu", 106 | "format" : " {usage}%", 107 | }, 108 | "mpd" : { 109 | "max-length" : 25, 110 | "format" : " {title}", 111 | "format-paused" : " {title}", 112 | "format-stopped" : "", 113 | "format-disconnected" : "", 114 | "on-click" : "wezterm --config-file ~/.config/wezterm/float.lua start --class floatwezterm ncmpcpp ", 115 | "on-scroll-up" : "mpc --quiet prev", 116 | "on-scroll-down" : "mpc --quiet next", 117 | "smooth-scrolling-threshold" : 5, 118 | "tooltip-format" : "{title} - {artist} ({elapsedTime:%M:%S}/{totalTime:%H:%M:%S})", 119 | }, 120 | "network" : { 121 | "format-disconnected" : "󰯡 Disconnected", 122 | "format-ethernet" : "󰀂 {ifname} ({ipaddr})", 123 | "format-linked" : "󰖪 {essid} (No IP)", 124 | "format-wifi" : "󰖩 {essid}", 125 | "interval" : 1, 126 | "on-click" : "wezterm --config-file ~/.config/wezterm/float.lua start --class floatwezterm btm -e --default_widget_type net", 127 | "tooltip" : false, 128 | }, 129 | "temperature" : { 130 | "interval" : 1, 131 | "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", 132 | "critical-threshold": 80, 133 | "on-click" : "wezterm --config-file ~/.config/wezterm/float.lua start --class floatwezterm btm -e --default_widget_type temp", 134 | "tooltip" : true, 135 | "format" : " {temperatureC}°C", 136 | }, 137 | "custom/powermenu" : { 138 | "format" : "", 139 | "on-click" : "~/.config/hypr/scripts/rofi/powermenu", 140 | "tooltip" : false, 141 | }, 142 | "tray" : { 143 | "icon-size" : 15, 144 | "spacing" : 5, 145 | }, 146 | }], 147 | -------------------------------------------------------------------------------- /config/waybar/configb: -------------------------------------------------------------------------------- 1 | [{ 2 | "layer": "top", 3 | "height": 33, 4 | "margin-top": 0, 5 | "margin-left": 0, 6 | "margin-bottom": -15, 7 | "margin-right": 0, 8 | "spacing": 0, 9 | 10 | "wlr/workspaces": { 11 | "format": "{icon}", 12 | "format-active": "{icon}", 13 | "on-click": "activate", 14 | "format-icons": { 15 | "urgent": "!", 16 | "active": "●", 17 | "default": "○", 18 | }, 19 | // "10":"10" 20 | // } 21 | }, 22 | 23 | "modules-left": [ 24 | "wlr/workspaces", 25 | ], 26 | 27 | "modules-center": [ 28 | "clock" 29 | ], 30 | 31 | "modules-right": [ 32 | "battery", 33 | "pulseaudio", 34 | ], 35 | 36 | "clock": { 37 | "format": "{:%Y年%m月%d日 %H:%M:%S %A}", 38 | "interval": 1, 39 | "tooltip-format": "{:%B %Y}\n{calendar}", 40 | "on-click": "~/.config/hypr/scripts/waybar/cycle.sh" 41 | }, 42 | 43 | "backlight": { 44 | "device": "amdgpu_bl1", 45 | "format": "{icon} {percent}", 46 | "tooltip": false, 47 | "format-icons": ["", "", ""] 48 | }, 49 | 50 | "pulseaudio": { 51 | "format": " {volume}", 52 | "format-bluetooth": " 󰂯{volume}", 53 | "format-bluetooth-muted": "󰂲 {volume}", 54 | "tooltip": false, 55 | "format-muted": " 󰝟 {volume}", 56 | "on-click": "pavucontrol" 57 | } 58 | }, 59 | 60 | { 61 | "layer": "top", 62 | "position": "bottom", 63 | "height": 20, 64 | "margin-top": -15, 65 | "margin-left": 0, 66 | "margin-bottom": 0, 67 | "margin-right": 0, 68 | "spacing": 0, 69 | 70 | "modules-left": [ 71 | "memory", 72 | "cpu", 73 | "temperature", 74 | ], 75 | 76 | "cava": { 77 | // "cava_config": "$XDG_CONFIG_HOME/cava/cava.conf", 78 | "framerate": 60, 79 | "autosens": 1, 80 | "bars": 150, 81 | "method": "pipewire", 82 | "source": "auto", 83 | "bar_delimiter": 0, 84 | "format-icons" : ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█" ], 85 | }, 86 | 87 | "modules-center": [ 88 | "cava" 89 | ], 90 | 91 | "modules-right": [ 92 | "tray" 93 | ], 94 | 95 | "cpu": { 96 | "interval": 1, 97 | "format": " {usage}%", 98 | }, 99 | 100 | "memory": { 101 | "interval": 1, 102 | "format": " {}%", 103 | "format-alt": " {used}GiB", 104 | }, 105 | 106 | "temperature": { 107 | "interval": 1, 108 | "thermal-zone": 0, 109 | "critical-threshold": 80, 110 | "format-critical": " {temperatureC}°C", 111 | "format": " {temperatureC}°C" 112 | }, 113 | 114 | "wlr/workspaces": { 115 | "format": "{icon}{name}", 116 | "format-icons": { 117 | "active": "●", 118 | "default": "○" 119 | }, 120 | }, 121 | 122 | "tray": { 123 | "icon-size": 20, 124 | "spacing": 10 125 | }, 126 | 127 | "battery": { 128 | "bat": "BAT0", 129 | "interval": 30, 130 | "states": { 131 | "warning": 30, 132 | "critical": 15 133 | }, 134 | "format": "{icon} {capacity}%", 135 | "format-charging": "{icon}⚡{capacity}%", 136 | "format-icons": [" ", " ", " ", " "], 137 | "max-length": 25, 138 | "tooltip": false 139 | }, 140 | 141 | "network": { 142 | "format-wifi": " {essid}", 143 | "format-ethernet": "", 144 | "tooltip": false, 145 | "on-click": "bash ~/.config/waybar/scripts/rofi-wifi-menu.sh", 146 | "format-disconnected": "<󱚼/b>" 147 | }, 148 | 149 | "bluetooth": { 150 | "format": "", 151 | "format-connected": " {device_alias}", 152 | "format-disabled": "", 153 | "interval": 30, 154 | "on-click" : "blueman-manager", 155 | "tooltip": false, 156 | } 157 | 158 | }] 159 | -------------------------------------------------------------------------------- /config/waybar/style.css: -------------------------------------------------------------------------------- 1 | * { 2 | font-family: "JetBrainsMono Nerd Font"; 3 | font-size: 12pt; 4 | font-weight: bold; 5 | border-radius: 6px; 6 | transition-property: background-color; 7 | transition-duration: 0.5s; 8 | } 9 | @keyframes blink_red { 10 | to { 11 | background-color: rgb(242, 143, 173); 12 | color: rgb(26, 24, 38); 13 | } 14 | } 15 | .warning, .critical, .urgent { 16 | animation-name: blink_red; 17 | animation-duration: 1s; 18 | animation-timing-function: linear; 19 | animation-iteration-count: infinite; 20 | animation-direction: alternate; 21 | } 22 | window#waybar { 23 | background-color: transparent; 24 | } 25 | window > box { 26 | margin-left: 10px; 27 | margin-right: 10px; 28 | margin-top: 5px; 29 | background-color: rgb(30, 30, 46); 30 | } 31 | #workspaces { 32 | padding-left: 0px; 33 | padding-right: 4px; 34 | } 35 | #workspaces button { 36 | padding-top: 5px; 37 | padding-bottom: 5px; 38 | padding-left: 10px; 39 | padding-right: 10px; 40 | } 41 | #workspaces button.active { 42 | background-color: rgb(181, 232, 224); 43 | color: rgb(26, 24, 38); 44 | } 45 | #workspaces button.urgent { 46 | color: rgb(26, 24, 38); 47 | } 48 | #workspaces button:hover { 49 | background-color: rgb(248, 189, 150); 50 | color: rgb(26, 24, 38); 51 | } 52 | tooltip { 53 | background: rgb(48, 45, 65); 54 | } 55 | tooltip label { 56 | color: rgb(217, 224, 238); 57 | } 58 | #custom-launcher { 59 | font-size: 20px; 60 | padding-left: 8px; 61 | padding-right: 6px; 62 | color: #7ebae4; 63 | } 64 | #mode, #clock, #memory, #temperature,#cpu,#mpd, #custom-wall, #temperature, #backlight, #pulseaudio, #network, #battery, #custom-powermenu, #cava { 65 | padding-left: 10px; 66 | padding-right: 10px; 67 | } 68 | #mode { 69 | margin-left: 10px; 70 | background-color: rgb(248, 189, 150); 71 | color: rgb(26, 24, 38); 72 | } 73 | #memory { 74 | color: rgb(181, 232, 224); 75 | } 76 | #cpu { 77 | color: rgb(245, 194, 231); 78 | } 79 | #clock { 80 | color: rgb(217, 224, 238); 81 | } 82 | #idle_inhibitor { 83 | color: rgb(221, 182, 242); 84 | } 85 | #custom-wall { 86 | color: rgb(221, 182, 242); 87 | } 88 | #temperature { 89 | color: rgb(150, 205, 251); 90 | } 91 | #backlight { 92 | color: rgb(248, 189, 150); 93 | } 94 | #pulseaudio { 95 | color: rgb(245, 224, 220); 96 | } 97 | #network { 98 | color: #ABE9B3; 99 | } 100 | 101 | #network.disconnected { 102 | color: rgb(255, 255, 255); 103 | } 104 | #battery.charging, #battery.full, #battery.discharging { 105 | color: rgb(250, 227, 176); 106 | } 107 | #battery.critical:not(.charging) { 108 | color: rgb(242, 143, 173); 109 | } 110 | #custom-powermenu { 111 | color: rgb(242, 143, 173); 112 | } 113 | #tray { 114 | padding-right:10px; 115 | padding-left: 10px; 116 | } 117 | #mpd.paused { 118 | color: #414868; 119 | font-style: italic; 120 | } 121 | #mpd.stopped { 122 | background: transparent; 123 | } 124 | #mpd { 125 | color: #c0caf5; 126 | } 127 | #custom-cava-internal{ 128 | font-family: "Hack Nerd Font" ; 129 | } 130 | -------------------------------------------------------------------------------- /config/waybar/style.cssb: -------------------------------------------------------------------------------- 1 | * { 2 | font-family: JetBrainsMono Nerd Font; 3 | font-size: 20px; 4 | padding: 1px 5px 0px 5px; 5 | border-radius: 5px; 6 | } 7 | 8 | window#waybar { 9 | background: rgba(0,0,0,0); 10 | } 11 | 12 | #custom-launcher { 13 | font-size: 20px; 14 | color: #FFFFFF; 15 | background: rgba(0,0,0,0); 16 | padding: 0px 12px 0px 4px; 17 | margin: 0px; 18 | } 19 | 20 | #cpu { 21 | color: #FFFFFF; 22 | background: rgba(0,0,0,0); 23 | } 24 | 25 | #memory { 26 | color: #FFFFFF; 27 | background: rgba(0,0,0,0); 28 | } 29 | 30 | #temperature { 31 | color: #FFFFFF; 32 | background: rgba(0,0,0,0); 33 | } 34 | 35 | #custom-pacman-update { 36 | color: #FFFFFF; 37 | background: rgba(0,0,0,0); 38 | margin: 0px 0px 0px 10px; 39 | } 40 | 41 | #workspaces{ 42 | background-color: transparent; 43 | padding: 0px 0px 0px 0px; 44 | font-size: 20; 45 | } 46 | 47 | #workspaces button{ 48 | color: #FFFFFF; 49 | background: rgba(0,0,0,0); 50 | padding: 0px 0px 0px 0px; 51 | font-size: 20; 52 | } 53 | 54 | #window { 55 | background: rgba(0,0,0,0); 56 | color: #FFFFFF; 57 | } 58 | 59 | #workspaces button.active{ 60 | color: #FFFFFF; 61 | background: rgba(0,0,0,0); 62 | padding: 0px 0px 0px 0px; 63 | font-size: 20; 64 | } 65 | 66 | #battery { 67 | color: #FFFFFF; 68 | background: rgba(0,0,0,0); 69 | margin: 0px 5px 0px 5px; 70 | } 71 | 72 | #backlight { 73 | color: #FFFFFF; 74 | background: rgba(0,0,0,0); 75 | margin: 0px 5px 0px 0px; 76 | } 77 | 78 | #pulseaudio { 79 | color: #FFFFFF; 80 | background: rgba(0,0,0,0); 81 | margin: 0px 5px 0px 0px; 82 | } 83 | 84 | #network { 85 | color: #FFFFFF; 86 | background: rgba(0,0,0,0); 87 | margin: 0px 0px 0px 0px; 88 | } 89 | 90 | #clock { 91 | color: #FFFFFF; 92 | background: rgba(0,0,0,0); 93 | margin: 0px 5px 0px 0px; 94 | } 95 | 96 | #tray { 97 | background-color: rgba(0,0,0,0); 98 | padding: 0px 0px 0px 0px; 99 | border: 0px; 100 | font-size: 16px; 101 | } 102 | 103 | #tray > .passive { 104 | -gtk-icon-effect: dim; 105 | padding: 0px 0px 0px 0px; 106 | border: 0px; 107 | font-size: 16px; 108 | } 109 | 110 | #tray > .needs-attention { 111 | -gtk-icon-effect: highlight; 112 | background-color: rgba(0,0,0,0); 113 | padding: 0px 0px 0px 0px; 114 | border: 0px; 115 | font-size: 16px; 116 | } 117 | 118 | #custom-power-menu { 119 | color: #FFFFFF; 120 | background: rgba(0,0,0,0); 121 | margin: 0px 0px 0px 5px; 122 | padding: 0px 12px 0px 10px 123 | } 124 | 125 | #cava { 126 | color: #FFFFFF; 127 | background: rgba(0,0,0,0); 128 | font-family: "3270 Nerd Font Mono"; 129 | } 130 | 131 | #bluetooth { 132 | color: #FFFFFF; 133 | background: rgba(0,0,0,0); 134 | margin: 0px 5px 0px 0px; 135 | } 136 | 137 | /*# sourceMappingURL=style.css.map */ 138 | -------------------------------------------------------------------------------- /config/wezterm/colors/rose-pine-dawn.toml: -------------------------------------------------------------------------------- 1 | # rose-pine-dawn 2 | [colors] 3 | foreground = "#575279" 4 | background = "#faf4ed" 5 | cursor_bg = "#9893a5" 6 | cursor_border = "#9893a5" 7 | cursor_fg = "#575279" 8 | selection_bg = "#f2e9e1" 9 | selection_fg = "#575279" 10 | 11 | ansi = ["#f2e9de", "#b4637a", "#286983", "#ea9d34", "#56949f", "#907aa9", "#d7827e", "#575279"] 12 | brights = ["#6e6a86", "#b4637a", "#286983", "#ea9d34", "#56949f", "#907aa9", "#d7827e", "#575279"] 13 | -------------------------------------------------------------------------------- /config/wezterm/colors/rose-pine-moon.toml: -------------------------------------------------------------------------------- 1 | # rose-pine-moon 2 | [colors] 3 | foreground = "#e0def4" 4 | background = "#232136" 5 | cursor_bg = "#59546d" 6 | cursor_border = "#59546d" 7 | cursor_fg = "#e0def4" 8 | selection_bg = "#393552" 9 | selection_fg = "#817c9c" 10 | 11 | ansi = ["#393552", "#eb6f92", "#3e8fb0", "#f6c177", "#9ccfd8", "#c4a7e7", "#ebbcba", "#e0def4"] 12 | brights = ["817c9c", "#eb6f92", "#3e8fb0", "#f6c177", "#9ccfd8", "#c4a7e7", "#ebbcba", "#e0def4"] 13 | -------------------------------------------------------------------------------- /config/wezterm/colors/rose-pine.toml: -------------------------------------------------------------------------------- 1 | # rose-pine 2 | [colors] 3 | foreground = "#e0def4" 4 | background = "#191724" 5 | cursor_bg = "#524f67" 6 | cursor_border = "#524f67" 7 | cursor_fg = "#e0def4" 8 | selection_bg = "#2a283e" 9 | selection_fg = "#e0def4" 10 | 11 | ansi = ["#26233a", "#eb6f92", "#31748f", "#f6c177", "#9ccfd8", "#c4a7e7", "#ebbcba", "#e0def4"] 12 | brights = ["#6e6a86", "#eb6f92", "#31748f", "#f6c177", "#9ccfd8", "#c4a7e7", "#ebbcba", "#e0def4"] 13 | -------------------------------------------------------------------------------- /config/wezterm/colors/tokyonight_day.toml: -------------------------------------------------------------------------------- 1 | [colors] 2 | foreground = "#3760bf" 3 | background = "#e1e2e7" 4 | cursor_bg = "#3760bf" 5 | cursor_border = "#3760bf" 6 | cursor_fg = "#e1e2e7" 7 | selection_bg = "#b6bfe2" 8 | selection_fg = "#3760bf" 9 | 10 | ansi = ["#e9e9ed", "#f52a65", "#587539", "#8c6c3e", "#2e7de9", "#9854f1", "#007197", "#6172b0"] 11 | brights = ["#a1a6c5", "#f52a65", "#587539", "#8c6c3e", "#2e7de9", "#9854f1", "#007197", "#3760bf"] 12 | 13 | [colors.tab_bar] 14 | inactive_tab_edge = "#e9e9ec" 15 | background = "#191b28" 16 | 17 | [colors.tab_bar.active_tab] 18 | fg_color = "#2e7de9" 19 | bg_color = "#e1e2e7" 20 | 21 | [colors.tab_bar.inactive_tab] 22 | bg_color = "#e9e9ec" 23 | fg_color = "#8990b3" 24 | 25 | [colors.tab_bar.inactive_tab_hover] 26 | bg_color = "#e9e9ec" 27 | fg_color = "#2e7de9" 28 | 29 | [colors.tab_bar.new_tab_hover] 30 | fg_color = "#e9e9ec" 31 | bg_color = "#2e7de9" 32 | 33 | [colors.tab_bar.new_tab] 34 | fg_color = "#2e7de9" 35 | bg_color = "#191b28" 36 | 37 | [metadata] 38 | aliases = [] 39 | author = "folke" 40 | name = "Tokyo Night Day" -------------------------------------------------------------------------------- /config/wezterm/colors/tokyonight_moon.toml: -------------------------------------------------------------------------------- 1 | [colors] 2 | foreground = "#c8d3f5" 3 | background = "#222436" 4 | cursor_bg = "#c8d3f5" 5 | cursor_border = "#c8d3f5" 6 | cursor_fg = "#222436" 7 | selection_bg = "#2d3f76" 8 | selection_fg = "#c8d3f5" 9 | 10 | ansi = ["#1b1d2b", "#ff757f", "#c3e88d", "#ffc777", "#82aaff", "#c099ff", "#86e1fc", "#828bb8"] 11 | brights = ["#444a73", "#ff757f", "#c3e88d", "#ffc777", "#82aaff", "#c099ff", "#86e1fc", "#c8d3f5"] 12 | 13 | [colors.tab_bar] 14 | inactive_tab_edge = "#1e2030" 15 | background = "#191b28" 16 | 17 | [colors.tab_bar.active_tab] 18 | fg_color = "#82aaff" 19 | bg_color = "#222436" 20 | 21 | [colors.tab_bar.inactive_tab] 22 | bg_color = "#1e2030" 23 | fg_color = "#545c7e" 24 | 25 | [colors.tab_bar.inactive_tab_hover] 26 | bg_color = "#1e2030" 27 | fg_color = "#82aaff" 28 | 29 | [colors.tab_bar.new_tab_hover] 30 | fg_color = "#1e2030" 31 | bg_color = "#82aaff" 32 | 33 | [colors.tab_bar.new_tab] 34 | fg_color = "#82aaff" 35 | bg_color = "#191b28" 36 | 37 | [metadata] 38 | aliases = [] 39 | author = "folke" 40 | name = "Tokyo Night Moon" -------------------------------------------------------------------------------- /config/wezterm/colors/tokyonight_night.toml: -------------------------------------------------------------------------------- 1 | [colors] 2 | foreground = "#c0caf5" 3 | background = "#1a1b26" 4 | cursor_bg = "#c0caf5" 5 | cursor_border = "#c0caf5" 6 | cursor_fg = "#1a1b26" 7 | selection_bg = "#283457" 8 | selection_fg = "#c0caf5" 9 | 10 | ansi = ["#15161e", "#f7768e", "#9ece6a", "#e0af68", "#7aa2f7", "#bb9af7", "#7dcfff", "#a9b1d6"] 11 | brights = ["#414868", "#f7768e", "#9ece6a", "#e0af68", "#7aa2f7", "#bb9af7", "#7dcfff", "#c0caf5"] 12 | 13 | [colors.tab_bar] 14 | inactive_tab_edge = "#16161e" 15 | background = "#191b28" 16 | 17 | [colors.tab_bar.active_tab] 18 | fg_color = "#7aa2f7" 19 | bg_color = "#1a1b26" 20 | 21 | [colors.tab_bar.inactive_tab] 22 | bg_color = "#16161e" 23 | fg_color = "#545c7e" 24 | 25 | [colors.tab_bar.inactive_tab_hover] 26 | bg_color = "#16161e" 27 | fg_color = "#7aa2f7" 28 | 29 | [colors.tab_bar.new_tab_hover] 30 | fg_color = "#16161e" 31 | bg_color = "#7aa2f7" 32 | 33 | [colors.tab_bar.new_tab] 34 | fg_color = "#7aa2f7" 35 | bg_color = "#191b28" 36 | 37 | [metadata] 38 | aliases = [] 39 | author = "folke" 40 | name = "Tokyo Night" 41 | -------------------------------------------------------------------------------- /config/wezterm/colors/tokyonight_storm.toml: -------------------------------------------------------------------------------- 1 | [colors] 2 | foreground = "#c0caf5" 3 | background = "#24283b" 4 | cursor_bg = "#c0caf5" 5 | cursor_border = "#c0caf5" 6 | cursor_fg = "#24283b" 7 | selection_bg = "#2e3c64" 8 | selection_fg = "#c0caf5" 9 | 10 | ansi = ["#1d202f", "#f7768e", "#9ece6a", "#e0af68", "#7aa2f7", "#bb9af7", "#7dcfff", "#a9b1d6"] 11 | brights = ["#414868", "#f7768e", "#9ece6a", "#e0af68", "#7aa2f7", "#bb9af7", "#7dcfff", "#c0caf5"] 12 | 13 | [colors.tab_bar] 14 | inactive_tab_edge = "#1f2335" 15 | background = "#191b28" 16 | 17 | [colors.tab_bar.active_tab] 18 | fg_color = "#7aa2f7" 19 | bg_color = "#24283b" 20 | 21 | [colors.tab_bar.inactive_tab] 22 | bg_color = "#1f2335" 23 | fg_color = "#545c7e" 24 | 25 | [colors.tab_bar.inactive_tab_hover] 26 | bg_color = "#1f2335" 27 | fg_color = "#7aa2f7" 28 | 29 | [colors.tab_bar.new_tab_hover] 30 | fg_color = "#1f2335" 31 | bg_color = "#7aa2f7" 32 | 33 | [colors.tab_bar.new_tab] 34 | fg_color = "#7aa2f7" 35 | bg_color = "#191b28" 36 | 37 | [metadata] 38 | aliases = [] 39 | author = "folke" 40 | name = "Tokyo Night Storm" -------------------------------------------------------------------------------- /config/wezterm/float.lua: -------------------------------------------------------------------------------- 1 | local wezterm = require("wezterm") 2 | 3 | local function font_with_fallback(name, params) 4 | local names = { 5 | name, 6 | "Apple Color Emoji", 7 | "azuki_font", 8 | "FZLanTingYuan-DB-GBK", 9 | } 10 | return wezterm.font_with_fallback(names, params) 11 | end 12 | 13 | local font_name = "JetBrainsMono Nerd Font" 14 | 15 | return { 16 | -- -- Default shell 17 | -- default_prog = { 18 | -- "zsh", 19 | -- }, 20 | -- OpenGL for GPU acceleration, Software for CPU 21 | front_end = "OpenGL", 22 | 23 | color_scheme = "Tokyo Night", 24 | 25 | -- Font config 26 | font = font_with_fallback(font_name), 27 | font_rules = { 28 | { 29 | italic = true, 30 | font = font_with_fallback(font_name, { italic = true }), 31 | }, 32 | { 33 | italic = false, 34 | font = font_with_fallback(font_name, { bold = true }), 35 | }, 36 | { 37 | intensity = "Bold", 38 | font = font_with_fallback(font_name, { bold = true }), 39 | }, 40 | }, 41 | warn_about_missing_glyphs = false, 42 | font_size = 12.5, 43 | line_height = 1.0, 44 | dpi = 96.0, 45 | 46 | -- Cursor style 47 | default_cursor_style = "BlinkingUnderline", 48 | 49 | -- X11 50 | enable_wayland = true, 51 | 52 | -- Keybinds 53 | disable_default_key_bindings = true, 54 | 55 | keys = { 56 | { 57 | key = [[\]], 58 | mods = "CTRL|ALT", 59 | action = wezterm.action({ 60 | SplitHorizontal = { domain = "CurrentPaneDomain" }, 61 | }), 62 | }, 63 | { 64 | key = [[\]], 65 | mods = "CTRL", 66 | action = wezterm.action({ 67 | SplitVertical = { domain = "CurrentPaneDomain" }, 68 | }), 69 | }, 70 | { 71 | key = "q", 72 | mods = "CTRL", 73 | action = wezterm.action({ CloseCurrentPane = { confirm = false } }), 74 | }, 75 | { 76 | key = "h", 77 | mods = "CTRL|SHIFT", 78 | action = wezterm.action({ ActivatePaneDirection = "Left" }), 79 | }, 80 | { 81 | key = "l", 82 | mods = "CTRL|SHIFT", 83 | action = wezterm.action({ ActivatePaneDirection = "Right" }), 84 | }, 85 | { 86 | key = "k", 87 | mods = "CTRL|SHIFT", 88 | action = wezterm.action({ ActivatePaneDirection = "Up" }), 89 | }, 90 | { 91 | key = "j", 92 | mods = "CTRL|SHIFT", 93 | action = wezterm.action({ ActivatePaneDirection = "Down" }), 94 | }, 95 | { 96 | key = "h", 97 | mods = "CTRL|SHIFT|ALT", 98 | action = wezterm.action({ AdjustPaneSize = { "Left", 1 } }), 99 | }, 100 | { 101 | key = "l", 102 | mods = "CTRL|SHIFT|ALT", 103 | action = wezterm.action({ AdjustPaneSize = { "Right", 1 } }), 104 | }, 105 | { 106 | key = "k", 107 | mods = "CTRL|SHIFT|ALT", 108 | action = wezterm.action({ AdjustPaneSize = { "Up", 1 } }), 109 | }, 110 | { 111 | key = "j", 112 | mods = "CTRL|SHIFT|ALT", 113 | action = wezterm.action({ AdjustPaneSize = { "Down", 1 } }), 114 | }, 115 | { -- browser-like bindings for tabbing 116 | key = "Enter", 117 | mods = "CTRL", 118 | action = wezterm.action({ SpawnTab = "CurrentPaneDomain" }), 119 | }, 120 | { 121 | key = "q", 122 | mods = "CTRL", 123 | action = wezterm.action({ CloseCurrentTab = { confirm = false } }), 124 | }, 125 | { 126 | key = "Tab", 127 | mods = "CTRL", 128 | action = wezterm.action({ ActivateTabRelative = 1 }), 129 | }, 130 | { 131 | key = "Tab", 132 | mods = "CTRL|SHIFT", 133 | action = wezterm.action({ ActivateTabRelative = -1 }), 134 | }, -- standard copy/paste bindings 135 | { 136 | key = "v", 137 | mods = "CTRL|ALT", 138 | action = "ActivateCopyMode", 139 | }, 140 | { 141 | key = "v", 142 | mods = "CTRL|SHIFT", 143 | action = wezterm.action({ PasteFrom = "Clipboard" }), 144 | }, 145 | { 146 | key = "c", 147 | mods = "CTRL|SHIFT", 148 | action = wezterm.action({ CopyTo = "ClipboardAndPrimarySelection" }), 149 | }, 150 | }, 151 | 152 | -- Aesthetic Night Colorscheme 153 | bold_brightens_ansi_colors = true, 154 | -- Padding 155 | window_padding = { 156 | left = 25, 157 | right = 25, 158 | top = 25, 159 | bottom = 25, 160 | }, 161 | 162 | -- Tab Bar 163 | enable_tab_bar = true, 164 | hide_tab_bar_if_only_one_tab = true, 165 | show_tab_index_in_tab_bar = false, 166 | tab_bar_at_bottom = true, 167 | 168 | -- General 169 | automatically_reload_config = true, 170 | inactive_pane_hsb = { saturation = 1.0, brightness = 1.0 }, 171 | window_background_opacity = 0, 172 | window_close_confirmation = "NeverPrompt", 173 | window_frame = { font = font_with_fallback(font_name, { bold = true }) }, 174 | } 175 | -------------------------------------------------------------------------------- /config/wezterm/lua/rose-pine-dawn.lua: -------------------------------------------------------------------------------- 1 | -- rose-pine-dawn 2 | 3 | local M = {} 4 | 5 | local palette = { 6 | base = '#faf4ed', 7 | overlay = '#f2e9e1', 8 | muted = '#9893a5', 9 | text = '#575279', 10 | } 11 | 12 | local active_tab = { 13 | bg_color = palette.overlay, 14 | fg_color = palette.text, 15 | } 16 | 17 | local inactive_tab = { 18 | bg_color = palette.base, 19 | fg_color = palette.muted, 20 | } 21 | 22 | function M.colors() 23 | return { 24 | tab_bar = { 25 | background = palette.base, 26 | active_tab = active_tab, 27 | inactive_tab = inactive_tab, 28 | inactive_tab_hover = active_tab, 29 | new_tab = inactive_tab, 30 | new_tab_hover = active_tab, 31 | inactive_tab_edge = palette.muted, -- (Fancy tab bar only) 32 | }, 33 | } 34 | end 35 | 36 | function M.window_frame() -- (Fancy tab bar only) 37 | return { 38 | active_titlebar_bg = palette.base, 39 | inactive_titlebar_bg = palette.base, 40 | } 41 | end 42 | 43 | return M 44 | -------------------------------------------------------------------------------- /config/wezterm/lua/rose-pine-moon.lua: -------------------------------------------------------------------------------- 1 | -- rose-pine-moon 2 | 3 | local M = {} 4 | 5 | local palette = { 6 | base = '#232136', 7 | overlay = '#393552', 8 | muted = '#6e6a86', 9 | text = '#e0def4', 10 | } 11 | 12 | local active_tab = { 13 | bg_color = palette.overlay, 14 | fg_color = palette.text, 15 | } 16 | 17 | local inactive_tab = { 18 | bg_color = palette.base, 19 | fg_color = palette.muted, 20 | } 21 | 22 | function M.colors() 23 | return { 24 | tab_bar = { 25 | background = palette.base, 26 | active_tab = active_tab, 27 | inactive_tab = inactive_tab, 28 | inactive_tab_hover = active_tab, 29 | new_tab = inactive_tab, 30 | new_tab_hover = active_tab, 31 | inactive_tab_edge = palette.muted, -- (Fancy tab bar only) 32 | }, 33 | } 34 | end 35 | 36 | function M.window_frame() -- (Fancy tab bar only) 37 | return { 38 | active_titlebar_bg = palette.base, 39 | inactive_titlebar_bg = palette.base, 40 | } 41 | end 42 | 43 | return M 44 | -------------------------------------------------------------------------------- /config/wezterm/lua/rose-pine.lua: -------------------------------------------------------------------------------- 1 | -- rose-pine 2 | 3 | local M = {} 4 | 5 | local palette = { 6 | base = '#191724', 7 | overlay = '#26233a', 8 | muted = '#6e6a86', 9 | text = '#e0def4', 10 | } 11 | 12 | local active_tab = { 13 | bg_color = palette.overlay, 14 | fg_color = palette.text, 15 | } 16 | 17 | local inactive_tab = { 18 | bg_color = palette.base, 19 | fg_color = palette.muted, 20 | } 21 | 22 | function M.colors() 23 | return { 24 | tab_bar = { 25 | background = palette.base, 26 | active_tab = active_tab, 27 | inactive_tab = inactive_tab, 28 | inactive_tab_hover = active_tab, 29 | new_tab = inactive_tab, 30 | new_tab_hover = active_tab, 31 | inactive_tab_edge = palette.muted, -- (Fancy tab bar only) 32 | }, 33 | } 34 | end 35 | 36 | function M.window_frame() -- (Fancy tab bar only) 37 | return { 38 | active_titlebar_bg = palette.base, 39 | inactive_titlebar_bg = palette.base, 40 | } 41 | end 42 | 43 | return M 44 | -------------------------------------------------------------------------------- /config/wezterm/wezterm.lua: -------------------------------------------------------------------------------- 1 | local wezterm = require("wezterm") 2 | 3 | local function font_with_fallback(name, params) 4 | local names = { 5 | name, 6 | "Apple Color Emoji", 7 | "azuki_font", 8 | "FZLanTingYuan-DB-GBK", 9 | } 10 | return wezterm.font_with_fallback(names, params) 11 | end 12 | 13 | local font_name = "JetBrainsMono Nerd Font" 14 | 15 | return { 16 | -- -- Default shell 17 | -- default_prog = { 18 | -- "zsh", 19 | -- }, 20 | -- OpenGL for GPU acceleration, Software for CPU 21 | front_end = "OpenGL", 22 | 23 | color_scheme = "Tokyo Night", 24 | 25 | -- Font config 26 | font = font_with_fallback(font_name), 27 | font_rules = { 28 | { 29 | italic = true, 30 | font = font_with_fallback(font_name, { italic = true }), 31 | }, 32 | { 33 | italic = false, 34 | font = font_with_fallback(font_name, { bold = true }), 35 | }, 36 | { 37 | intensity = "Bold", 38 | font = font_with_fallback(font_name, { bold = true }), 39 | }, 40 | }, 41 | warn_about_missing_glyphs = false, 42 | font_size = 12.5, 43 | line_height = 1.0, 44 | dpi = 96.0, 45 | 46 | -- Cursor style 47 | default_cursor_style = "BlinkingUnderline", 48 | 49 | -- X11 50 | enable_wayland = true, 51 | 52 | -- Keybinds 53 | disable_default_key_bindings = true, 54 | 55 | keys = { 56 | { 57 | key = [[\]], 58 | mods = "CTRL|ALT", 59 | action = wezterm.action({ 60 | SplitHorizontal = { domain = "CurrentPaneDomain" }, 61 | }), 62 | }, 63 | { 64 | key = [[\]], 65 | mods = "CTRL", 66 | action = wezterm.action({ 67 | SplitVertical = { domain = "CurrentPaneDomain" }, 68 | }), 69 | }, 70 | { 71 | key = "q", 72 | mods = "CTRL", 73 | action = wezterm.action({ CloseCurrentPane = { confirm = false } }), 74 | }, 75 | { 76 | key = "h", 77 | mods = "CTRL|SHIFT", 78 | action = wezterm.action({ ActivatePaneDirection = "Left" }), 79 | }, 80 | { 81 | key = "l", 82 | mods = "CTRL|SHIFT", 83 | action = wezterm.action({ ActivatePaneDirection = "Right" }), 84 | }, 85 | { 86 | key = "k", 87 | mods = "CTRL|SHIFT", 88 | action = wezterm.action({ ActivatePaneDirection = "Up" }), 89 | }, 90 | { 91 | key = "j", 92 | mods = "CTRL|SHIFT", 93 | action = wezterm.action({ ActivatePaneDirection = "Down" }), 94 | }, 95 | { 96 | key = "h", 97 | mods = "CTRL|SHIFT|ALT", 98 | action = wezterm.action({ AdjustPaneSize = { "Left", 1 } }), 99 | }, 100 | { 101 | key = "l", 102 | mods = "CTRL|SHIFT|ALT", 103 | action = wezterm.action({ AdjustPaneSize = { "Right", 1 } }), 104 | }, 105 | { 106 | key = "k", 107 | mods = "CTRL|SHIFT|ALT", 108 | action = wezterm.action({ AdjustPaneSize = { "Up", 1 } }), 109 | }, 110 | { 111 | key = "j", 112 | mods = "CTRL|SHIFT|ALT", 113 | action = wezterm.action({ AdjustPaneSize = { "Down", 1 } }), 114 | }, 115 | { -- browser-like bindings for tabbing 116 | key = "Enter", 117 | mods = "CTRL", 118 | action = wezterm.action({ SpawnTab = "CurrentPaneDomain" }), 119 | }, 120 | { 121 | key = "q", 122 | mods = "CTRL", 123 | action = wezterm.action({ CloseCurrentTab = { confirm = false } }), 124 | }, 125 | { 126 | key = "Tab", 127 | mods = "CTRL", 128 | action = wezterm.action({ ActivateTabRelative = 1 }), 129 | }, 130 | { 131 | key = "Tab", 132 | mods = "CTRL|SHIFT", 133 | action = wezterm.action({ ActivateTabRelative = -1 }), 134 | }, -- standard copy/paste bindings 135 | { 136 | key = "v", 137 | mods = "CTRL|ALT", 138 | action = "ActivateCopyMode", 139 | }, 140 | { 141 | key = "v", 142 | mods = "CTRL|SHIFT", 143 | action = wezterm.action({ PasteFrom = "Clipboard" }), 144 | }, 145 | { 146 | key = "c", 147 | mods = "CTRL|SHIFT", 148 | action = wezterm.action({ CopyTo = "ClipboardAndPrimarySelection" }), 149 | }, 150 | }, 151 | 152 | -- Aesthetic Night Colorscheme 153 | bold_brightens_ansi_colors = true, 154 | -- Padding 155 | window_padding = { 156 | left = 25, 157 | right = 25, 158 | top = 25, 159 | bottom = 25, 160 | }, 161 | 162 | -- Tab Bar 163 | enable_tab_bar = true, 164 | hide_tab_bar_if_only_one_tab = true, 165 | show_tab_index_in_tab_bar = false, 166 | tab_bar_at_bottom = true, 167 | 168 | -- General 169 | automatically_reload_config = true, 170 | inactive_pane_hsb = { saturation = 1.0, brightness = 1.0 }, 171 | window_background_opacity = 0.5, 172 | window_close_confirmation = "NeverPrompt", 173 | window_frame = { font = font_with_fallback(font_name, { bold = true }) }, 174 | } 175 | -------------------------------------------------------------------------------- /config/zsh/.zsh/aliases.zsh: -------------------------------------------------------------------------------- 1 | alias c='clear' 2 | alias d='dolphin --platformtheme qt5ct' 3 | alias n='/home/feng/Documents/MyNotes/' 4 | alias ws='cd ~/Data/PycharmProjects/eol;nvim' 5 | alias cdiff='colordiff' 6 | alias gg='git clone' 7 | alias ipy='ipython' 8 | alias kc='kdeconnect-cli' 9 | alias ls='ls --color=always' 10 | alias l='ls -la' 11 | alias lg='lazygit' 12 | alias ra='ranger' 13 | alias sra='sudo -E ranger' 14 | alias reload='source ~/.zshrc' 15 | alias ez='ranger ~/.myconfig/zshconfig' 16 | alias eh='ranger ~/.myconfig/home_config' 17 | alias pa=ALL_PROXY=socks://127.0.0.1:10808 18 | alias ea='vim ~/.config/awesome/rc.lua' 19 | alias ssta='systemctl start' 20 | alias ssto='systemctl stop' 21 | alias sresa='systemctl restart' 22 | alias vmware='prime-run vmware' 23 | alias cp='cp -av' 24 | alias windows-binaries='cd ~/MyTools/windows-binaries;ls' 25 | alias wine32="WINEARCH=win32 WINEPREFIX=~/win32" 26 | alias windows-resources='cd ~/MyTools/windows-resources;ls' 27 | alias e-pacman-list='nvim /home/feng/list/pacman.list' 28 | alias e-awesome-rc='nvim /home/feng/.config/awesome/rc.lua' 29 | alias e-awesome-theme='nvim /home/feng/.config/awesome/themes/gtk/theme.lua' 30 | 31 | 32 | -------------------------------------------------------------------------------- /config/zsh/.zsh/env.zsh: -------------------------------------------------------------------------------- 1 | export nvim=~/.config/nvim 2 | export note=~/Documents/MyNotes 3 | export ranger=~/.config/ranger 4 | export awesome=~/.config/awesome 5 | export vm=~/.cache/vmware/drag_and_drop 6 | export LIBVIRT_DEFAULT_URI="qemu:///system" 7 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf-keybind.zsh: -------------------------------------------------------------------------------- 1 | # ____ ____ 2 | # / __/___ / __/ 3 | # / /_/_ / / /_ 4 | # / __/ / /_/ __/ 5 | # /_/ /___/_/ key-bindings.zsh 6 | # 7 | # - $FZF_TMUX_OPTS 8 | # - $FZF_CTRL_T_COMMAND 9 | # - $FZF_CTRL_T_OPTS 10 | # - $FZF_CTRL_R_OPTS 11 | # - $FZF_ALT_C_COMMAND 12 | # - $FZF_ALT_C_OPTS 13 | 14 | # Key bindings 15 | # ------------ 16 | 17 | # The code at the top and the bottom of this file is the same as in completion.zsh. 18 | # Refer to that file for explanation. 19 | if 'zmodload' 'zsh/parameter' 2>'/dev/null' && (( ${+options} )); then 20 | __fzf_key_bindings_options="options=(${(j: :)${(kv)options[@]}})" 21 | else 22 | () { 23 | __fzf_key_bindings_options="setopt" 24 | 'local' '__fzf_opt' 25 | for __fzf_opt in "${(@)${(@f)$(set -o)}%% *}"; do 26 | if [[ -o "$__fzf_opt" ]]; then 27 | __fzf_key_bindings_options+=" -o $__fzf_opt" 28 | else 29 | __fzf_key_bindings_options+=" +o $__fzf_opt" 30 | fi 31 | done 32 | } 33 | fi 34 | 35 | 'emulate' 'zsh' '-o' 'no_aliases' 36 | 37 | { 38 | 39 | [[ -o interactive ]] || return 0 40 | 41 | # CTRL-A - Paste the selected file path(s) into the command line 42 | __fsel() { 43 | local cmd="${FZF_CTRL_A_COMMAND:-"command find -L . -mindepth 1 \\( -path '*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' -o -fstype 'proc' \\) -prune \ 44 | -o -type f -print \ 45 | -o -type d -print \ 46 | -o -type l -print 2> /dev/null | cut -b3-"}" 47 | setopt localoptions pipefail no_aliases 2> /dev/null 48 | local item 49 | eval "$cmd" | FZF_DEFAULT_OPTS="--height ${FZF_TMUX_HEIGHT:-40%} --reverse --bind=ctrl-z:ignore ${FZF_DEFAULT_OPTS-} ${FZF_CTRL_A_OPTS-}" $(__fzfcmd) -m "$@" | while read item; do 50 | echo -n "${(q)item} " 51 | done 52 | local ret=$? 53 | echo 54 | return $ret 55 | } 56 | 57 | __fzfcmd() { 58 | [ -n "${TMUX_PANE-}" ] && { [ "${FZF_TMUX:-0}" != 0 ] || [ -n "${FZF_TMUX_OPTS-}" ]; } && 59 | echo "fzf-tmux ${FZF_TMUX_OPTS:--d${FZF_TMUX_HEIGHT:-40%}} -- " || echo "fzf" 60 | } 61 | 62 | fzf-file-widget() { 63 | LBUFFER="${LBUFFER}$(__fsel)" 64 | local ret=$? 65 | zle reset-prompt 66 | return $ret 67 | } 68 | zle -N fzf-file-widget 69 | bindkey -M emacs '^A' fzf-file-widget 70 | bindkey -M vicmd '^A' fzf-file-widget 71 | bindkey -M viins '^A' fzf-file-widget 72 | 73 | # ALT-C - cd into the selected directory 74 | fzf-cd-widget() { 75 | local cmd="${FZF_ALT_C_COMMAND:-"command find -L . -mindepth 1 \\( -path '*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' -o -fstype 'proc' \\) -prune \ 76 | -o -type d -print 2> /dev/null | cut -b3-"}" 77 | setopt localoptions pipefail no_aliases 2> /dev/null 78 | local dir="$(eval "$cmd" | FZF_DEFAULT_OPTS="--height ${FZF_TMUX_HEIGHT:-40%} --reverse --bind=ctrl-z:ignore ${FZF_DEFAULT_OPTS-} ${FZF_ALT_C_OPTS-}" $(__fzfcmd) +m)" 79 | if [[ -z "$dir" ]]; then 80 | zle redisplay 81 | return 0 82 | fi 83 | zle push-line # Clear buffer. Auto-restored on next prompt. 84 | BUFFER="builtin cd -- ${(q)dir}" 85 | zle accept-line 86 | local ret=$? 87 | unset dir # ensure this doesn't end up appearing in prompt expansion 88 | zle reset-prompt 89 | return $ret 90 | } 91 | zle -N fzf-cd-widget 92 | bindkey -M emacs '\ec' fzf-cd-widget 93 | bindkey -M vicmd '\ec' fzf-cd-widget 94 | bindkey -M viins '\ec' fzf-cd-widget 95 | 96 | # CTRL-R - Paste the selected command from history into the command line 97 | fzf-history-widget() { 98 | local selected num 99 | setopt localoptions noglobsubst noposixbuiltins pipefail no_aliases 2> /dev/null 100 | selected=( $(fc -rl 1 | awk '{ cmd=$0; sub(/^[ \t]*[0-9]+\**[ \t]+/, "", cmd); if (!seen[cmd]++) print $0 }' | 101 | FZF_DEFAULT_OPTS="--height ${FZF_TMUX_HEIGHT:-40%} ${FZF_DEFAULT_OPTS-} -n2..,.. --scheme=history --bind=ctrl-r:toggle-sort,ctrl-z:ignore ${FZF_CTRL_R_OPTS-} --query=${(qqq)LBUFFER} +m" $(__fzfcmd)) ) 102 | local ret=$? 103 | if [ -n "$selected" ]; then 104 | num=$selected[1] 105 | if [ -n "$num" ]; then 106 | zle vi-fetch-history -n $num 107 | fi 108 | fi 109 | zle reset-prompt 110 | return $ret 111 | } 112 | zle -N fzf-history-widget 113 | bindkey -M emacs '^R' fzf-history-widget 114 | bindkey -M vicmd '^R' fzf-history-widget 115 | bindkey -M viins '^R' fzf-history-widget 116 | 117 | } always { 118 | eval $__fzf_key_bindings_options 119 | 'unset' '__fzf_key_bindings_options' 120 | } 121 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf.zsh: -------------------------------------------------------------------------------- 1 | export FZF_DEFAULT_OPTS='--bind=ctrl-t:top,change:top --bind ctrl-e:down,ctrl-u:up' 2 | #export FZF_DEFAULT_OPTS='--bind ctrl-e:down,ctrl-u:up --preview "[[ $(file --mime {}) =~ binary ]] && echo {} is a binary file || (ccat --color=always {} || highlight -O ansi -l {} || cat {}) 2> /dev/null | head -500"' 3 | #export FZF_DEFAULT_COMMAND='ag --hidden --ignore .git -g ""' 4 | export FZF_DEFAULT_COMMAND='fd --hidden' 5 | export FZF_COMPLETION_TRIGGER='\' 6 | export FZF_TMUX=1 7 | export FZF_TMUX_HEIGHT='80%' 8 | export fzf_preview_cmd='[[ $(file --mime {}) =~ binary ]] && echo {} is a binary file || (ccat --color=always {} || highlight -O ansi -l {} || cat {}) 2> /dev/null | head -500' 9 | 10 | 11 | _fzf_fpath=${0:h}/fzf 12 | fpath+=$_fzf_fpath 13 | autoload -U $_fzf_fpath/*(.:t) 14 | unset _fzf_fpath 15 | 16 | fzf-redraw-prompt() { 17 | local precmd 18 | for precmd in $precmd_functions; do 19 | $precmd 20 | done 21 | zle reset-prompt 22 | } 23 | zle -N fzf-redraw-prompt 24 | zle -N efif 25 | zle -N fzf-find-widget 26 | bindkey '^S' fzf-find-widget 27 | 28 | fzf-cd-widget() { 29 | local tokens=(${(z)LBUFFER}) 30 | if (( $#tokens <= 1 )); then 31 | zle fzf-find-widget 'only_dir' 32 | if [[ -d $LBUFFER ]]; then 33 | cd $LBUFFER 34 | local ret=$? 35 | LBUFFER= 36 | zle fzf-redraw-prompt 37 | return $ret 38 | fi 39 | fi 40 | } 41 | zle -N fzf-cd-widget 42 | bindkey '^F' fzf-cd-widget 43 | 44 | fzf-history-widget() { 45 | local num=$(fhistory $LBUFFER) 46 | local ret=$? 47 | if [[ -n $num ]]; then 48 | zle vi-fetch-history -n $num 49 | fi 50 | zle reset-prompt 51 | return $ret 52 | } 53 | zle -N fzf-history-widget 54 | bindkey '^B' fzf-history-widget 55 | 56 | fif() { 57 | if [ ! "$#" -gt 0 ]; then echo "Need a string to search for!"; return 1; fi 58 | rg --files-with-matches --no-messages "$1" | fzf --preview "highlight -O ansi -l {} 2> /dev/null | rg --colors 'match:bg:yellow' --ignore-case --pretty --context 10 '$1' || rg --ignore-case --pretty --context 10 '$1' {}" 59 | } 60 | 61 | zle -N fif 62 | bindkey '^G' efif 63 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/bup: -------------------------------------------------------------------------------- 1 | ### BREW + FZF 2 | # uninstall multiple packages at once, async 3 | # mnemonic [B]rew [C]lean [P]lugin (e.g. uninstall) 4 | 5 | local upd=$(brew leaves | eval "fzf ${FZF_DEFAULT_OPTS} -m --header='[brew:update]'") 6 | 7 | if [[ $upd ]]; then 8 | for prog in $(echo $upd) 9 | do brew upgrade $prog 10 | done 11 | fi 12 | 13 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/cani: -------------------------------------------------------------------------------- 1 | ### Caniuse + FZF 2 | # caniuse for quick access to global support list 3 | # also runs the `caniuse` command if installed 4 | 5 | local feat=$(ciu | sort -rn | eval "fzf ${FZF_DEFAULT_OPTS} --ansi --header='[caniuse:features]'" | sed -e 's/^.*%\ *//g' | sed -e 's/ .*//g') 6 | 7 | if which caniuse &> /dev/null; then 8 | if [[ $feat ]] then; caniuse $feat; fi 9 | fi 10 | 11 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/efif: -------------------------------------------------------------------------------- 1 | file=`rg --files-with-matches --no-messages "$1" | fzf --preview "highlight -O ansi -l {} 2> /dev/null | rg --colors 'match:bg:yellow' --ignore-case --pretty --context 10 '$1' || rg --ignore-case --pretty --context 10 '$1' {}"` 2 | nvim $file 3 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/ffind: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env zsh 2 | 3 | setopt localoptions 4 | 5 | local s_path level 6 | local only_dir 7 | while getopts ':dl:s:' opt; do 8 | case $opt in 9 | d) 10 | only_dir=1 11 | ;; 12 | l) 13 | level=$OPTARG 14 | ;; 15 | s) 16 | s_path=$OPTARG 17 | ;; 18 | \?) 19 | echo "Invalid option -$OPTARG." >&2 20 | ;; 21 | esac 22 | done 23 | 24 | local cmd="command find -L ${s_path:-.} -mindepth 1 ${level:+-maxdepth $level} \ 25 | \\( -path '*/\\.git' \ 26 | -o -path '*/venv' \ 27 | -o -fstype 'sysfs' \ 28 | -o -fstype 'devfs' \ 29 | -o -fstype 'devtmpfs' \ 30 | -o -fstype 'proc' \\) -prune \ 31 | -o -type d -print" 32 | 33 | if [[ -z $only_dir ]]; then 34 | cmd="$cmd -o -type f -print -o -type l -print" 35 | fi 36 | 37 | cmd="$cmd 2>/dev/null" 38 | 39 | if [[ -z $s_path || $s_path == '.' ]]; then 40 | cmd="$cmd | cut -b3-" 41 | fi 42 | 43 | local fzf_opts="--height=50% --reverse -m --tiebreak=end \ 44 | --preview-window=right:60%:wrap \ 45 | --bind=ctrl-alt-u:preview-up,ctrl-alt-e:preview-down" 46 | 47 | local fzf_preview_cmd=' 48 | t=${$(readlink {}):-{}} 49 | if [[ $(file -i $t) =~ directory ]]; then 50 | (exa --color=always -T -L 1 {} || 51 | tree -C -L 1 {} || 52 | echo {} is a directory.) 2>/dev/null 53 | elif [[ $(file -i $t) =~ binary ]]; then 54 | echo {} is a binary file. 55 | else 56 | ccat --color=always {} 2>/dev/null 57 | fi 58 | ' 59 | 60 | local -a ret_array 61 | local ret=0 62 | 63 | eval $cmd | fzf ${(z)fzf_opts} --preview $fzf_preview_cmd ${(z)EXTRA_OPTS} | { 64 | while read item; do 65 | printf "${(q)item} " 66 | done 67 | } | sed -E '$s/ $//' 68 | 69 | ret_array=($pipestatus) 70 | # ignore find command error code 1 such as loop detect or permission 71 | if (( $ret_array[1] == 1 )); then 72 | ret=0 73 | fi 74 | local p_ret 75 | for p_ret in $ret_array[2,-1]; do 76 | if (( p_ret )); then 77 | ret=$p_ret 78 | fi 79 | done 80 | return $ret 81 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/ffunctions: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env zsh 2 | 3 | setopt localoptions pipefail 4 | 5 | print -l ${(k)functions} | fzf --height=50% 6 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/fhistory: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env zsh 2 | 3 | setopt localoptions pipefail 4 | 5 | # TODO: sort is not stream command, bad performance # 6 | local selected=( $(fc -rl 1 | sort -k 2 -u | sort -rn | 7 | fzf --height 50% -n2..,.. --tiebreak=index --bind=ctrl-r:toggle-sort --query=$1 +m) ) 8 | 9 | local ret=$? 10 | if [[ -n $selected ]]; then 11 | print $selected[1] 12 | fi 13 | return $ret 14 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/fp: -------------------------------------------------------------------------------- 1 | ### PATH 2 | # mnemonic: [F]ind [P]ath 3 | # list directories in $PATH, press [enter] on an entry to list the executables inside. 4 | # press [escape] to go back to directory listing, [escape] twice to exit completely 5 | 6 | local loc=$(echo $PATH | sed -e $'s/:/\\\n/g' | eval "fzf ${FZF_DEFAULT_OPTS} --header='[find:path]'") 7 | 8 | if [[ -d $loc ]]; then 9 | echo "$(rg --files $loc | rev | cut -d"/" -f1 | rev)" | eval "fzf ${FZF_DEFAULT_OPTS} --header='[find:exe] => ${loc}' >/dev/null" 10 | fp 11 | fi 12 | 13 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/fps: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env zsh 2 | 3 | _fps() { 4 | local render 5 | if (( $+commands[grcat] )); then 6 | render='grcat fps.grc' 7 | else 8 | render='cat' 9 | fi 10 | 11 | ps -eo user,pid,ppid,pgid,stat,tname,cmd | awk ' 12 | BEGIN { "ps -p $$ -o pgid --no-headers | tr -d \"[:blank:]\"" | getline pgid } { 13 | if ($4 != pgid || $2 == pgid) 14 | print 15 | }' | ${(z)render} 16 | } 17 | 18 | setopt localoptions pipefail 19 | 20 | local fzf_opts="--header-lines=1 -m \ 21 | ${commands[grcat]:+--ansi} --height=50% \ 22 | --min-height=15 --tac --reverse \ 23 | --preview-window=down:2" 24 | 25 | local fzf_preview_cmd="ps -o pcpu,pmem,vsz,rss,thcount,start_time,time -p {2}" 26 | 27 | _fps | fzf ${(z)fzf_opts} --preview=$fzf_preview_cmd | 28 | awk -v sep=${FZF_MUL_DELIM:- } '{ printf "%s%c", $2, sep }' | sed -E "s/${FZF_MUL_DELIM:- }$//" 29 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/fzf-find-widget: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env zsh 2 | 3 | local ret=0 4 | local tokens=(${(z)LBUFFER}) 5 | local -a cmd_opts=() 6 | local -a extra_fzf_opts=() 7 | if [[ $1 == 'only_dir' ]]; then 8 | cmd_opts+='-d' 9 | extra_fzf_opts+='+m' 10 | fi 11 | if (( $#tokens )) && [[ $LBUFFER[-1] != ' ' ]]; then 12 | local is_wave=0 13 | local dir=${(e)tokens[-1]} 14 | if [[ $dir[1] == ~* ]]; then 15 | is_wave=1 16 | fi 17 | dir=${dir/#'~'/$HOME} 18 | local base 19 | if [[ ! -d $dir ]]; then 20 | base=$(basename $dir) 21 | dir=$(dirname $dir) 22 | fi 23 | cmd_opts+="-s $dir" 24 | extra_fzf_opts+=${base:+--query $base} 25 | match=$(EXTRA_OPTS=${(z)extra_fzf_opts} ffind ${(z)cmd_opts}) 26 | ret=$? 27 | if (( ret == 0 || ret == 141 )); then 28 | if (( is_wave )); then 29 | match=$(sed "s| $HOME| ~|g" <<<$match) 30 | fi 31 | if (( $#tokens == 1 )); then 32 | LBUFFER=$match 33 | else 34 | LBUFFER="$tokens[0,-2] $match" 35 | fi 36 | fi 37 | else 38 | LBUFFER=$LBUFFER$(EXTRA_OPTS=${(z)extra_fzf_opts} ffind ${(z)cmd_opts}) 39 | ret=$? 40 | fi 41 | zle reset-prompt 42 | return $ret 43 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/get_ip: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 本脚本用于将用户选择的网卡对应ip复制到剪切板 3 | ip addr | grep "^[0-9]:" | cut -d" " -f 2 | sed 's/://' | fzf | xclip 4 | interface=`xclip -o` 5 | ip=`ip addr show $interface | awk '/inet / {print $2}' | awk -F'/' '{print $1}' | tr -d '\n'` 6 | if [ -z "$ip" ] 7 | then 8 | echo "该网卡未分配ip地址" 9 | else 10 | echo $ip |xclip -selection clipboard 11 | echo "已复制$interface的ip地址$ip到剪切板" 12 | fi 13 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/kp: -------------------------------------------------------------------------------- 1 | ### PROCESS 2 | # mnemonic: [K]ill [P]rocess 3 | # show output of "ps -ef", use [tab] to select one or multiple entries 4 | # press [enter] to kill selected processes and go back to the process list. 5 | # or press [escape] to go back to the process list. Press [escape] twice to exit completely. 6 | 7 | local pid=$(ps -ef | sed 1d | eval "fzf ${FZF_DEFAULT_OPTS} -m --header='[kill:process]'" | awk '{print $2}') 8 | 9 | if [ "x$pid" != "x" ] 10 | then 11 | echo $pid | xargs kill -${1:-9} 12 | kp 13 | fi 14 | 15 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/ks: -------------------------------------------------------------------------------- 1 | ### SERVER 2 | # mnemonic: [K]ill [S]erver 3 | # show output of "lsof -Pwni tcp", use [tab] to select one or multiple entries 4 | # press [enter] to kill selected processes and go back to the process list. 5 | # or press [escape] to go back to the process list. Press [escape] twice to exit completely. 6 | 7 | local pid=$(lsof -Pwni tcp | sed 1d | eval "fzf ${FZF_DEFAULT_OPTS} -m --header='[kill:tcp]'" | awk '{print $2}') 8 | 9 | if [ "x$pid" != "x" ] 10 | then 11 | echo $pid | xargs kill -${1:-9} 12 | ks 13 | fi 14 | 15 | -------------------------------------------------------------------------------- /config/zsh/.zsh/fzf/util: -------------------------------------------------------------------------------- 1 | ### UTILS 2 | # show utils commands and custom aliasses 3 | 4 | local helptxt="bcp [brew:clean] 5 | bip [brew:install] 6 | bup [brew:update] 7 | cani [caniuse:features] 8 | fp [find:path] 9 | kp [kill:path] 10 | ks [kill:tcp] 11 | av [alias] source venv/bin/activate 12 | c [alias] clear 13 | cdiff [alias] colordiff 14 | cs [alias] calcurse 15 | dv [alias] deactivate 16 | gc [alias] git config credential.helper store 17 | ipy [alias] ipython 18 | l [alias] ls -la 19 | lg [alias] lazygit 20 | ms [alias] mailsync 21 | mt [alias] neomutt 22 | r [alias] echo $RANGER_LEVEL 23 | pu [alias] python3 -m pudb 24 | ra [alias] ranger 25 | s [alias] neofetch 26 | g [alias] onefetch 27 | sra [alias] sudo -E ranger 28 | sudo [alias] sudo -E 29 | vim [alias] nvim 30 | gs [alias] git config credential.helper store 31 | bat [alias] sudo tlp bat 32 | ac [alias] sudo tlp ac 33 | gy [alias] git-yolo 34 | nb [alias] newsboat -r 35 | nt [alias] sh -c 'cd $(pwd); st' > /dev/null 2>&1 &" 36 | lo [alias] lsof -p $(fps) +w 37 | 38 | local cmd=$(echo $helptxt | eval "fzf ${FZF_DEFAULT_OPTS} --header='[utils:show]'" | awk '{print $1}') 39 | 40 | if [[ -n $cmd ]]; then 41 | eval ${cmd} 42 | fi 43 | 44 | -------------------------------------------------------------------------------- /config/zsh/.zsh/keymaps.zsh: -------------------------------------------------------------------------------- 1 | bindkey "^@" set-mark-command 2 | 3 | bindkey "^l" forward-char 4 | bindkey "^h" backward-char 5 | # 其他快捷键 6 | bindkey "^K" kill-line # 删除光标到结尾 7 | bindkey "^L" clear-screen # 清屏 8 | bindkey "^U" kill-whole-line # 删除整行 9 | bindkey "^Z" undo # 撤销 10 | bindkey "^X^B" vi-match-bracket 11 | bindkey "^X^E" edit-command-line 12 | bindkey "^X^F" vi-find-next-char 13 | bindkey "^X^J" vi-join 14 | bindkey "^X^K" kill-buffer 15 | bindkey "^X^N" infer-next-history 16 | bindkey "^X^O" overwrite-mode 17 | bindkey "^X^R" _read_comp 18 | bindkey "^X^U" undo 19 | bindkey "^X^V" vi-cmd-mode 20 | bindkey "^X^X" exchange-point-and-mark 21 | bindkey "^X*" expand-word 22 | bindkey "^X=" what-cursor-position 23 | bindkey "^X?" _complete_debug 24 | bindkey "^XC" _correct_filename 25 | bindkey "^XG" list-expand 26 | bindkey "^Xa" _expand_alias 27 | bindkey "^Xc" _correct_word 28 | bindkey "^Xd" _list_expansions 29 | bindkey "^Xe" _expand_word 30 | bindkey "^Xg" list-expand 31 | bindkey "^Xh" _complete_help 32 | bindkey "^Xm" _most_recent_file 33 | bindkey "^Xn" _next_tags 34 | bindkey "^Xr" history-incremental-search-backward 35 | bindkey "^Xs" history-incremental-search-forward 36 | bindkey "^Xt" _complete_tag 37 | bindkey "^Xu" undo 38 | bindkey "^X~" _bash_list-choices 39 | bindkey "^Y" yank 40 | bindkey "^[^D" list-choices 41 | bindkey "^[^G" send-break 42 | bindkey "^[^H" backward-kill-word 43 | bindkey "^[^I" self-insert-unmeta 44 | bindkey "^[^J" self-insert-unmeta 45 | bindkey "^[^M" self-insert-unmeta 46 | bindkey "^[^[" sudo-command-line 47 | bindkey "^[^_" copy-prev-word 48 | bindkey "^[ " expand-history 49 | bindkey "^[!" expand-history 50 | bindkey "^[\"" quote-region 51 | bindkey "^[\$" spell-word 52 | bindkey "^['" quote-line 53 | bindkey "^[," _history-complete-newer 54 | bindkey "^[-" neg-argument 55 | bindkey "^[." insert-last-word 56 | bindkey "^[/" _history-complete-older 57 | bindkey "^[0" digit-argument 58 | bindkey "^[1" digit-argument 59 | bindkey "^[2" digit-argument 60 | bindkey "^[3" digit-argument 61 | bindkey "^[4" digit-argument 62 | bindkey "^[5" digit-argument 63 | bindkey "^[6" digit-argument 64 | bindkey "^[7" digit-argument 65 | bindkey "^[8" digit-argument 66 | bindkey "^[9" digit-argument 67 | bindkey "^[<" beginning-of-buffer-or-history 68 | bindkey "^[>" end-of-buffer-or-history 69 | bindkey "^[?" which-command 70 | bindkey "^[A" accept-and-hold 71 | bindkey "^[B" backward-word 72 | bindkey "^[D" kill-word 73 | bindkey "^[F" forward-word 74 | bindkey "^[G" get-line 75 | bindkey "^[H" run-help 76 | bindkey "^[L" down-case-word 77 | bindkey "^[N" history-search-forward 78 | bindkey "^[OA" up-line-or-beginning-search 79 | bindkey "^[OB" down-line-or-beginning-search 80 | bindkey "^[OC" forward-char 81 | bindkey "^[OD" backward-char 82 | bindkey "^[OF" end-of-line 83 | bindkey "^[OH" beginning-of-line 84 | bindkey "^[P" history-search-backward 85 | bindkey "^[Q" push-line 86 | bindkey "^[S" spell-word 87 | bindkey "^[T" transpose-words 88 | bindkey "^[U" up-case-word 89 | bindkey "^[W" copy-region-as-kill 90 | bindkey "^[[1;5C" forward-word 91 | bindkey "^[[1;5D" backward-word 92 | bindkey "^[[200~" bracketed-paste 93 | bindkey "^[[3;5~" kill-word 94 | bindkey "^[[3~" delete-char 95 | bindkey "^[[5~" up-line-or-history 96 | bindkey "^[[6~" down-line-or-history 97 | bindkey "^[[A" up-line-or-history 98 | bindkey "^[[B" down-line-or-history 99 | bindkey "^[[C" forward-char 100 | bindkey "^[[D" backward-char 101 | bindkey "^[[Z" reverse-menu-complete 102 | bindkey "^[_" insert-last-word 103 | bindkey "^[a" accept-and-hold 104 | bindkey "^[b" backward-word 105 | bindkey "^[d" kill-word 106 | bindkey "^[f" forward-word 107 | bindkey "^[g" get-line 108 | bindkey "^[h" run-help 109 | bindkey "^[m" copy-prev-shell-word 110 | bindkey "^[n" history-search-forward 111 | bindkey "^[p" history-search-backward 112 | bindkey "^[q" push-line 113 | bindkey "^[s" spell-word 114 | bindkey "^[t" transpose-words 115 | bindkey "^[u" up-case-word 116 | bindkey "^[w" kill-region 117 | bindkey "^[x" execute-named-cmd 118 | bindkey "^[y" yank-pop 119 | bindkey "^[z" execute-last-named-cmd 120 | bindkey "^[|" vi-goto-column 121 | bindkey "^[~" _bash_complete-word 122 | bindkey "^[^?" backward-kill-word 123 | bindkey " " magic-space 124 | bindkey "!"-"~" self-insert 125 | bindkey "^?" backward-delete-char 126 | bindkey "\M-^@"-"\M-^?" self-insert 127 | -------------------------------------------------------------------------------- /config/zsh/.zshrc: -------------------------------------------------------------------------------- 1 | #fortune随机诗词 2 | fortune -e tang300 song100>/tmp/zshinfo 3 | echo "┏━━━━━━━━━━┳━━━━━━━━┓ 4 | ┃ 类名 ┃ 大驼峰 ┃ 5 | ┣━━━━━━━━━━╋━━━━━━━━┫ 6 | ┃ 函数名 ┃ 大驼峰 ┃ 7 | ┣━━━━━━━━━━╋━━━━━━━━┫ 8 | ┃ 变量名 ┃ 小驼峰 ┃ 9 | ┣━━━━━━━━━━╋━━━━━━━━┫ 10 | ┃ 属性名 ┃ 大驼峰 ┃ 11 | ┣━━━━━━━━━━╋━━━━━━━━┫ 12 | ┃ 命名空间 ┃ 大驼峰 ┃ 13 | ┗━━━━━━━━━━┻━━━━━━━━┛">>/tmp/zshinfo 14 | cat /tmp/zshinfo|lolcat 15 | 16 | # 该zsh配置文件使用zinit进行插件管理 17 | 18 | if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then 19 | source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" 20 | fi 21 | 22 | # 修复emacs中不能输入中文 23 | # LC_CTYPE="zh_CN.utf8" 24 | 25 | # 移除重复的命令历史 26 | setopt HIST_IGNORE_ALL_DUPS 27 | 28 | # 取消zsh在输出不以换行符结尾的内容是在其后添加百分号并另其一行的特性 29 | unsetopt prompt_cr prompt_sp 30 | 31 | # 设置可以使用通配符 32 | setopt nonomatch 33 | 34 | # 免输入cd进入目录 35 | setopt auto_cd 36 | 37 | # 使用emacs的快捷键绑定 38 | bindkey -v 39 | 40 | # Go加速 41 | export GO111MODULE=on 42 | export GOPROXY=https://goproxy.cn,direct 43 | 44 | # 加载zinit 45 | if [[ ! -d ~/.zinit ]];then 46 | git clone https://github.com/zdharma-continuum/zinit.git ~/.zinit/bin 47 | fi 48 | source ~/.zinit/bin/zinit.zsh 49 | 50 | zinit ice blockf atpull'zinit creinstall -q .' 51 | zinit light zsh-users/zsh-completions 52 | 53 | autoload compinit 54 | compinit 55 | 56 | zinit light-mode for \ 57 | hlissner/zsh-autopair \ 58 | zdharma-continuum/fast-syntax-highlighting \ 59 | MichaelAquilina/zsh-you-should-use \ 60 | zsh-users/zsh-autosuggestions \ 61 | Aloxaf/fzf-tab 62 | 63 | zinit light zsh-users/zsh-history-substring-search 64 | 65 | zinit light zdharma-continuum/history-search-multi-word 66 | 67 | # FZF 68 | zinit light junegunn/fzf-bin 69 | 70 | # EXA 71 | zinit light ogham/exa 72 | 73 | # BAT 74 | zinit light sharkdp/bat 75 | 76 | # 快速目录跳转 77 | zinit ice lucid wait='1' # lucid ice 可以隐藏Turbo mode下插件加载完成的提示 78 | zinit light skywind3000/z.lua 79 | 80 | # 语法高亮 81 | zinit ice lucid wait='0' atinit='zpcompinit' 82 | zinit light zdharma-continuum/fast-syntax-highlighting 83 | 84 | # 自动建议,C-f/Right应用建议 85 | zinit ice lucid wait="0" atload='_zsh_autosuggest_start' 86 | zinit light zsh-users/zsh-autosuggestions 87 | 88 | # 根据子串搜索历史命令 89 | zinit ice lucid wait="0" 90 | zinit light zsh-users/zsh-autosuggestions 91 | 92 | # 双击tab使用fzf补全 93 | zinit light Aloxaf/fzf-tab 94 | # disable sort when completing `git checkout` 95 | zstyle ':completion:*:git-checkout:*' sort false 96 | # set descriptions format to enable group support 97 | zstyle ':completion:*:descriptions' format '[%d]' 98 | # set list-colors to enable filename colorizing 99 | zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} 100 | # preview directory's content with exa when completing cd 101 | zstyle ':fzf-tab:complete:cd:*' fzf-preview 'exa -1 --color=always $realpath' 102 | # switch group using `,` and `.` 103 | zstyle ':fzf-tab:*' switch-group ',' '.' 104 | 105 | # 加载 OMZ 框架及 106 | zinit snippet OMZ::lib/completion.zsh 107 | zinit snippet OMZ::lib/history.zsh 108 | 109 | # 使用oh-my-zsh快捷键绑定 110 | zinit snippet OMZ::lib/key-bindings.zsh 111 | 112 | # 快速跳转 113 | zinit snippet OMZ::plugins/z 114 | 115 | # 彩色man文档 116 | zinit snippet OMZ::plugins/colored-man-pages/colored-man-pages.plugin.zsh 117 | 118 | # 双击esc快速在命令前添加或删除sudo 119 | zinit snippet OMZ::plugins/sudo/sudo.plugin.zsh 120 | 121 | # vi模式 122 | zinit snippet OMZ::plugins/vi-mode/vi-mode.plugin.zsh 123 | 124 | # 解压 125 | zinit snippet OMZ::plugins/extract 126 | 127 | zinit ice lucid wait='1' 128 | zinit snippet OMZ::plugins/git/git.plugin.zsh 129 | 130 | 131 | # 加载主题 132 | zinit ice depth=1 133 | zinit light romkatv/powerlevel10k 134 | 135 | source $ZDOTDIR/.zsh/fzf.zsh 136 | source $ZDOTDIR/.zsh/aliases.zsh 137 | source $ZDOTDIR/.zsh/keymaps.zsh 138 | 139 | # 环境变量 140 | export PATH="/home/feng/.local/bin:/home/feng/.luarocks/bin:$PATH" 141 | export dirs="~/MyTools/resources/dir.list" 142 | # To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. 143 | [[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh 144 | 145 | # export PYENV_ROOT="$HOME/.pyenv" 146 | # export PATH="$PYENV_ROOT/bin:~/.local/bin/:$PATH" 147 | # if command -v pyenv 1>/dev/null 2>&1; then 148 | # eval "$(pyenv init -)" 149 | # fi 150 | # eval "$(pyenv virtualenv-init -)" 151 | 152 | alias e='nvim' 153 | alias sudovim='sudoedit' 154 | alias vizsh="vim $HOME/.zshrc" 155 | alias vibash="vim $HOME/.bashrc" 156 | alias e='extract' 157 | alias cs='cowsay' 158 | alias pacman='sudo pacman' 159 | alias s='neofetch | lolcat' 160 | alias n='neofetch' 161 | alias cla='clear' 162 | alias cls='clear' 163 | alias ls='exa --icons -h' 164 | alias lt='exa -aT --icons -h' 165 | alias ll='exa -lag --icons -h' 166 | alias lad='exa -laD --icons -h' 167 | alias la='exa -a --icons -h' 168 | alias grep="grep --color=auto" 169 | alias diff="diff --color=auto" 170 | alias ccat="highlight --out-format=ansi" 171 | export POWERLEVEL9K_CONFIG_FILE="$HOME/.config/zsh/.p10k.zsh" 172 | alias music='tmux new-session -s $$ "tmux source-file ~/.ncmpcpp/tsession"' 173 | _trap_exit() { tmux kill-session -t $$; } 174 | export MUSIC_DIR=/music 175 | 176 | -------------------------------------------------------------------------------- /install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/zsh 2 | 3 | DOTS=$(pwd) 4 | 5 | make_home_dir() { 6 | mkdir "$1"/.config || true 7 | mkdir "$1"/.cache || true 8 | mkdir -p "$1"/.local/share/fonts || true 9 | } 10 | 11 | back_up_configure() { 12 | echo "\e[32mBakuping configures..." 13 | mkdir $HOME/.oldconfig 14 | mv -v $HOME/.config/{bat,btop,cava,dunst,fcitx5,hypr,mpd,ncmpcpp,nemo,neofetch,rofi,waybar,wezterm,zsh} $HOME/.oldconfig/ 15 | 16 | echo "\e[32mBakuping local files..." 17 | mkdir $HOME/.oldconfig/local 18 | mv -v $HOME/.local/share/fcitx5 $HOME/.oldconfig/local/ 19 | 20 | echo "\e[32mBakuping zsh configures..." 21 | mv -v $HOME/{.zshenv,.p10k.zsh} $HOME/.oldconfig/ 22 | 23 | echo "\e[32mDone, you can find your backups at \e[33m$HOME/.oldconfig" 24 | } 25 | 26 | echo "\e[32mPreparing stuff..." 27 | make_home_dir ${HOME} 2>/dev/null 28 | echo "\e[32mDone" 29 | 30 | echo "\e[31mWARNING: Is the hyprdots folder at \e[33m$(pwd)? \e[32m(y/N)" 31 | read input 32 | if [[ "$input" == "y" ]] || [[ "$input" == "Y" ]]; then 33 | if [[ -d "$HOME/.oldconfig" ]]; then 34 | echo "" 35 | echo "\e[31mWARNING: There seems to already be a backup at \e[33m'$HOME/.oldconfig'" 36 | echo "\e[33mDo you wanna overwrite it \e[32m(y/N)?" 37 | read input 38 | if [[ "$input" == "y" ]] || [[ "$input" == "Y" ]]; then 39 | rm -rf "$HOME/.oldconfig" 40 | echo "\e[32mRedoing directory tree..." 41 | back_up_configure 42 | else 43 | echo "\e[31mDelete \e[33m$HOME/.oldconfig \e[31mmanually before installing" 44 | echo "\e[32mInstallation aborted" 45 | exit 46 | fi 47 | else 48 | back_up 49 | fi 50 | 51 | echo "\e[32mInstall fonts..." 52 | ln -sv $DOTS/local/fonts $HOME/.local/share/fonts/10_hyprdots_fonts 53 | echo "\e[32mDone" 54 | 55 | echo "\e[32mInstall Configures..." 56 | ln -sv $DOTS/config/{bat,btop,cava,dunst,fcitx5,hypr,mpd,ncmpcpp,nemo,neofetch,rofi,waybar,wezterm,zsh} $HOME/.config/ 57 | echo "\e[32mDone" 58 | 59 | echo "\e[32m(root)Install MediaControl script..." 60 | sudo cp ./MediaControl /usr/bin/ 61 | sudo chmod +x /usr/bin/MediaControl 62 | echo "\e[32mDone" 63 | 64 | echo "\e[32mInstall local files..." 65 | ln -sv $DOTS/local/fcitx5 $HOME/.local/share/ 66 | echo "\e[32mDone" 67 | 68 | echo "\e[32mInstall zsh configures" 69 | ln -sv $DOTS/.zshenv $HOME/ 70 | ln -sv $HOME/.config/zsh/.p10k.zsh $HOME/.p10k.zsh 71 | echo "\e[32mDone" 72 | 73 | echo "\e[32mInstall finished" 74 | echo "\e[33mThere's no need to run this again, to update just run \e[32mgit pull \e[31in $(pwd)" 75 | echo "\e[32mEnjoy my rice :)" 76 | else 77 | echo "\e[32mPlase change in hyprdots folder and run this" 78 | echo "\e[32mInstallation aborted" 79 | exit 80 | fi 81 | -------------------------------------------------------------------------------- /local/fonts/方正兰亭圆_GBK_中.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Buer-Nahida/Hyprdots/43bc25d435f74eb8ab76b5b37be4f1faf245a1c5/local/fonts/方正兰亭圆_GBK_中.ttf --------------------------------------------------------------------------------