Merge branch 'master' of github.com:ahub2/dotfiles
commit
5e719b8035
|
@ -1,8 +1,8 @@
|
|||
#!/bin/sh
|
||||
|
||||
img () {
|
||||
#chafa "$1" --size="$2"x"$3" | sed 's/#/\n#/g'
|
||||
chafa --format=symbols "$1" --size="$2"x"$3"
|
||||
chafa "$1" --size="$2"x"$3" | sed 's/#/\n#/g'
|
||||
#chafa --format=symbols "$1" --size="$2"x"$3"
|
||||
}
|
||||
|
||||
W="$(($(tput cols)/2 - 10))"
|
||||
|
@ -20,6 +20,7 @@ case "$fn" in
|
|||
*.rar) unrar l "$1";;
|
||||
*.7z) 7z l "$1";;
|
||||
*.jpg | *.JPG | *.jpeg) img "$fn" "$w" "$h";;
|
||||
*.webp) img "$fn" "$w" "$h";;
|
||||
*.png | *.svg | *.gif) img "$fn" "$w" "$h";; #viu -t "$1" -w "$W" ;; #chafa "$fn" --size="$w"x"$h" ;;
|
||||
*.mp4 | *.mkv | *.webm | *.avi | *.mpg | *.mpeg | *.ogv | *.flv | *.wmv | *.WMV) ffmpegthumbnailer -i "$fn" -c jpeg -o - | img - "$w" "$h";;
|
||||
*.pdf) pdftotext "$1" -;;
|
||||
|
|
|
@ -13,6 +13,8 @@ call plug#begin('~/.local/share/nvim/plugged')
|
|||
Plug 'dense-analysis/ale'
|
||||
Plug 'chriskempson/base16-vim'
|
||||
|
||||
Plug 'ziglang/zig.vim'
|
||||
|
||||
"language support
|
||||
Plug 'tbastos/vim-lua'
|
||||
call plug#end()
|
||||
|
|
|
@ -0,0 +1,176 @@
|
|||
#!/bin/sh
|
||||
|
||||
# This is the example configuration file for river.
|
||||
#
|
||||
# If you wish to edit this, you will probably want to copy it to
|
||||
# $XDG_CONFIG_HOME/river/init or $HOME/.config/river/init first.
|
||||
#
|
||||
# See the river(1), riverctl(1), and rivertile(1) man pages for complete
|
||||
# documentation.
|
||||
|
||||
# Note: the ""$MOD"" modifier is also known as Logo, GUI, Windows, Mod4, etc.
|
||||
|
||||
MOD="Alt"
|
||||
|
||||
|
||||
# "$MOD"+Shift+Return to start an instance of foot (https://codeberg.org/dnkl/foot)
|
||||
riverctl map normal "$MOD"+Shift Return spawn foot
|
||||
|
||||
# "$MOD"+Q to close the focused view
|
||||
riverctl map normal "$MOD" Q close
|
||||
|
||||
# "$MOD"+Shift+E to exit river
|
||||
riverctl map normal "$MOD"+Shift E exit
|
||||
|
||||
# "$MOD"+J and Super+K to focus the next/previous view in the layout stack
|
||||
riverctl map normal "$MOD" J focus-view next
|
||||
riverctl map normal "$MOD" K focus-view previous
|
||||
|
||||
# "$MOD"+Shift+J and Super+Shift+K to swap the focused view with the next/previous
|
||||
# view in the layout stack
|
||||
riverctl map normal "$MOD"+Shift J swap next
|
||||
riverctl map normal "$MOD"+Shift K swap previous
|
||||
|
||||
# "$MOD"+Period and Super+Comma to focus the next/previous output
|
||||
riverctl map normal "$MOD" Period focus-output next
|
||||
riverctl map normal "$MOD" Comma focus-output previous
|
||||
|
||||
# "$MOD"+Shift+{Period,Comma} to send the focused view to the next/previous output
|
||||
riverctl map normal "$MOD"+Shift Period send-to-output next
|
||||
riverctl map normal "$MOD"+Shift Comma send-to-output previous
|
||||
|
||||
# "$MOD"+Return to bump the focused view to the top of the layout stack
|
||||
riverctl map normal "$MOD" Return zoom
|
||||
|
||||
# "$MOD"+H and Super+L to decrease/increase the main ratio of rivertile(1)
|
||||
riverctl map normal "$MOD" H send-layout-cmd rivertile "main-ratio -0.05"
|
||||
riverctl map normal "$MOD" L send-layout-cmd rivertile "main-ratio +0.05"
|
||||
|
||||
# "$MOD"+Shift+H and Super+Shift+L to increment/decrement the main count of rivertile(1)
|
||||
riverctl map normal "$MOD"+Shift H send-layout-cmd rivertile "main-count +1"
|
||||
riverctl map normal "$MOD"+Shift L send-layout-cmd rivertile "main-count -1"
|
||||
|
||||
# "$MOD"+Alt+{H,J,K,L} to move views
|
||||
#riverctl map normal "$MOD"+Alt H move left 100
|
||||
#riverctl map normal "$MOD"+Alt J move down 100
|
||||
#riverctl map normal "$MOD"+Alt K move up 100
|
||||
#riverctl map normal "$MOD"+Alt L move right 100
|
||||
|
||||
# "$MOD"+Alt+Control+{H,J,K,L} to snap views to screen edges
|
||||
#riverctl map normal "$MOD"+Alt+Control H snap left
|
||||
#riverctl map normal "$MOD"+Alt+Control J snap down
|
||||
#riverctl map normal "$MOD"+Alt+Control K snap up
|
||||
#riverctl map normal "$MOD"+Alt+Control L snap right
|
||||
|
||||
# "$MOD"+Alt+Shif+{H,J,K,L} to resize views
|
||||
#riverctl map normal "$MOD"+Alt+Shift H resize horizontal -100
|
||||
#riverctl map normal "$MOD"+Alt+Shift J resize vertical 100
|
||||
#riverctl map normal "$MOD"+Alt+Shift K resize vertical -100
|
||||
#riverctl map normal "$MOD"+Alt+Shift L resize horizontal 100
|
||||
|
||||
# "$MOD" + Left Mouse Button to move views
|
||||
riverctl map-pointer normal "$MOD" BTN_LEFT move-view
|
||||
|
||||
# "$MOD" + Right Mouse Button to resize views
|
||||
riverctl map-pointer normal "$MOD" BTN_RIGHT resize-view
|
||||
|
||||
for i in $(seq 1 9)
|
||||
do
|
||||
tags=$((1 << ($i - 1)))
|
||||
|
||||
# "$MOD"+[1-9] to focus tag [0-8]
|
||||
riverctl map normal "$MOD" $i set-focused-tags $tags
|
||||
|
||||
# "$MOD"+Shift+[1-9] to tag focused view with tag [0-8]
|
||||
riverctl map normal "$MOD"+Shift $i set-view-tags $tags
|
||||
|
||||
# "$MOD"+Ctrl+[1-9] to toggle focus of tag [0-8]
|
||||
riverctl map normal "$MOD"+Control $i toggle-focused-tags $tags
|
||||
|
||||
# "$MOD"+Shift+Ctrl+[1-9] to toggle tag [0-8] of focused view
|
||||
riverctl map normal "$MOD"+Shift+Control $i toggle-view-tags $tags
|
||||
done
|
||||
|
||||
# "$MOD"+0 to focus all tags
|
||||
# "$MOD"+Shift+0 to tag focused view with all tags
|
||||
all_tags=$(((1 << 32) - 1))
|
||||
riverctl map normal "$MOD" 0 set-focused-tags $all_tags
|
||||
riverctl map normal "$MOD"+Shift 0 set-view-tags $all_tags
|
||||
|
||||
# "$MOD"+Space to toggle float
|
||||
riverctl map normal "$MOD" Space toggle-float
|
||||
|
||||
# "$MOD"+F to toggle fullscreen
|
||||
riverctl map normal "$MOD" F toggle-fullscreen
|
||||
|
||||
# "$MOD"+{Up,Right,Down,Left} to change layout orientation
|
||||
riverctl map normal "$MOD" Up send-layout-cmd rivertile "main-location top"
|
||||
riverctl map normal "$MOD" Right send-layout-cmd rivertile "main-location right"
|
||||
riverctl map normal "$MOD" Down send-layout-cmd rivertile "main-location bottom"
|
||||
riverctl map normal "$MOD" Left send-layout-cmd rivertile "main-location left"
|
||||
|
||||
# Declare a passthrough mode. This mode has only a single mapping to return to
|
||||
# normal mode. This makes it useful for testing a nested wayland compositor
|
||||
riverctl declare-mode passthrough
|
||||
|
||||
# "$MOD"+F11 to enter passthrough mode
|
||||
riverctl map normal "$MOD" F11 enter-mode passthrough
|
||||
|
||||
# "$MOD"+F11 to return to normal mode
|
||||
riverctl map passthrough "$MOD" F11 enter-mode normal
|
||||
|
||||
# Various media key mapping examples for both normal and locked mode which do
|
||||
# not have a modifier
|
||||
for mode in normal locked
|
||||
do
|
||||
# Eject the optical drive (well if you still have one that is)
|
||||
riverctl map $mode None XF86Eject spawn 'eject -T'
|
||||
|
||||
# Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer)
|
||||
riverctl map $mode None XF86AudioRaiseVolume spawn 'vol.sh -i 0.02'
|
||||
riverctl map $mode None XF86AudioLowerVolume spawn 'vol.sh -d 0.02'
|
||||
riverctl map $mode None XF86AudioMute spawn 'vol.sh --toggle-mute'
|
||||
|
||||
# Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl)
|
||||
riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause'
|
||||
riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause'
|
||||
riverctl map $mode None XF86AudioPrev spawn 'playerctl previous'
|
||||
riverctl map $mode None XF86AudioNext spawn 'playerctl next'
|
||||
|
||||
# Control screen backlight brighness with light (https://github.com/haikarainen/light)
|
||||
riverctl map $mode None XF86MonBrightnessUp spawn 'brightnessctl set 5%+'
|
||||
riverctl map $mode None XF86MonBrightnessDown spawn 'brightnessctl set 5%-'
|
||||
done
|
||||
|
||||
#custom config
|
||||
riverctl set-cursor-warp on-output-change
|
||||
#riverctl input INPUT_POINTER_NAME accel-profile flat
|
||||
riverctl map normal "$MOD" P spawn bemenu-run
|
||||
riverctl focus-follows-cursor normal
|
||||
riverctl spawn ~/.init.sh
|
||||
|
||||
#startup programs
|
||||
riverctl spawn waybar
|
||||
riverctl spawn ~/.local/scripts/gammastep-init.sh
|
||||
riverctl spawn udiskie
|
||||
riverctl kanshi
|
||||
|
||||
# Set background and border color
|
||||
riverctl background-color 0x002b36
|
||||
riverctl border-color-focused 0x93a1a1
|
||||
riverctl border-color-unfocused 0x586e75
|
||||
|
||||
# Set keyboard repeat rate
|
||||
riverctl set-repeat 50 300
|
||||
|
||||
# Make certain views start floating
|
||||
riverctl float-filter-add app-id float
|
||||
riverctl float-filter-add title "popup title with spaces"
|
||||
|
||||
# Set app-ids and titles of views which should use client side decorations
|
||||
riverctl csd-filter-add app-id "gedit"
|
||||
|
||||
# Set and exec into the default layout generator, rivertile.
|
||||
# River will send the process group of the init executable SIGTERM on exit.
|
||||
riverctl default-layout rivertile
|
||||
exec rivertile -view-padding 6 -outer-padding 6
|
|
@ -309,6 +309,7 @@ exec sh ~/.local/scripts/gammastep-init.sh
|
|||
exec udiskie
|
||||
exec autotiling
|
||||
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
|
||||
exec sway-audio-idle-inhibit
|
||||
|
||||
exec_always kanshi
|
||||
|
||||
|
|
|
@ -0,0 +1,167 @@
|
|||
{
|
||||
// "layer": "top", // Waybar at top layer
|
||||
// "position": "bottom", // Waybar position (top|bottom|left|right)
|
||||
"height": 30, // Waybar height (to be removed for auto height)
|
||||
// "width": 1280, // Waybar width
|
||||
"spacing": 4, // Gaps between modules (4px)
|
||||
// Choose the order of the modules
|
||||
"modules-left": ["river/tags","river/mode","river/window","custom/media"],
|
||||
//"modules-center": ["river/window"],
|
||||
"modules-right": ["mpd", "idle_inhibitor", "pulseaudio", "network", "cpu", "temperature", "keyboard-state", "battery", "battery#bat2", "clock", "tray"],
|
||||
// Modules configuration
|
||||
// "sway/workspaces": {
|
||||
// "disable-scroll": true,
|
||||
// "all-outputs": true,
|
||||
// "format": "{name}: {icon}",
|
||||
// "format-icons": {
|
||||
// "1": "",
|
||||
// "2": "",
|
||||
// "3": "",
|
||||
// "4": "",
|
||||
// "5": "",
|
||||
// "urgent": "",
|
||||
// "focused": "",
|
||||
// "default": ""
|
||||
// }
|
||||
// },
|
||||
"river/tags": {
|
||||
"num-tags": 9
|
||||
},
|
||||
|
||||
"river/mode": {
|
||||
"format": "mode: {}"
|
||||
},
|
||||
|
||||
"river/window": {
|
||||
"format": "{}"
|
||||
},
|
||||
|
||||
"keyboard-state": {
|
||||
"numlock": true,
|
||||
"capslock": true,
|
||||
"format": "{name} {icon}",
|
||||
"format-icons": {
|
||||
"locked": "",
|
||||
"unlocked": ""
|
||||
}
|
||||
},
|
||||
"mpd": {
|
||||
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ",
|
||||
"format-disconnected": "Disconnected ",
|
||||
"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
|
||||
"unknown-tag": "N/A",
|
||||
"interval": 2,
|
||||
"consume-icons": {
|
||||
"on": " "
|
||||
},
|
||||
"random-icons": {
|
||||
"off": "<span color=\"#f53c3c\"></span> ",
|
||||
"on": " "
|
||||
},
|
||||
"repeat-icons": {
|
||||
"on": " "
|
||||
},
|
||||
"single-icons": {
|
||||
"on": "1 "
|
||||
},
|
||||
"state-icons": {
|
||||
"paused": "",
|
||||
"playing": ""
|
||||
},
|
||||
"tooltip-format": "MPD (connected)",
|
||||
"tooltip-format-disconnected": "MPD (disconnected)"
|
||||
},
|
||||
"idle_inhibitor": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": "",
|
||||
"deactivated": ""
|
||||
}
|
||||
},
|
||||
"tray": {
|
||||
// "icon-size": 21,
|
||||
"spacing": 10
|
||||
},
|
||||
"clock": {
|
||||
// "timezone": "America/New_York",
|
||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
||||
"format-alt": "{:%Y-%m-%d}"
|
||||
},
|
||||
"cpu": {
|
||||
"format": "{usage}% ",
|
||||
"tooltip": false
|
||||
},
|
||||
"memory": {
|
||||
"format": "{}% "
|
||||
},
|
||||
"temperature": {
|
||||
// "thermal-zone": 2,
|
||||
// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
|
||||
"critical-threshold": 80,
|
||||
// "format-critical": "{temperatureC}°C {icon}",
|
||||
"format": "{temperatureC}°C {icon}",
|
||||
"format-icons": ["", "", ""]
|
||||
},
|
||||
"backlight": {
|
||||
// "device": "acpi_video1",
|
||||
"format": "{percent}% {icon}",
|
||||
"format-icons": ["", "", "", "", "", "", "", "", ""]
|
||||
},
|
||||
"battery": {
|
||||
"states": {
|
||||
// "good": 95,
|
||||
"warning": 30,
|
||||
"critical": 15
|
||||
},
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-alt": "{time} {icon}",
|
||||
// "format-good": "", // An empty format will hide the module
|
||||
// "format-full": "",
|
||||
"format-icons": ["", "", "", "", ""]
|
||||
},
|
||||
"battery#bat2": {
|
||||
"bat": "BAT2"
|
||||
},
|
||||
"network": {
|
||||
// "interface": "wlp2*", // (Optional) To force the use of this interface
|
||||
"format-wifi": "{essid} ({signalStrength}%) ",
|
||||
"format-ethernet": "{ipaddr}/{cidr} ",
|
||||
"tooltip-format": "{ifname} via {gwaddr} ",
|
||||
"format-linked": "{ifname} (No IP) ",
|
||||
"format-disconnected": "Disconnected ⚠",
|
||||
"format-alt": "{ifname}: {ipaddr}/{cidr}"
|
||||
},
|
||||
"pulseaudio": {
|
||||
// "scroll-step": 1, // %, can be a float
|
||||
"format": "{volume}% {icon} {format_source}",
|
||||
"format-bluetooth": "{volume}% {icon} {format_source}",
|
||||
"format-bluetooth-muted": " {icon} {format_source}",
|
||||
"format-muted": " {format_source}",
|
||||
"format-source": "{volume}% ",
|
||||
"format-source-muted": "",
|
||||
"format-icons": {
|
||||
"headphone": "",
|
||||
"hands-free": "",
|
||||
"headset": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", "", ""]
|
||||
},
|
||||
"on-click": "pavucontrol"
|
||||
},
|
||||
"custom/media": {
|
||||
"format": "{icon} {}",
|
||||
"return-type": "json",
|
||||
"max-length": 40,
|
||||
"format-icons": {
|
||||
"spotify": "",
|
||||
"default": "🎜"
|
||||
},
|
||||
"escape": true,
|
||||
"exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
|
||||
// "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
|
||||
}
|
||||
}
|
|
@ -22,6 +22,25 @@ window#waybar {
|
|||
}
|
||||
*/
|
||||
|
||||
#tags button.focused {
|
||||
background: transparent;
|
||||
/*color: #c9545d;*/
|
||||
/*border-bottom: 2px solid #c9545d;*/
|
||||
color: #3EF6F6;
|
||||
border-bottom: 2px solid #3EF6F6;
|
||||
|
||||
}
|
||||
|
||||
#tags button.occupied {
|
||||
background: transparent;
|
||||
/*color: #c9545d;*/
|
||||
/*border-bottom: 2px solid #c9545d;*/
|
||||
color: #009A0B;
|
||||
/*border-bottom: 2px solid #009A0B;*/
|
||||
|
||||
}
|
||||
|
||||
|
||||
#workspaces button {
|
||||
padding: 0 2px;
|
||||
background: transparent;
|
||||
|
|
Loading…
Reference in New Issue