Compare commits
4 commits
master
...
home-manag
Author | SHA1 | Date | |
---|---|---|---|
Simon Bruder | 099d895600 | ||
Simon Bruder | 37be2ea29d | ||
Simon Bruder | 36d202452e | ||
Simon Bruder | 73990eaed6 |
3
.gitmodules
vendored
3
.gitmodules
vendored
|
@ -4,9 +4,6 @@
|
||||||
[submodule "home/.dynamic-colors"]
|
[submodule "home/.dynamic-colors"]
|
||||||
path = dynamic-colors
|
path = dynamic-colors
|
||||||
url = https://github.com/sos4nt/dynamic-colors
|
url = https://github.com/sos4nt/dynamic-colors
|
||||||
[submodule "mpv-gallery-view"]
|
|
||||||
path = mpv-gallery-view
|
|
||||||
url = https://github.com/occivink/mpv-gallery-view
|
|
||||||
[submodule "vim-plug"]
|
[submodule "vim-plug"]
|
||||||
path = vim-plug
|
path = vim-plug
|
||||||
url = https://github.com/junegunn/vim-plug
|
url = https://github.com/junegunn/vim-plug
|
||||||
|
|
|
@ -1,55 +0,0 @@
|
||||||
font:
|
|
||||||
normal:
|
|
||||||
#family: Terminess Powerline
|
|
||||||
family: Iosevka Nerd Font
|
|
||||||
style: Regular
|
|
||||||
|
|
||||||
size: 13.5
|
|
||||||
|
|
||||||
mouse:
|
|
||||||
hide_when_typing: true
|
|
||||||
|
|
||||||
key_bindings:
|
|
||||||
- key: V
|
|
||||||
mods: Control|Alt
|
|
||||||
action: Paste
|
|
||||||
- key: C
|
|
||||||
mods: Control|Alt
|
|
||||||
action: Copy
|
|
||||||
|
|
||||||
bell:
|
|
||||||
duration: 100
|
|
||||||
|
|
||||||
# https://github.com/alacritty/alacritty/wiki/Color-schemes#solarized
|
|
||||||
colors:
|
|
||||||
# Default colors
|
|
||||||
primary:
|
|
||||||
background: '#002b36' # base03
|
|
||||||
foreground: '#839496' # base0
|
|
||||||
|
|
||||||
# Cursor colors
|
|
||||||
cursor:
|
|
||||||
text: '#002b36' # base03
|
|
||||||
cursor: '#839496' # base0
|
|
||||||
|
|
||||||
# Normal colors
|
|
||||||
normal:
|
|
||||||
black: '#073642' # base02
|
|
||||||
red: '#dc322f' # red
|
|
||||||
green: '#859900' # green
|
|
||||||
yellow: '#b58900' # yellow
|
|
||||||
blue: '#268bd2' # blue
|
|
||||||
magenta: '#d33682' # magenta
|
|
||||||
cyan: '#2aa198' # cyan
|
|
||||||
white: '#eee8d5' # base2
|
|
||||||
|
|
||||||
# Bright colors
|
|
||||||
bright:
|
|
||||||
black: '#002b36' # base03
|
|
||||||
red: '#cb4b16' # orange
|
|
||||||
green: '#586e75' # base01
|
|
||||||
yellow: '#657b83' # base00
|
|
||||||
blue: '#839496' # base0
|
|
||||||
magenta: '#6c71c4' # violet
|
|
||||||
cyan: '#93a1a1' # base1
|
|
||||||
white: '#fdf6e3' # base3
|
|
|
@ -1,8 +0,0 @@
|
||||||
background-color=#002b36
|
|
||||||
border-color=#073642
|
|
||||||
text-color=#839496
|
|
||||||
progress-color=over #073642
|
|
||||||
|
|
||||||
group-by=app-name
|
|
||||||
|
|
||||||
default-timeout=5000
|
|
|
@ -1,28 +0,0 @@
|
||||||
# audio filter bs2b (for headphones)
|
|
||||||
b af toggle "bs2b"
|
|
||||||
|
|
||||||
# toggle debanding
|
|
||||||
D cycle deband
|
|
||||||
|
|
||||||
# variable correction of audio pitch when changing speed
|
|
||||||
k cycle-values audio-pitch-correction "no" "yes"
|
|
||||||
|
|
||||||
# reverse cycling for audio and video (shift modifier on german keyboard layout)
|
|
||||||
' cycle audio down
|
|
||||||
- cycle video down
|
|
||||||
|
|
||||||
c cycle-values audio-channels stereo mono auto
|
|
||||||
|
|
||||||
K cycle-values glsl-shaders ~~/shaders/ravu-lite-r4.hook ~~/shaders/ravu-lite-r3.hook ~~/shaders/ravu-lite-r2.hook /dev/null
|
|
||||||
|
|
||||||
Ctrl+p script-message-to pitchcontrol toggle
|
|
||||||
|
|
||||||
# more granular panning
|
|
||||||
Alt+left add video-pan-x 0.05
|
|
||||||
Alt+right add video-pan-x -0.05
|
|
||||||
Alt+up add video-pan-y 0.05
|
|
||||||
Alt+down add video-pan-y -0.05
|
|
||||||
|
|
||||||
# sub-delay for fixing 24 empty frames on blu-ray
|
|
||||||
Alt+z add sub-delay -1
|
|
||||||
Alt+Z add sub-delay +1
|
|
|
@ -1,82 +0,0 @@
|
||||||
# configure fonts
|
|
||||||
osd-font = 'DINW07-Medium'
|
|
||||||
|
|
||||||
sub-font = 'Gandhi Sans'
|
|
||||||
sub-bold = yes
|
|
||||||
sub-font-size = 44
|
|
||||||
sub-use-margins = no
|
|
||||||
sub-border-size = 2
|
|
||||||
|
|
||||||
# make vobsub/PGS subtitles look nicer
|
|
||||||
sub-gauss=0.5
|
|
||||||
sub-gray=yes
|
|
||||||
|
|
||||||
# don’t correct pitch of audio
|
|
||||||
#audio-pitch-correction = no
|
|
||||||
|
|
||||||
# max volume
|
|
||||||
volume-max = 150
|
|
||||||
|
|
||||||
# downmix to stereo by default
|
|
||||||
audio-channels = stereo
|
|
||||||
|
|
||||||
# i18n
|
|
||||||
#alang = ger,de,deu,eng,en
|
|
||||||
#slang = ger,de,deu,eng,en
|
|
||||||
|
|
||||||
# allow seeking in streamed media
|
|
||||||
force-seekable
|
|
||||||
|
|
||||||
# enable hardware decoding when avaliable
|
|
||||||
hwdec = vaapi
|
|
||||||
|
|
||||||
# do not show images only one second
|
|
||||||
image-display-duration = inf
|
|
||||||
|
|
||||||
# better quality (but not too high, otherwise too high frame drop)
|
|
||||||
profile = gpu-hq
|
|
||||||
deband = no
|
|
||||||
dither-depth = auto
|
|
||||||
|
|
||||||
# screenshots
|
|
||||||
screenshot-format = png
|
|
||||||
screenshot-directory = ~/Videos/screenshots/unsorted/
|
|
||||||
|
|
||||||
[musicvideo]
|
|
||||||
lavfi-complex = '[aid1]asplit=4[ao][a1][a2][a3];[a1]avectorscope=m=lissajous:s=640x600:draw=dot:r=25[avectorscope];[a2]aresample=44100,showwaves=s=1280x600:mode=p2p:colors=red|lightgreen:r=25[showwaves];[a3]showcqt=s=1920x600:axis=0:axis_h=0:r=25[showcqt];[showwaves][avectorscope]hstack=shortest=1[top];[top][showcqt]vstack=shortest=1,fps=25[vo]'
|
|
||||||
alpha = no
|
|
||||||
|
|
||||||
[musicvideo-1080]
|
|
||||||
lavfi-complex = '[aid1]asplit=4[ao][a1][a2][a3];[a1]avectorscope=m=lissajous:s=640x540:draw=dot:r=25[avectorscope];[a2]aresample=44100,showwaves=s=1280x540:mode=p2p:colors=red|lightgreen:r=25[showwaves];[a3]showcqt=s=1920x540:axis=0:axis_h=0:r=25[showcqt];[showwaves][avectorscope]hstack=shortest=1[top];[top][showcqt]vstack=shortest=1,fps=25[vo]'
|
|
||||||
alpha = no
|
|
||||||
|
|
||||||
[musicvideo-c64]
|
|
||||||
lavfi-complex = '[aid1]channelsplit=4.0[mono][c1][c2][c3];[mono]channelmap=mono,asplit=2[ao][a2];[c1][c2][c3]join=inputs=3:channel_layout=3.0[a1];[a1]aresample=44100,showwaves=s=1920x600:mode=p2p:colors=red|lightgreen|yellow:split_channels=1:r=25[showwaves];[a2]showcqt=s=1920x600:axis=0:axis_h=0:r=25[showcqt];[showwaves][showcqt]vstack=shortest=1,fps=25,format=rgba[vo]'
|
|
||||||
alpha = no
|
|
||||||
|
|
||||||
[hqencode]
|
|
||||||
ovc = libx264
|
|
||||||
ovcopts-add = crf=18
|
|
||||||
oac = flac
|
|
||||||
audio-format = s16
|
|
||||||
|
|
||||||
[rain]
|
|
||||||
lavfi-complex = 'amovie=https\\://s3.sbruder.de/cdn/rain.opus,volume=0.5[rain];[aid1][rain]amix=2:duration=shortest[ao]'
|
|
||||||
|
|
||||||
[lq]
|
|
||||||
scale = bicubic_fast
|
|
||||||
cscale = bicubic_fast
|
|
||||||
dscale = bicubic_fast
|
|
||||||
|
|
||||||
[interpolate]
|
|
||||||
blend-subtitles = yes
|
|
||||||
video-sync = display-resample
|
|
||||||
interpolation = yes
|
|
||||||
tscale = box
|
|
||||||
tscale-window = sphinx
|
|
||||||
tscale-radius = 1.0
|
|
||||||
tscale-clamp = 0.0
|
|
||||||
|
|
||||||
[clear-speed]
|
|
||||||
# https://github.com/mpv-player/mpv/issues/4418#issuecomment-368272929
|
|
||||||
af-add = scaletempo=stride=28:overlap=.9:search=25
|
|
|
@ -1 +0,0 @@
|
||||||
thumbs_dir=~/.cache/thumbnails/mpv
|
|
|
@ -1,4 +0,0 @@
|
||||||
font=DINW07-Regular
|
|
||||||
font_mono=DINW07-Regular
|
|
||||||
font_size=10
|
|
||||||
redraw_delay=0.25
|
|
|
@ -1 +0,0 @@
|
||||||
../../../../mpv-gallery-view/scripts/gallery-thumbgen.lua
|
|
|
@ -1 +0,0 @@
|
||||||
../../../../mpv-gallery-view/scripts/gallery-thumbgen.lua
|
|
|
@ -1 +0,0 @@
|
||||||
../../../../mpv-gallery-view/scripts/gallery-thumbgen.lua
|
|
|
@ -1 +0,0 @@
|
||||||
../../../../mpv-gallery-view/scripts/gallery-thumbgen.lua
|
|
|
@ -1 +0,0 @@
|
||||||
../../../../../mpv-gallery-view/scripts/lib/gallery.lua
|
|
|
@ -1,33 +0,0 @@
|
||||||
require 'mp.options'
|
|
||||||
|
|
||||||
function handle_file_load ()
|
|
||||||
if mp.get_property("metadata/by-key/artist") == nil and mp.get_property("metadata/by-key/title") == nil then
|
|
||||||
-- media-title is filename if no title is set
|
|
||||||
if mp.get_property("media-title") ~= mp.get_property("filename") then
|
|
||||||
info = mp.get_property("media-title")
|
|
||||||
else
|
|
||||||
info = mp.get_property("filename/no-ext")
|
|
||||||
end
|
|
||||||
else
|
|
||||||
info = mp.get_property("metadata/by-key/artist") .. " – " .. mp.get_property("metadata/by-key/title")
|
|
||||||
end
|
|
||||||
|
|
||||||
-- check for youtube-dl
|
|
||||||
if mp.get_property("stream-open-filename") ~= mp.get_property("path") then
|
|
||||||
info = info .. "\n(" .. mp.get_property("path") .. ")"
|
|
||||||
end
|
|
||||||
|
|
||||||
file = io.open(options.write, "w")
|
|
||||||
io.output(file)
|
|
||||||
io.write(info .. "\n")
|
|
||||||
io.close(file)
|
|
||||||
end
|
|
||||||
|
|
||||||
options = {
|
|
||||||
write = "",
|
|
||||||
}
|
|
||||||
read_options(options)
|
|
||||||
|
|
||||||
if options.write ~= "" then
|
|
||||||
mp.register_event("file-loaded", handle_file_load)
|
|
||||||
end
|
|
|
@ -1,95 +0,0 @@
|
||||||
-- pitchcontrol.lua
|
|
||||||
--
|
|
||||||
-- Version: 0.2.0
|
|
||||||
-- URL: https://github.com/FichteFoll/mpv-scripts
|
|
||||||
-- License: ISC
|
|
||||||
|
|
||||||
-- Commands for key bindings:
|
|
||||||
--
|
|
||||||
-- * script-message-to pitchcontrol increase
|
|
||||||
-- Increase pitch by one half-tone. Bound to Alt+R.
|
|
||||||
-- * script-message-to pitchcontrol decrease
|
|
||||||
-- Increase pitch by one half-tone. Bound to Alt+r.
|
|
||||||
-- * script-message-to pitchcontrol toggle
|
|
||||||
-- Toggle pitching.
|
|
||||||
-- * script-message-to pitchcontrol set_halftone_pitch <number>
|
|
||||||
-- Sets pitch to <number> half-tones - positive, negative or 0.
|
|
||||||
|
|
||||||
|
|
||||||
-- Copyright 2016-2017 FichteFoll
|
|
||||||
--
|
|
||||||
-- Permission to use, copy, modify, and/or distribute this software for any
|
|
||||||
-- purpose with or without fee is hereby granted, provided that the above
|
|
||||||
-- copyright notice and this permission notice appear in all copies.
|
|
||||||
--
|
|
||||||
-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
||||||
-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
||||||
-- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
|
||||||
-- SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
||||||
-- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
||||||
-- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
|
|
||||||
-- IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
||||||
|
|
||||||
|
|
||||||
local utils = require 'mp.utils'
|
|
||||||
local msg = require('mp.msg')
|
|
||||||
local options = require('mp.options')
|
|
||||||
local script_name = mp.get_script_name() -- "pitchcontrol"
|
|
||||||
|
|
||||||
local HALFTONE_SCALE = math.pow(2, 1.0/12) -- 1.059463094352953
|
|
||||||
local RUBBERBAND_LABEL = string.format("%s-rubberband", script_name)
|
|
||||||
|
|
||||||
local current_pitch = 0
|
|
||||||
local active = false
|
|
||||||
|
|
||||||
|
|
||||||
function set_halftone_pitch(pitch, activate)
|
|
||||||
if activate == nil then
|
|
||||||
activate = true
|
|
||||||
end
|
|
||||||
pitch = tonumber(pitch)
|
|
||||||
local pitch_scale = math.pow(HALFTONE_SCALE, pitch)
|
|
||||||
|
|
||||||
if active then
|
|
||||||
mp.commandv('af-command', RUBBERBAND_LABEL, 'set-pitch', pitch_scale)
|
|
||||||
elseif activate then
|
|
||||||
mp.command(("af add @%s:rubberband=pitch-scale=%s"):format(RUBBERBAND_LABEL, pitch_scale))
|
|
||||||
active = true
|
|
||||||
else
|
|
||||||
mp.osd_message(("'%s' is inactive"):format(script_name))
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
current_pitch = pitch
|
|
||||||
|
|
||||||
-- output new pitch
|
|
||||||
msg.debug(("new pitch-scale: %f"):format(pitch_scale))
|
|
||||||
mp.osd_message(("Pitch: %+d halftones"):format(pitch))
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
function increase_handler()
|
|
||||||
set_halftone_pitch(current_pitch + 1, false)
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
function decrease_handler()
|
|
||||||
set_halftone_pitch(current_pitch - 1, false)
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
function toggle_handler()
|
|
||||||
if active then
|
|
||||||
mp.command(("af del @%s"):format(RUBBERBAND_LABEL))
|
|
||||||
mp.osd_message(("'%s' deactivated"):format(script_name))
|
|
||||||
active = false
|
|
||||||
else
|
|
||||||
set_halftone_pitch(current_pitch, true)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
mp.add_key_binding("Alt+p", 'increase', decrease_handler)
|
|
||||||
mp.add_key_binding("Alt+P", 'decrease', increase_handler)
|
|
||||||
mp.register_script_message('toggle', toggle_handler)
|
|
||||||
mp.register_script_message('set_halftone_pitch', set_halftone_pitch)
|
|
|
@ -1 +0,0 @@
|
||||||
../../../../mpv-gallery-view/scripts/playlist-view.lua
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,187 +0,0 @@
|
||||||
# vim: set ts=4 sw=4 sts=4:
|
|
||||||
set $mod Mod4
|
|
||||||
|
|
||||||
set $left h
|
|
||||||
set $down j
|
|
||||||
set $up k
|
|
||||||
set $right l
|
|
||||||
|
|
||||||
set $term alacritty
|
|
||||||
|
|
||||||
# Symlink to the current wallpaper
|
|
||||||
set $wallpaper $HOME/.config/sway/wallpaper
|
|
||||||
|
|
||||||
set $menu dmenu-wl_path | dmenu-wl -nb "#002b36" -nf "#839496" -sb "#859900" -sf "#073642" | xargs swaymsg exec --
|
|
||||||
|
|
||||||
# Outputs
|
|
||||||
output * bg $wallpaper fill
|
|
||||||
|
|
||||||
# FIXME: maybe use kanshi
|
|
||||||
output eDP-1 resolution 1920x1080 position 0,424
|
|
||||||
output "Dell Inc. DELL U2410 F525M0A104NL" resolution 1920x1200 position 1920,0
|
|
||||||
|
|
||||||
# Inputs
|
|
||||||
input type:keyboard {
|
|
||||||
xkb_layout de
|
|
||||||
xkb_options compose:caps
|
|
||||||
xkb_numlock enable
|
|
||||||
}
|
|
||||||
|
|
||||||
# Idle
|
|
||||||
exec swayidle -w \
|
|
||||||
timeout 300 "swaylock -f -i $wallpaper" \
|
|
||||||
timeout 300 'swaymsg "output * dpms off"' \
|
|
||||||
resume 'swaymsg "output * dpms on"' \
|
|
||||||
before-sleep "swaylock -f -i $wallpaper"
|
|
||||||
|
|
||||||
# Key bindings
|
|
||||||
# Basics
|
|
||||||
bindsym $mod+Return exec $term
|
|
||||||
bindsym $mod+Shift+c kill
|
|
||||||
bindsym $mod+r exec $menu
|
|
||||||
floating_modifier $mod normal
|
|
||||||
bindsym $mod+Control+r reload
|
|
||||||
bindsym $mod+Shift+q exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
|
|
||||||
|
|
||||||
# Focus
|
|
||||||
bindsym $mod+$left focus left
|
|
||||||
bindsym $mod+$down focus down
|
|
||||||
bindsym $mod+$up focus up
|
|
||||||
bindsym $mod+$right focus right
|
|
||||||
|
|
||||||
bindsym $mod+Left focus left
|
|
||||||
bindsym $mod+Down focus down
|
|
||||||
bindsym $mod+Up focus up
|
|
||||||
bindsym $mod+Right focus right
|
|
||||||
|
|
||||||
# Moving
|
|
||||||
bindsym $mod+Shift+$left move left
|
|
||||||
bindsym $mod+Shift+$down move down
|
|
||||||
bindsym $mod+Shift+$up move up
|
|
||||||
bindsym $mod+Shift+$right move right
|
|
||||||
|
|
||||||
bindsym $mod+Shift+Left move left
|
|
||||||
bindsym $mod+Shift+Down move down
|
|
||||||
bindsym $mod+Shift+Up move up
|
|
||||||
bindsym $mod+Shift+Right move right
|
|
||||||
|
|
||||||
# Workspaces
|
|
||||||
bindsym $mod+1 workspace 1
|
|
||||||
bindsym $mod+2 workspace 2
|
|
||||||
bindsym $mod+3 workspace 3
|
|
||||||
bindsym $mod+4 workspace 4
|
|
||||||
bindsym $mod+5 workspace 5
|
|
||||||
bindsym $mod+6 workspace 6
|
|
||||||
bindsym $mod+7 workspace 7
|
|
||||||
bindsym $mod+8 workspace 8
|
|
||||||
bindsym $mod+9 workspace 9
|
|
||||||
bindsym $mod+0 workspace 10
|
|
||||||
|
|
||||||
bindsym $mod+Shift+1 move container to workspace 1
|
|
||||||
bindsym $mod+Shift+2 move container to workspace 2
|
|
||||||
bindsym $mod+Shift+3 move container to workspace 3
|
|
||||||
bindsym $mod+Shift+4 move container to workspace 4
|
|
||||||
bindsym $mod+Shift+5 move container to workspace 5
|
|
||||||
bindsym $mod+Shift+6 move container to workspace 6
|
|
||||||
bindsym $mod+Shift+7 move container to workspace 7
|
|
||||||
bindsym $mod+Shift+8 move container to workspace 8
|
|
||||||
bindsym $mod+Shift+9 move container to workspace 9
|
|
||||||
bindsym $mod+Shift+0 move container to workspace 10
|
|
||||||
|
|
||||||
# Moving workspaces between outputs
|
|
||||||
bindsym $mod+Control+$left move workspace to output left
|
|
||||||
bindsym $mod+Control+$down move workspace to output down
|
|
||||||
bindsym $mod+Control+$up move workspace to output up
|
|
||||||
bindsym $mod+Control+$right move workspace to output right
|
|
||||||
|
|
||||||
bindsym $mod+Control+Left move workspace to output left
|
|
||||||
bindsym $mod+Control+Down move workspace to output down
|
|
||||||
bindsym $mod+Control+Up move workspace to output up
|
|
||||||
bindsym $mod+Control+Right move workspace to output right
|
|
||||||
|
|
||||||
# open next window as (vertical/horizontal) split
|
|
||||||
bindsym $mod+b splith
|
|
||||||
bindsym $mod+v splitv
|
|
||||||
|
|
||||||
# layouts
|
|
||||||
bindsym $mod+s layout stacking
|
|
||||||
bindsym $mod+t layout tabbed
|
|
||||||
bindsym $mod+e layout toggle split
|
|
||||||
|
|
||||||
bindsym $mod+f fullscreen
|
|
||||||
bindsym $mod+Control+space floating toggle
|
|
||||||
|
|
||||||
# switch focus to tiling/floating
|
|
||||||
bindsym $mod+space focus mode_toggle
|
|
||||||
|
|
||||||
bindsym $mod+a focus parent
|
|
||||||
|
|
||||||
# Scratchpad
|
|
||||||
bindsym $mod+Shift+minus move scratchpad
|
|
||||||
# show/hide/cycle scratchpad windows
|
|
||||||
bindsym $mod+minus scratchpad show
|
|
||||||
|
|
||||||
# Resizing
|
|
||||||
mode "resize" {
|
|
||||||
bindsym $left resize shrink width 10px
|
|
||||||
bindsym $down resize grow height 10px
|
|
||||||
bindsym $up resize shrink height 10px
|
|
||||||
bindsym $right resize grow width 10px
|
|
||||||
|
|
||||||
bindsym Left resize shrink width 10px
|
|
||||||
bindsym Down resize grow height 10px
|
|
||||||
bindsym Up resize shrink height 10px
|
|
||||||
bindsym Right resize grow width 10px
|
|
||||||
|
|
||||||
bindsym Return mode "default"
|
|
||||||
bindsym Escape mode "default"
|
|
||||||
}
|
|
||||||
bindsym $mod+d mode "resize"
|
|
||||||
|
|
||||||
# Multimedia Keys
|
|
||||||
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
|
|
||||||
bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
|
||||||
bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
|
|
||||||
bindsym --locked XF86MonBrightnessUp exec brightnessctl set +5%
|
|
||||||
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
|
|
||||||
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
|
|
||||||
|
|
||||||
bindsym $mod+y exec "swaylock -f -i $wallpaper"
|
|
||||||
bindsym --locked $mod+q exec 'test $(swaymsg -t get_outputs | jq "[.[].dpms] | any") = "true" && swaymsg "output * dpms off" || swaymsg "output * dpms on"'
|
|
||||||
|
|
||||||
# Status Bar
|
|
||||||
bar {
|
|
||||||
swaybar_command waybar
|
|
||||||
}
|
|
||||||
|
|
||||||
# Window rules (native: by app_id, xwayland legacy: by class)
|
|
||||||
assign [app_id="firefox"] 2
|
|
||||||
#assign [class="Chromium"] 2
|
|
||||||
assign [app_id="net.sourceforge.mumble."] 3
|
|
||||||
assign [class="Claws-mail"] 3
|
|
||||||
assign [app_id="anki"] 4
|
|
||||||
assign [app_id="libreoffice-startcenter"] 4
|
|
||||||
assign [app_id="net.sourceforge.gscan2pdf"] 4
|
|
||||||
assign [app_id="org.pwmt.zathura"] 4
|
|
||||||
assign [app_id="xournalpp"] 4
|
|
||||||
assign [app_id="audacious"] 5
|
|
||||||
assign [app_id="pavucontrol"] 5
|
|
||||||
assign [app_id="darktable"] 8
|
|
||||||
assign [app_id="org.inkscape.Inkscape"] 8
|
|
||||||
assign [class="Blender"] 8
|
|
||||||
assign [class="Gimp"] 8
|
|
||||||
assign [class="krita"] 8
|
|
||||||
|
|
||||||
# Window borders
|
|
||||||
default_border pixel 1
|
|
||||||
|
|
||||||
client.focused "#93a1a1" "#073642" "#93a1a1" "#2aa198"
|
|
||||||
client.focused_inactive "#839496" "#002b36" "#839496" "#2aa198"
|
|
||||||
client.unfocused "#839496" "#002b36" "#839496" "#2aa198"
|
|
||||||
client.urgent "#073642" "#dc322f" "#073642" "#2aa198"
|
|
||||||
|
|
||||||
# Cursor
|
|
||||||
seat seat0 xcursor_theme Adwaita
|
|
||||||
|
|
||||||
# Autostart
|
|
||||||
exec mako
|
|
|
@ -1,162 +0,0 @@
|
||||||
// vim: set ft=json:
|
|
||||||
// not actually json, but better than nothing
|
|
||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"position": "top",
|
|
||||||
"height": 24, // Waybar height (to be removed for auto height)
|
|
||||||
|
|
||||||
// Position/Order of modules
|
|
||||||
"modules-left": [
|
|
||||||
"sway/workspaces",
|
|
||||||
"sway/mode"
|
|
||||||
],
|
|
||||||
"modules-center": [],
|
|
||||||
"modules-right": [
|
|
||||||
"tray",
|
|
||||||
"custom/redshift",
|
|
||||||
"idle_inhibitor",
|
|
||||||
"backlight",
|
|
||||||
"mpd",
|
|
||||||
"pulseaudio",
|
|
||||||
"network",
|
|
||||||
"custom/vpn",
|
|
||||||
"network#speed",
|
|
||||||
"memory",
|
|
||||||
"cpu",
|
|
||||||
"temperature",
|
|
||||||
"battery",
|
|
||||||
"clock"
|
|
||||||
],
|
|
||||||
|
|
||||||
// Modules configuration
|
|
||||||
"sway/workspaces": {
|
|
||||||
"disable-scroll": true
|
|
||||||
},
|
|
||||||
"sway/mode": {
|
|
||||||
"format": "{}"
|
|
||||||
},
|
|
||||||
|
|
||||||
"mpd": {
|
|
||||||
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} – {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ",
|
|
||||||
"format-disconnected": "Disconnected ",
|
|
||||||
"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
|
|
||||||
"unknown-tag": "N/A",
|
|
||||||
"interval": 2,
|
|
||||||
"consume-icons": {
|
|
||||||
"on": " "
|
|
||||||
},
|
|
||||||
"random-icons": {
|
|
||||||
"off": "劣 ",
|
|
||||||
"on": "列 "
|
|
||||||
},
|
|
||||||
"repeat-icons": {
|
|
||||||
"on": "凌 "
|
|
||||||
},
|
|
||||||
"single-icons": {
|
|
||||||
"on": "綾 "
|
|
||||||
},
|
|
||||||
"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": 5
|
|
||||||
},
|
|
||||||
"clock": {
|
|
||||||
"format": "{:%H:%M %Z}",
|
|
||||||
"format-alt": "{:%Y-%m-%d (%a)}",
|
|
||||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>"
|
|
||||||
},
|
|
||||||
"cpu": {
|
|
||||||
"interval": 2,
|
|
||||||
"format": "{usage:2}% ",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"memory": {
|
|
||||||
"interval": 2,
|
|
||||||
"format": "{:2}% "
|
|
||||||
},
|
|
||||||
"temperature": {
|
|
||||||
"critical-threshold": 80,
|
|
||||||
"format": "{temperatureC}°C {icon}",
|
|
||||||
"format-icons": ["", "", "", "", ""]
|
|
||||||
},
|
|
||||||
"backlight": {
|
|
||||||
"format": "{percent}% {icon}",
|
|
||||||
"format-icons": [" ", " ", " ", " ", " ", " ", " "],
|
|
||||||
"on-scroll-up": "brightnessctl set +5%",
|
|
||||||
"on-scroll-down": "brightnessctl set 5%-"
|
|
||||||
},
|
|
||||||
"battery": {
|
|
||||||
"interval": 5,
|
|
||||||
"states": {
|
|
||||||
"good": 95,
|
|
||||||
"warning": 30,
|
|
||||||
"critical": 15
|
|
||||||
},
|
|
||||||
"format": "{capacity}% {icon}",
|
|
||||||
"format-charging": "{capacity}% ",
|
|
||||||
"format-plugged": "{capacity}% ﮣ",
|
|
||||||
"format-alt": "{time} {icon}",
|
|
||||||
"format-icons": ["", "", "", "", "", "", "", "", "", "", ""]
|
|
||||||
},
|
|
||||||
"network": {
|
|
||||||
"format-wifi": "{essid} ({signalStrength}%) 直 ",
|
|
||||||
"format-ethernet": "{ifname}: {ipaddr}/{cidr} ",
|
|
||||||
"format-linked": "{ifname} (No IP) ",
|
|
||||||
"format-disconnected": "Disconnected ⚠ ",
|
|
||||||
"format-alt": "{ifname}: {ipaddr}/{cidr}",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"network#speed": {
|
|
||||||
"interval": 2,
|
|
||||||
"format": "{bandwidthDownBits:>8} {bandwidthUpBits:>8} 祝",
|
|
||||||
"format-alt": "{bandwidthDownOctets:>8} {bandwidthUpOctets:>8} 祝",
|
|
||||||
"format-disconnected": " 0b/s 祝 0b/s",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"pulseaudio": {
|
|
||||||
"format": "{volume}% {icon} {format_source}",
|
|
||||||
"format-bluetooth": "{volume}% {icon} {format_source}",
|
|
||||||
"format-bluetooth-muted": "遼 {icon} {format_source}", // FIXME: see below
|
|
||||||
"format-muted": "遼 {format_source}", // FIXME: use normal mute icon (ﱝ ), which for some reason is displayed right of the source?
|
|
||||||
"format-source": "{volume}% \u2009",
|
|
||||||
"format-source-muted": "\u2009",
|
|
||||||
"format-icons": {
|
|
||||||
"headphone": " ",
|
|
||||||
"hands-free": " ",
|
|
||||||
"headset": " ",
|
|
||||||
"phone": " ",
|
|
||||||
"portable": " ",
|
|
||||||
"car": " ",
|
|
||||||
"default": ["奄", "奔", "墳"]
|
|
||||||
},
|
|
||||||
"on-click": "pavucontrol"
|
|
||||||
},
|
|
||||||
"custom/vpn": {
|
|
||||||
"interval": 10,
|
|
||||||
"exec": "ip -j link | jq --unbuffered --compact-output '[[.[].ifname | select(. | startswith(\"mullvad\"))][] | split(\"-\")[1] + \" \u2009\"] as $conns | { text: ($conns[0] // \"\"), class: (if $conns | length > 0 then \"connected\" else \"disconnected\" end) }'",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "{}",
|
|
||||||
"tooltip": false
|
|
||||||
},
|
|
||||||
"custom/redshift": {
|
|
||||||
"interval": 10,
|
|
||||||
"exec": "systemctl --user show redshift | grep -q ActiveState=active && echo '{\"tooltip\": \"Redshift active\", \"class\": \"active\"}' || echo '{\"tooltip\": \"Redshift inactive\", \"class\": \"inactive\"}'",
|
|
||||||
"on-click": "systemctl --user show redshift | grep -q ActiveState=active && systemctl --user stop redshift || systemctl --user start redshift",
|
|
||||||
"return-type": "json",
|
|
||||||
"format": "",
|
|
||||||
"tooltip": false
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,149 +0,0 @@
|
||||||
* {
|
|
||||||
border-radius: 0;
|
|
||||||
border: none;
|
|
||||||
font-family: "Iosevka Nerd Font";
|
|
||||||
font-size: 12px;
|
|
||||||
min-height: 0;
|
|
||||||
transition-property: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
window#waybar {
|
|
||||||
background-color: #002b36;
|
|
||||||
color: #839496;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button {
|
|
||||||
padding: 0 5px;
|
|
||||||
background-color: #002b36;
|
|
||||||
color: inherit;
|
|
||||||
border-bottom: 2px solid transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button:hover {
|
|
||||||
background: #073642;
|
|
||||||
box-shadow: inherit;
|
|
||||||
text-shadow: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.focused {
|
|
||||||
border-bottom: 2px solid #859900;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.urgent {
|
|
||||||
background-color: #dc322f;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mode {
|
|
||||||
background-color: #073642;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* all modules on the right */
|
|
||||||
#waybar > box > box:nth-child(3) > widget > label {
|
|
||||||
padding: 0 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.charging {
|
|
||||||
color: #073642;
|
|
||||||
background-color: #859900;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes blink {
|
|
||||||
to {
|
|
||||||
background-color: #fdf6e3;
|
|
||||||
color: #657b83;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.critical:not(.charging),
|
|
||||||
#temperature.critical {
|
|
||||||
background-color: #dc322f;
|
|
||||||
animation-name: blink;
|
|
||||||
animation-duration: 0.5s;
|
|
||||||
/* FIXME use nearest neighbor interpolation if possible */
|
|
||||||
animation-timing-function: cubic-bezier(1, 0, 0, 1);
|
|
||||||
animation-iteration-count: infinite;
|
|
||||||
animation-direction: alternate;
|
|
||||||
}
|
|
||||||
|
|
||||||
#cpu {
|
|
||||||
background-color: #2aa198;
|
|
||||||
color: #073642
|
|
||||||
}
|
|
||||||
|
|
||||||
#memory {
|
|
||||||
background-color: #b58900;
|
|
||||||
color: #073642
|
|
||||||
}
|
|
||||||
|
|
||||||
#backlight {
|
|
||||||
background-color: #fdf6e3;
|
|
||||||
color: #657b83;
|
|
||||||
}
|
|
||||||
|
|
||||||
#network {
|
|
||||||
background-color: #6c71c4;
|
|
||||||
color: #073642
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-vpn {
|
|
||||||
background-color: #268bd2;
|
|
||||||
color: #073642
|
|
||||||
}
|
|
||||||
|
|
||||||
#network.disconnected {
|
|
||||||
background-color: #dc322f;
|
|
||||||
}
|
|
||||||
|
|
||||||
#network.speed {
|
|
||||||
background-color: #859900;
|
|
||||||
}
|
|
||||||
|
|
||||||
#pulseaudio {
|
|
||||||
background-color: #fdf6e3;
|
|
||||||
color: #657b83;
|
|
||||||
}
|
|
||||||
|
|
||||||
#pulseaudio.muted {
|
|
||||||
background-color: #002b36;
|
|
||||||
color: #839496;
|
|
||||||
}
|
|
||||||
|
|
||||||
#temperature {
|
|
||||||
background-color: #d33682;
|
|
||||||
color: #073642;
|
|
||||||
}
|
|
||||||
|
|
||||||
#idle_inhibitor.activated {
|
|
||||||
background-color: #fdf6e3;
|
|
||||||
color: #002b36;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mpd {
|
|
||||||
background-color: #859900;
|
|
||||||
color: #073642;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mpd.disconnected {
|
|
||||||
background-color: #dc322f;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mpd.stopped {
|
|
||||||
background-color: #cb4b16;
|
|
||||||
}
|
|
||||||
|
|
||||||
#mpd.paused {
|
|
||||||
background-color: #b58900;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-redshift {
|
|
||||||
color: #073642;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-redshift.active {
|
|
||||||
background-color: #dc322f;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-redshift.inactive {
|
|
||||||
background-color: #268bd2;
|
|
||||||
}
|
|
|
@ -1,40 +0,0 @@
|
||||||
set selection-clipboard "clipboard"
|
|
||||||
|
|
||||||
map <C-j> set page-right-to-left
|
|
||||||
|
|
||||||
# Base16 Solarized Dark
|
|
||||||
# Author: Ethan Schoonover (modified by aramisgithub)
|
|
||||||
# Source: https://github.com/nicodebo/base16-zathura (modified)
|
|
||||||
|
|
||||||
set default-bg "#002b36"
|
|
||||||
set default-fg "#002b36"
|
|
||||||
|
|
||||||
set statusbar-fg "#839496"
|
|
||||||
set statusbar-bg "#073642"
|
|
||||||
|
|
||||||
set inputbar-bg "#002b36"
|
|
||||||
set inputbar-fg "#fdf6e3"
|
|
||||||
|
|
||||||
set notification-bg "#002b36"
|
|
||||||
set notification-fg "#fdf6e3"
|
|
||||||
|
|
||||||
set notification-error-bg "#002b36"
|
|
||||||
set notification-error-fg "#dc322f"
|
|
||||||
|
|
||||||
set notification-warning-bg "#002b36"
|
|
||||||
set notification-warning-fg "#dc322f"
|
|
||||||
|
|
||||||
set highlight-color "#b58900"
|
|
||||||
set highlight-active-color "#859900"
|
|
||||||
|
|
||||||
set completion-bg "#073642"
|
|
||||||
set completion-fg "#859900"
|
|
||||||
|
|
||||||
set completion-highlight-fg "#fdf6e3"
|
|
||||||
set completion-highlight-bg "#859900"
|
|
||||||
|
|
||||||
set recolor-lightcolor "#002b36"
|
|
||||||
set recolor-darkcolor "#839496"
|
|
||||||
|
|
||||||
set recolor "false"
|
|
||||||
set recolor-keephue "false"
|
|
|
@ -1 +0,0 @@
|
||||||
Subproject commit 5139d346de67e8dbee8c8983777026502d6bc627
|
|
Reference in a new issue