Compare commits
No commits in common. "f26267ac6c6986beeeb4461b6507b945b3f45a2a" and "f04a73cac10b7811529c18f6614553ee5ba293ee" have entirely different histories.
f26267ac6c
...
f04a73cac1
10
.bashrc
10
.bashrc
@ -1,10 +0,0 @@
|
||||
# Meant to be a starting point
|
||||
|
||||
# Aliases
|
||||
alias l='exa --long --header --icons --group-directories-first'
|
||||
alias ll='exa --all --long --header --icons --group-directories-first'
|
||||
alias lt='exa --ignore-glob="node_modules" --tree --level=2 --header --icons --group-directories-first'
|
||||
alias ltt='exa --ignore-glob="node_modules" --tree --header --icons --group-directories-first'
|
||||
|
||||
eval "$(starship init bash)"
|
||||
|
@ -1,2 +0,0 @@
|
||||
[golang]
|
||||
symbol = " "
|
258
config/foot/foot.ini
Normal file
258
config/foot/foot.ini
Normal file
@ -0,0 +1,258 @@
|
||||
# -*- conf -*-
|
||||
|
||||
# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
|
||||
shell=/usr/bin/fish
|
||||
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
|
||||
# login-shell=no
|
||||
|
||||
# app-id=foot # globally set wayland app-id. Default values are "foot" and "footclient" for desktop and server mode
|
||||
# title=foot
|
||||
# locked-title=no
|
||||
|
||||
# font=Iosevka Nerd Font:size=12
|
||||
font=IosevkaTermSlab Nerd Font:size=12
|
||||
# font-bold=<bold variant of regular font>
|
||||
# font-italic=<italic variant of regular font>
|
||||
# font-bold-italic=<bold+italic variant of regular font>
|
||||
# font-size-adjustment=0.5
|
||||
# line-height=<font metrics>
|
||||
# letter-spacing=0
|
||||
# horizontal-letter-offset=0
|
||||
# vertical-letter-offset=0
|
||||
# underline-offset=<font metrics>
|
||||
# underline-thickness=<font underline thickness>
|
||||
# strikeout-thickness=<font strikeout thickness>
|
||||
# box-drawings-uses-font-glyphs=no
|
||||
# dpi-aware=no
|
||||
|
||||
# initial-window-size-pixels=700x500 # Or,
|
||||
# initial-window-size-chars=<COLSxROWS>
|
||||
# initial-window-mode=windowed
|
||||
# pad=0x0 # optionally append 'center'
|
||||
# resize-by-cells=yes
|
||||
# resize-keep-grid=yes
|
||||
# resize-delay-ms=100
|
||||
|
||||
# bold-text-in-bright=no
|
||||
# word-delimiters=,│`|:"'()[]{}<>
|
||||
# selection-target=primary
|
||||
# workers=<number of logical CPUs>
|
||||
# utmp-helper=/usr/lib/utempter/utempter # When utmp backend is ‘libutempter’ (Linux)
|
||||
# utmp-helper=/usr/libexec/ulog-helper # When utmp backend is ‘ulog’ (FreeBSD)
|
||||
|
||||
[environment]
|
||||
# name=value
|
||||
|
||||
[bell]
|
||||
# urgent=no
|
||||
# notify=no
|
||||
# visual=no
|
||||
# command=
|
||||
# command-focused=no
|
||||
|
||||
[desktop-notifications]
|
||||
# command=notify-send --wait --app-name ${app-id} --icon ${app-id} --category ${category} --urgency ${urgency} --expire-time ${expire-time} --hint STRING:image-path:${icon} --hint BOOLEAN:suppress-sound:${muted} --hint STRING:sound-name:${sound-name} --replace-id ${replace-id} ${action-argument} --print-id -- ${title} ${body}
|
||||
# command-action-argument=--action ${action-name}=${action-label}
|
||||
# close=""
|
||||
# inhibit-when-focused=yes
|
||||
|
||||
|
||||
[scrollback]
|
||||
# lines=1000
|
||||
# multiplier=3.0
|
||||
# indicator-position=relative
|
||||
# indicator-format=""
|
||||
|
||||
[url]
|
||||
# launch=xdg-open ${url}
|
||||
# label-letters=sadfjklewcmpgh
|
||||
# osc8-underline=url-mode
|
||||
# protocols=http, https, ftp, ftps, file, gemini, gopher
|
||||
# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'()[]
|
||||
|
||||
[cursor]
|
||||
# style=block
|
||||
# color=<inverse foreground/background>
|
||||
# blink=no
|
||||
# blink-rate=500
|
||||
# beam-thickness=1.5
|
||||
# underline-thickness=<font underline thickness>
|
||||
|
||||
[mouse]
|
||||
# hide-when-typing=no
|
||||
# alternate-scroll-mode=yes
|
||||
|
||||
[touch]
|
||||
# long-press-delay=400
|
||||
|
||||
[colors]
|
||||
# alpha=1.0
|
||||
# background=242424
|
||||
# foreground=ffffff
|
||||
# flash=7f7f00
|
||||
# flash-alpha=0.5
|
||||
|
||||
## Normal/regular colors (color palette 0-7)
|
||||
# regular0=242424 # black
|
||||
# regular1=f62b5a # red
|
||||
# regular2=47b413 # green
|
||||
# regular3=e3c401 # yellow
|
||||
# regular4=24acd4 # blue
|
||||
# regular5=f2affd # magenta
|
||||
# regular6=13c299 # cyan
|
||||
# regular7=e6e6e6 # white
|
||||
|
||||
## Bright colors (color palette 8-15)
|
||||
# bright0=616161 # bright black
|
||||
# bright1=ff4d51 # bright red
|
||||
# bright2=35d450 # bright green
|
||||
# bright3=e9e836 # bright yellow
|
||||
# bright4=5dc5f8 # bright blue
|
||||
# bright5=feabf2 # bright magenta
|
||||
# bright6=24dfc4 # bright cyan
|
||||
# bright7=ffffff # bright white
|
||||
|
||||
## dimmed colors (see foot.ini(5) man page)
|
||||
# dim0=<not set>
|
||||
# ...
|
||||
# dim7=<not-set>
|
||||
|
||||
## The remaining 256-color palette
|
||||
# 16 = <256-color palette #16>
|
||||
# ...
|
||||
# 255 = <256-color palette #255>
|
||||
|
||||
## Sixel colors
|
||||
# sixel0 = 000000
|
||||
# sixel1 = 3333cc
|
||||
# sixel2 = cc2121
|
||||
# sixel3 = 33cc33
|
||||
# sixel4 = cc33cc
|
||||
# sixel5 = 33cccc
|
||||
# sixel6 = cccc33
|
||||
# sixel7 = 878787
|
||||
# sixel8 = 424242
|
||||
# sixel9 = 545499
|
||||
# sixel10 = 994242
|
||||
# sixel11 = 549954
|
||||
# sixel12 = 995499
|
||||
# sixel13 = 549999
|
||||
# sixel14 = 999954
|
||||
# sixel15 = cccccc
|
||||
|
||||
## Misc colors
|
||||
# selection-foreground=<inverse foreground/background>
|
||||
# selection-background=<inverse foreground/background>
|
||||
# jump-labels=<regular0> <regular3> # black-on-yellow
|
||||
# scrollback-indicator=<regular0> <bright4> # black-on-bright-blue
|
||||
# search-box-no-match=<regular0> <regular1> # black-on-red
|
||||
# search-box-match=<regular0> <regular3> # black-on-yellow
|
||||
# urls=<regular3>
|
||||
|
||||
[csd]
|
||||
# preferred=server
|
||||
# size=48
|
||||
# font=<primary font>
|
||||
# color=<foreground color>
|
||||
# hide-when-maximized=no
|
||||
# double-click-to-maximize=yes
|
||||
# border-width=0
|
||||
# border-color=<csd.color>
|
||||
# button-width=26
|
||||
# button-color=<background color>
|
||||
# button-minimize-color=<regular4>
|
||||
# button-maximize-color=<regular2>
|
||||
# button-close-color=<regular1>
|
||||
|
||||
[key-bindings]
|
||||
# scrollback-up-page=Shift+Page_Up
|
||||
# scrollback-up-half-page=none
|
||||
# scrollback-up-line=none
|
||||
# scrollback-down-page=Shift+Page_Down
|
||||
# scrollback-down-half-page=none
|
||||
# scrollback-down-line=none
|
||||
# scrollback-home=none
|
||||
# scrollback-end=none
|
||||
# clipboard-copy=Control+Shift+c XF86Copy
|
||||
# clipboard-paste=Control+Shift+v XF86Paste
|
||||
# primary-paste=Shift+Insert
|
||||
# search-start=Control+Shift+r
|
||||
# font-increase=Control+plus Control+equal Control+KP_Add
|
||||
# font-decrease=Control+minus Control+KP_Subtract
|
||||
# font-reset=Control+0 Control+KP_0
|
||||
# spawn-terminal=Control+Shift+n
|
||||
# minimize=none
|
||||
# maximize=none
|
||||
# fullscreen=none
|
||||
# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||
# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||
# pipe-selected=[xargs -r firefox] none
|
||||
# pipe-command-output=[wl-copy] none # Copy last command's output to the clipboard
|
||||
# show-urls-launch=Control+Shift+o
|
||||
# show-urls-copy=none
|
||||
# show-urls-persistent=none
|
||||
# prompt-prev=Control+Shift+z
|
||||
# prompt-next=Control+Shift+x
|
||||
# unicode-input=Control+Shift+u
|
||||
# noop=none
|
||||
|
||||
[search-bindings]
|
||||
# cancel=Control+g Control+c Escape
|
||||
# commit=Return
|
||||
# find-prev=Control+r
|
||||
# find-next=Control+s
|
||||
# cursor-left=Left Control+b
|
||||
# cursor-left-word=Control+Left Mod1+b
|
||||
# cursor-right=Right Control+f
|
||||
# cursor-right-word=Control+Right Mod1+f
|
||||
# cursor-home=Home Control+a
|
||||
# cursor-end=End Control+e
|
||||
# delete-prev=BackSpace
|
||||
# delete-prev-word=Mod1+BackSpace Control+BackSpace
|
||||
# delete-next=Delete
|
||||
# delete-next-word=Mod1+d Control+Delete
|
||||
# extend-char=Shift+Right
|
||||
# extend-to-word-boundary=Control+w Control+Shift+Right
|
||||
# extend-to-next-whitespace=Control+Shift+w
|
||||
# extend-line-down=Shift+Down
|
||||
# extend-backward-char=Shift+Left
|
||||
# extend-backward-to-word-boundary=Control+Shift+Left
|
||||
# extend-backward-to-next-whitespace=none
|
||||
# extend-line-up=Shift+Up
|
||||
# clipboard-paste=Control+v Control+Shift+v Control+y XF86Paste
|
||||
# primary-paste=Shift+Insert
|
||||
# unicode-input=none
|
||||
# quit=none
|
||||
# scrollback-up-page=Shift+Page_Up
|
||||
# scrollback-up-half-page=none
|
||||
# scrollback-up-line=none
|
||||
# scrollback-down-page=Shift+Page_Down
|
||||
# scrollback-down-half-page=none
|
||||
# scrollback-down-line=none
|
||||
# scrollback-home=none
|
||||
# scrollback-end=none
|
||||
|
||||
[url-bindings]
|
||||
# cancel=Control+g Control+c Control+d Escape
|
||||
# toggle-url-visible=t
|
||||
|
||||
[text-bindings]
|
||||
# \x03=Mod4+c # Map Super+c -> Ctrl+c
|
||||
|
||||
[mouse-bindings]
|
||||
# scrollback-up-mouse=BTN_WHEEL_BACK
|
||||
# scrollback-down-mouse=BTN_WHEEL_FORWARD
|
||||
# font-increase=Control+BTN_WHEEL_BACK
|
||||
# font-decrease=Control+BTN_WHEEL_FORWARD
|
||||
# selection-override-modifiers=Shift
|
||||
# primary-paste=BTN_MIDDLE
|
||||
# select-begin=BTN_LEFT
|
||||
# select-begin-block=Control+BTN_LEFT
|
||||
# select-extend=BTN_RIGHT
|
||||
# select-extend-character-wise=Control+BTN_RIGHT
|
||||
# select-word=BTN_LEFT-2
|
||||
# select-word-whitespace=Control+BTN_LEFT-2
|
||||
# select-quote = BTN_LEFT-3
|
||||
# select-row=BTN_LEFT-4
|
||||
|
||||
# vim: ft=dosini
|
116
config/fuzzel/fuzzel.ini
Normal file
116
config/fuzzel/fuzzel.ini
Normal file
@ -0,0 +1,116 @@
|
||||
output=DP-1
|
||||
font=IosevkaTermSlab:size=14
|
||||
# dpi-aware=auto
|
||||
# use-bold=no
|
||||
# prompt="> "
|
||||
# placeholder=
|
||||
# icon-theme=hicolor
|
||||
# icons-enabled=yes
|
||||
# hide-before-typing=no
|
||||
# fields=filename,name,generic
|
||||
# password-character=*
|
||||
# filter-desktop=no
|
||||
# match-mode=fzf
|
||||
# sort-result=yes
|
||||
# match-counter=no
|
||||
# delayed-filter-ms=300
|
||||
# delayed-filter-limit=20000
|
||||
# show-actions=no
|
||||
terminal=foot
|
||||
# launch-prefix=<not set>
|
||||
# list-executables-in-path=no
|
||||
|
||||
# anchor=center
|
||||
# x-margin=0
|
||||
# y-margin=0
|
||||
# lines=15
|
||||
# width=30
|
||||
# tabs=8
|
||||
# horizontal-pad=40
|
||||
# vertical-pad=8
|
||||
# inner-pad=0
|
||||
|
||||
# image-size-ratio=0.5
|
||||
|
||||
# line-height=<use font metrics>
|
||||
# letter-spacing=0
|
||||
|
||||
# layer=overlay
|
||||
# exit-on-keyboard-focus-loss=yes
|
||||
|
||||
# cache=<not set>
|
||||
|
||||
# render-workers=<number of logical CPUs>
|
||||
# match-workers=<number of logical CPUs>
|
||||
|
||||
[colors]
|
||||
# background=fdf6e3ff
|
||||
# text=657b83ff
|
||||
# prompt=586e75ff
|
||||
# placeholder=93a1a1ff
|
||||
# input=657b83ff
|
||||
# match=cb4b16ff
|
||||
# selection=eee8d5ff
|
||||
# selection-text=586e75ff
|
||||
# selection-match=cb4b16ff
|
||||
# counter=93a1a1ff
|
||||
# border=002b36ff
|
||||
|
||||
[border]
|
||||
# width=1
|
||||
# radius=10
|
||||
|
||||
[dmenu]
|
||||
# mode=text # text|index
|
||||
# exit-immediately-if-empty=no
|
||||
|
||||
[key-bindings]
|
||||
# cancel=Escape Control+g Control+c Control+bracketleft
|
||||
# execute=Return KP_Enter Control+y
|
||||
# execute-or-next=Tab
|
||||
# execute-input=Shift+Return Shift+KP_Enter
|
||||
# cursor-left=Left Control+b
|
||||
# cursor-left-word=Control+Left Mod1+b
|
||||
# cursor-right=Right Control+f
|
||||
# cursor-right-word=Control+Right Mod1+f
|
||||
# cursor-home=Home Control+a
|
||||
# cursor-end=End Control+e
|
||||
# delete-prev=BackSpace Control+h
|
||||
# delete-prev-word=Mod1+BackSpace Control+BackSpace Control+w
|
||||
# delete-line-backward=Control+u
|
||||
# delete-next=Delete KP_Delete Control+d
|
||||
# delete-next-word=Mod1+d Control+Delete Control+KP_Delete
|
||||
# delete-line-forward=Control+k
|
||||
# prev=Up Control+p
|
||||
# prev-with-wrap=ISO_Left_Tab
|
||||
# prev-page=Page_Up KP_Page_Up
|
||||
# next=Down Control+n
|
||||
# next-with-wrap=none
|
||||
# next-page=Page_Down KP_Page_Down
|
||||
# expunge=Shift+Delete
|
||||
# clipboard-paste=Control+v XF86Paste
|
||||
# primary-paste=Shift+Insert Shift+KP_Insert
|
||||
|
||||
# custom-N: *dmenu mode only*. Like execute, but with a non-zero
|
||||
# exit-code; custom-1 exits with code 10, custom-2 with 11, custom-3
|
||||
# with 12, and so on.
|
||||
|
||||
# custom-1=Mod1+1
|
||||
# custom-2=Mod1+2
|
||||
# custom-3=Mod1+3
|
||||
# custom-4=Mod1+4
|
||||
# custom-5=Mod1+5
|
||||
# custom-6=Mod1+6
|
||||
# custom-7=Mod1+7
|
||||
# custom-8=Mod1+8
|
||||
# custom-9=Mod1+9
|
||||
# custom-10=Mod1+0
|
||||
# custom-11=Mod1+exclam
|
||||
# custom-12=Mod1+at
|
||||
# custom-13=Mod1+numbersign
|
||||
# custom-14=Mod1+dollar
|
||||
# custom-15=Mod1+percent
|
||||
# custom-16=Mod1+dead_circumflex
|
||||
# custom-17=Mod1+ampersand
|
||||
# custom-18=Mod1+asterix
|
||||
# custom-19=Mod1+parentleft
|
190
config/river/init
Executable file
190
config/river/init
Executable file
@ -0,0 +1,190 @@
|
||||
#!/bin/sh
|
||||
|
||||
# See the river(1), riverctl(1), and rivertile(1) man pages for complete
|
||||
# documentation.
|
||||
|
||||
# Note: the "Super" modifier is also known as Logo, GUI, Windows, Mod4, etc.
|
||||
|
||||
#
|
||||
# Begin: My own config
|
||||
#
|
||||
|
||||
# Super+Return to start an instance of foot (https://codeberg.org/dnkl/foot)
|
||||
riverctl map normal Super Return spawn foot
|
||||
|
||||
# Super+Space to start the launcher: fuzzel
|
||||
riverctl map normal Super Space spawn fuzzel
|
||||
|
||||
# Set keyboard layout
|
||||
riverctl keyboard-layout latam
|
||||
|
||||
# Super+W to close the focused view
|
||||
riverctl map normal Super W close
|
||||
|
||||
# Super+Shift+E to exit river
|
||||
riverctl map normal Super+Shift E exit
|
||||
|
||||
# Change window focus with Super+hjkl
|
||||
riverctl map normal Super H focus-view left
|
||||
riverctl map normal Super J focus-view down
|
||||
riverctl map normal Super K focus-view up
|
||||
riverctl map normal Super L focus-view right
|
||||
|
||||
#
|
||||
# RIVER OUTPUTS - MONITORS
|
||||
# each monitor is an output.
|
||||
#
|
||||
|
||||
# use wlr-randr
|
||||
wlr-randr --output DP-1 --pos 0,0 --output HDMI-A-1 --pos 1920,0
|
||||
|
||||
# follow focus of the mouse
|
||||
riverctl focus-follows-cursor normal
|
||||
|
||||
# Super+Period and Super+Comma to focus the next/previous output
|
||||
riverctl map normal Super Period focus-output next
|
||||
riverctl map normal Super Comma focus-output previous
|
||||
|
||||
# Super+Shift+{Period,Comma} to send the focused view to the next/previous output
|
||||
riverctl map normal Super+Shift Period send-to-output next
|
||||
riverctl map normal Super+Shift Comma send-to-output previous
|
||||
|
||||
# focused window border
|
||||
riverctl border-width 4
|
||||
riverctl border-color-focused 0xc026d3ff
|
||||
riverctl border-color-unfocused 0xff000000
|
||||
|
||||
|
||||
#
|
||||
# End: My own config
|
||||
#
|
||||
|
||||
|
||||
|
||||
# Super+Shift+J and Super+Shift+K to swap the focused view with the next/previous
|
||||
# view in the layout stack
|
||||
riverctl map normal Super+Shift J swap next
|
||||
riverctl map normal Super+Shift K swap previous
|
||||
|
||||
# Super+Return to bump the focused view to the top of the layout stack
|
||||
# riverctl map normal Super Return zoom
|
||||
|
||||
# Super+H and Super+L to decrease/increase the main ratio of rivertile(1)
|
||||
# riverctl map normal Super H send-layout-cmd rivertile "main-ratio -0.05"
|
||||
# riverctl map normal Super L send-layout-cmd rivertile "main-ratio +0.05"
|
||||
|
||||
# Super+Shift+H and Super+Shift+L to increment/decrement the main count of rivertile(1)
|
||||
riverctl map normal Super+Shift H send-layout-cmd rivertile "main-count +1"
|
||||
riverctl map normal Super+Shift L send-layout-cmd rivertile "main-count -1"
|
||||
|
||||
# Super+Alt+{H,J,K,L} to move views
|
||||
riverctl map normal Super+Alt H move left 100
|
||||
riverctl map normal Super+Alt J move down 100
|
||||
riverctl map normal Super+Alt K move up 100
|
||||
riverctl map normal Super+Alt L move right 100
|
||||
|
||||
# Super+Alt+Control+{H,J,K,L} to snap views to screen edges
|
||||
riverctl map normal Super+Alt+Control H snap left
|
||||
riverctl map normal Super+Alt+Control J snap down
|
||||
riverctl map normal Super+Alt+Control K snap up
|
||||
riverctl map normal Super+Alt+Control L snap right
|
||||
|
||||
# Super+Alt+Shift+{H,J,K,L} to resize views
|
||||
riverctl map normal Super+Alt+Shift H resize horizontal -100
|
||||
riverctl map normal Super+Alt+Shift J resize vertical 100
|
||||
riverctl map normal Super+Alt+Shift K resize vertical -100
|
||||
riverctl map normal Super+Alt+Shift L resize horizontal 100
|
||||
|
||||
# Super + Left Mouse Button to move views
|
||||
riverctl map-pointer normal Super BTN_LEFT move-view
|
||||
|
||||
# Super + Right Mouse Button to resize views
|
||||
riverctl map-pointer normal Super BTN_RIGHT resize-view
|
||||
|
||||
# Super + Middle Mouse Button to toggle float
|
||||
riverctl map-pointer normal Super BTN_MIDDLE toggle-float
|
||||
|
||||
for i in $(seq 1 9)
|
||||
do
|
||||
tags=$((1 << ($i - 1)))
|
||||
|
||||
# Super+[1-9] to focus tag [0-8]
|
||||
riverctl map normal Super $i set-focused-tags $tags
|
||||
|
||||
# Super+Shift+[1-9] to tag focused view with tag [0-8]
|
||||
riverctl map normal Super+Shift $i set-view-tags $tags
|
||||
|
||||
# Super+Control+[1-9] to toggle focus of tag [0-8]
|
||||
riverctl map normal Super+Control $i toggle-focused-tags $tags
|
||||
|
||||
# Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view
|
||||
riverctl map normal Super+Shift+Control $i toggle-view-tags $tags
|
||||
done
|
||||
|
||||
# Super+0 to focus all tags
|
||||
# Super+Shift+0 to tag focused view with all tags
|
||||
all_tags=$(((1 << 32) - 1))
|
||||
riverctl map normal Super 0 set-focused-tags $all_tags
|
||||
riverctl map normal Super+Shift 0 set-view-tags $all_tags
|
||||
|
||||
# Super+Space to toggle float
|
||||
# riverctl map normal Super Space toggle-float
|
||||
|
||||
# Super+F to toggle fullscreen
|
||||
riverctl map normal Super F toggle-fullscreen
|
||||
|
||||
# Super+{Up,Right,Down,Left} to change layout orientation
|
||||
riverctl map normal Super Up send-layout-cmd rivertile "main-location top"
|
||||
riverctl map normal Super Right send-layout-cmd rivertile "main-location right"
|
||||
riverctl map normal Super Down send-layout-cmd rivertile "main-location bottom"
|
||||
riverctl map normal Super 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
|
||||
|
||||
# Super+F11 to enter passthrough mode
|
||||
riverctl map normal Super F11 enter-mode passthrough
|
||||
|
||||
# Super+F11 to return to normal mode
|
||||
riverctl map passthrough Super 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 'pamixer -i 5'
|
||||
riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5'
|
||||
riverctl map $mode None XF86AudioMute spawn 'pamixer --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 brightness with brightnessctl (https://github.com/Hummer12007/brightnessctl)
|
||||
riverctl map $mode None XF86MonBrightnessUp spawn 'brightnessctl set +5%'
|
||||
riverctl map $mode None XF86MonBrightnessDown spawn 'brightnessctl set 5%-'
|
||||
done
|
||||
|
||||
# Set background and border color
|
||||
riverctl background-color 0x002b36
|
||||
|
||||
# Set keyboard repeat rate
|
||||
riverctl set-repeat 50 300
|
||||
|
||||
# Make all views with an app-id that starts with "float" and title "foo" start floating.
|
||||
riverctl rule-add -app-id 'float*' -title 'foo' float
|
||||
|
||||
# Make all views with app-id "bar" and any title use client-side decorations
|
||||
riverctl rule-add -app-id "bar" csd
|
||||
|
||||
# Set the default layout generator to be rivertile and start it.
|
||||
# River will send the process group of the init executable SIGTERM on exit.
|
||||
riverctl default-layout rivertile
|
||||
rivertile -view-padding 6 -outer-padding 6 &
|
33
config/waybar/config
Normal file
33
config/waybar/config
Normal file
@ -0,0 +1,33 @@
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"height": 24,
|
||||
"modules-left": ["river/tags", "river/window"],
|
||||
"modules-center": [],
|
||||
"modules-right": ["cpu", "memory", "network", "pulseaudio", "clock"],
|
||||
|
||||
"clock": {
|
||||
"format": "{:%H:%M}",
|
||||
"tooltip": false
|
||||
},
|
||||
"cpu": {
|
||||
"format": "CPU {usage}%",
|
||||
"interval": 1
|
||||
},
|
||||
"memory": {
|
||||
"format": "MEM {}%",
|
||||
"interval": 1
|
||||
},
|
||||
"network": {
|
||||
"format-wifi": "WiFi ({signalStrength}%)",
|
||||
"format-ethernet": "ETH",
|
||||
"format-disconnected": "NET ✕"
|
||||
},
|
||||
"pulseaudio": {
|
||||
"format": "VOL {volume}%",
|
||||
"format-muted": "MUTED"
|
||||
},
|
||||
"river/tags": {
|
||||
"num-tags": 9
|
||||
}
|
||||
}
|
29
config/waybar/style.css
Normal file
29
config/waybar/style.css
Normal file
@ -0,0 +1,29 @@
|
||||
/* ~/.config/waybar/style.css */
|
||||
* {
|
||||
font-family: monospace;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background: #282828;
|
||||
color: #ebdbb2;
|
||||
}
|
||||
|
||||
#tags button {
|
||||
padding: 0 5px;
|
||||
color: #928374;
|
||||
}
|
||||
|
||||
#tags button.focused {
|
||||
color: #ebdbb2;
|
||||
background: #3c3836;
|
||||
}
|
||||
|
||||
#clock,
|
||||
#cpu,
|
||||
#memory,
|
||||
#network,
|
||||
#pulseaudio {
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
42
install.sh
Executable file
42
install.sh
Executable file
@ -0,0 +1,42 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
# Create config directories
|
||||
mkdir -p "$HOME/.config"
|
||||
|
||||
# Handle .config directory symlinks first
|
||||
cd "$HOME/dotfiles/config" || exit 1
|
||||
for dir in *; do
|
||||
[ -d "$dir" ] || continue
|
||||
|
||||
target="$HOME/.config/$dir"
|
||||
if [ -L "$target" ]; then
|
||||
echo "Skipping $dir (symlink already exists)"
|
||||
continue
|
||||
elif [ -e "$target" ]; then
|
||||
echo "Skipping $dir (target exists and is not a symlink)"
|
||||
continue
|
||||
fi
|
||||
|
||||
ln -sf "$PWD/$dir" "$target"
|
||||
echo "Linked $dir"
|
||||
done
|
||||
|
||||
# Handle root directory dotfiles
|
||||
cd "$HOME/dotfiles/root" || exit 1
|
||||
for file in *; do
|
||||
[ -f "$file" ] || continue
|
||||
|
||||
target="$HOME/.$file"
|
||||
if [ -L "$target" ]; then
|
||||
echo "Skipping .$file (symlink already exists)"
|
||||
continue
|
||||
elif [ -e "$target" ]; then
|
||||
echo "Skipping .$file (target exists and is not a symlink)"
|
||||
continue
|
||||
fi
|
||||
|
||||
ln -sf "$PWD/$file" "$target"
|
||||
echo "Linked .$file"
|
||||
done
|
48
root/tmux.conf
Normal file
48
root/tmux.conf
Normal file
@ -0,0 +1,48 @@
|
||||
# Use C-a as prefix because reaching for C-b is inefficient
|
||||
set-option -g default-shell "/usr/bin/fish"
|
||||
set -g prefix C-a
|
||||
unbind C-b
|
||||
|
||||
# Start windows and panes at 1, not 0
|
||||
set -g base-index 1
|
||||
setw -g pane-base-index 1
|
||||
|
||||
# Sane split commands
|
||||
# bind | split-window -h
|
||||
# bind - split-window -v
|
||||
|
||||
# Keep the defaults but make them work in current path
|
||||
bind '"' split-window -v -c "#{pane_current_path}"
|
||||
bind '%' split-window -h -c "#{pane_current_path}"
|
||||
|
||||
# Vi keys, because anything else is heresy
|
||||
setw -g mode-keys vi
|
||||
bind-key -T copy-mode-vi 'v' send -X begin-selection
|
||||
bind-key -T copy-mode-vi 'y' send -X copy-selection-and-cancel
|
||||
|
||||
# Vim-style pane navigation
|
||||
bind h select-pane -L
|
||||
bind j select-pane -D
|
||||
bind k select-pane -U
|
||||
bind l select-pane -R
|
||||
|
||||
# Fast pane switching
|
||||
bind -n M-h select-pane -L
|
||||
bind -n M-j select-pane -D
|
||||
bind -n M-k select-pane -U
|
||||
bind -n M-l select-pane -R
|
||||
|
||||
# Enable mouse mode
|
||||
set -g mouse on
|
||||
|
||||
# Don't rename windows automatically
|
||||
set-option -g allow-rename off
|
||||
|
||||
# Increase history limit because memory is cheap
|
||||
set-option -g history-limit 50000
|
||||
|
||||
# Status bar that doesn't look like it's from 1970
|
||||
set -g status-style 'bg=#333333 fg=#5eacd3'
|
||||
|
||||
# the fish shell
|
||||
set-option -g default-shell "/usr/bin/fish"
|
Loading…
Reference in New Issue
Block a user