summaryrefslogtreecommitdiff
path: root/config-herbstluftwm-autostart.org
diff options
context:
space:
mode:
Diffstat (limited to 'config-herbstluftwm-autostart.org')
-rwxr-xr-xconfig-herbstluftwm-autostart.org324
1 files changed, 0 insertions, 324 deletions
diff --git a/config-herbstluftwm-autostart.org b/config-herbstluftwm-autostart.org
deleted file mode 100755
index 618228b..0000000
--- a/config-herbstluftwm-autostart.org
+++ /dev/null
@@ -1,324 +0,0 @@
-# -*- mode: org; -*-
-
-#+TITLE: {{{hl}}} configuration file
-#+AUTHOR: Marius Peter
-#+DATE: <2021-08-01 Sun>
-
-#+PROPERTY: header-args :tangle ~/.config/herbstluftwm/autostart :shebang "#!/usr/bin/env bash"
-
-#+SETUPFILE: ~/.emacs.d/templates/documents/gnu-default.setup
-#+INCLUDE: ~/.emacs.d/templates/documents/default-title.org
-
-#+MACRO: hl Herbstluftwm
-
-* Introduction
-
-{{{hl}}} is a manual tiling window manager. It has the particularity
-of being configured via the ~herbstclient~ program.
-
-#+begin_center
-\Huge\textbf{Herbstluft}\\
-\normalsize\textit{autumn air}
-#+end_center
-
-* Early setup
-
-** Definitions
-
-This is my literate configuration for Herbstluftwm.
-
-#+BEGIN_SRC shell
- hc() {
- herbstclient "$@"
- }
-#+END_SRC
-
-Choice of Modkey. Mod1 is Alt, Mod4 is Super.
-
-#+BEGIN_SRC shell
- Mod=Mod4
-#+END_SRC
-
-** ~Plank~ dock
-
-#+BEGIN_SRC shell
- killall plank
- plank &
-#+END_SRC
-
-** TODO Basic
-
-We make {{{hl}}} execute code associated with the ~reload~ hook.
-
-#+BEGIN_SRC shell
- hc emit_hook reload
-#+END_SRC
-
-We set the color of the default window bar.
-
-#+BEGIN_SRC shell
- xsetroot -solid '#5A8E3A'
-#+END_SRC
-
-We remove all existing keybindings.
-
-#+BEGIN_SRC shell
- hc keyunbind --all
-#+END_SRC
-
-* keybindings
-
-If you have a super key you will be much happier with Mod set to Mod4.
-
-** Basic
-
-#+BEGIN_SRC shell
-hc keybind $Mod-d spawn dmenu_run
-
- hc keybind $Mod-Shift-q quit
- hc keybind $Mod-Shift-r reload
- hc keybind $Mod-Shift-c close
-#+END_SRC
-
-** Spawn a terminal
-
-We use our $TERMINAL with ~st~ as fallback.
-
-#+BEGIN_SRC shell
- hc keybind $Mod-Return spawn "${TERMINAL:-st}"
-#+END_SRC
-
-** Movement
-
-Basic movement in tiling and floating mode focusing clients.
-
-#+BEGIN_SRC shell
-hc keybind $Mod-Left focus left
-hc keybind $Mod-Down focus down
-hc keybind $Mod-Up focus up
-hc keybind $Mod-Right focus right
-hc keybind $Mod-h focus left
-hc keybind $Mod-j focus down
-hc keybind $Mod-k focus up
-hc keybind $Mod-l focus right
-#+END_SRC
-
-Moving clients in tiling and floating mode.
-
-#+BEGIN_SRC shell
-hc keybind $Mod-Shift-Left shift left
-hc keybind $Mod-Shift-Down shift down
-hc keybind $Mod-Shift-Up shift up
-hc keybind $Mod-Shift-Right shift right
-hc keybind $Mod-Shift-h shift left
-hc keybind $Mod-Shift-j shift down
-hc keybind $Mod-Shift-k shift up
-hc keybind $Mod-Shift-l shift right
-#+END_SRC
-
-** Splitting frames
-
-Create an empty frame at the specified direction.
-
-#+BEGIN_SRC shell
- hc keybind $Mod-u split bottom 0.5
- hc keybind $Mod-o split left 0.5
-#+END_SRC
-
-We let the current frame explode into subframes.
-
-#+BEGIN_SRC shell
- hc keybind $Mod-Control-space split explode
-#+END_SRC
-
-** Resizing frames and clients
-
-Resizing frames and floating clients.
-
-#+BEGIN_SRC shell
-resizestep=0.02
-hc keybind $Mod-Control-h resize left +$resizestep
-hc keybind $Mod-Control-j resize down +$resizestep
-hc keybind $Mod-Control-k resize up +$resizestep
-hc keybind $Mod-Control-l resize right +$resizestep
-hc keybind $Mod-Control-Left resize left +$resizestep
-hc keybind $Mod-Control-Down resize down +$resizestep
-hc keybind $Mod-Control-Up resize up +$resizestep
-hc keybind $Mod-Control-Right resize right +$resizestep
-#+END_SRC
-
-** Tags
-
-*** Basic definitions
-
-#+BEGIN_SRC shell
-# tags
-tag_names=( {1..9} )
-tag_keys=( {1..9} 0 )
-
-hc rename default "${tag_names[0]}" || true
-for i in "${!tag_names[@]}" ; do
- hc add "${tag_names[$i]}"
- key="${tag_keys[$i]}"
- if ! [ -z "$key" ] ; then
- hc keybind "$Mod-$key" use_index "$i"
- hc keybind "$Mod-Shift-$key" move_index "$i"
- fi
-done
-#+END_SRC
-
-*** Cycling
-
-#+BEGIN_SRC shell
-# cycle through tags
-hc keybind $Mod-period use_index +1 --skip-visible
-hc keybind $Mod-comma use_index -1 --skip-visible
-
-#+END_SRC
-
-*** Layouting
-
-#+BEGIN_SRC shell
- hc keybind $Mod-r remove
- hc keybind $Mod-s floating toggle # Schwebend = floating!
- hc keybind $Mod-f fullscreen toggle
- hc keybind $Mod-Shift-f set_attr clients.focus.floating toggle
- hc keybind $Mod-Shift-m set_attr clients.focus.minimized true
- hc keybind $Mod-Control-m jumpto last-minimized
- hc keybind $Mod-p pseudotile toggle
- # The following cycles through the available layouts within a frame, but skips
- # layouts, if the layout change wouldn't affect the actual window positions.
- # I.e. if there are two windows within a frame, the grid layout is skipped.
- hc keybind $Mod-space \
- or , and . compare tags.focus.curframe_wcount = 2 \
- . cycle_layout +1 vertical horizontal max vertical grid \
- , cycle_layout +1
-#+END_SRC
-
-*** Mouse bindings
-
-#+BEGIN_SRC shell
-# mouse
-hc mouseunbind --all
-hc mousebind $Mod-Button1 move
-hc mousebind $Mod-Button2 zoom
-hc mousebind $Mod-Button3 resize
-#+END_SRC
-
-*** Cycle monitors
-
-#+BEGIN_SRC shell
-# focus
-hc keybind $Mod-BackSpace cycle_monitor
-hc keybind $Mod-Tab cycle_all +1
-hc keybind $Mod-Shift-Tab cycle_all -1
-hc keybind $Mod-c cycle
-hc keybind $Mod-i jumpto urgent
-#+END_SRC
-
-* Theme
-
-** Basic
-
-#+BEGIN_SRC shell
- hc attr theme.tiling.reset 1
- hc attr theme.floating.reset 1
-#+END_SRC
-
-** Frames
-
-#+BEGIN_SRC shell
- hc set frame_border_active_color '#222222cc'
- hc set frame_border_normal_color '#101010cc'
- hc set frame_bg_normal_color '#565656aa'
- hc set frame_bg_active_color '#345F0Caa'
- hc set frame_border_width 1
- hc set always_show_frame on
- hc set frame_bg_transparent on
- hc set frame_transparent_width 5
- hc set frame_gap 4
-#+END_SRC
-
-** Windows
-
-#+BEGIN_SRC shell
-hc attr theme.title_height 24
-hc attr theme.title_font 'Hack:pixelsize=20' # example using Xft
-# hc attr theme.title_font '-*-fixed-medium-r-*-*-13-*-*-*-*-*-*-*'
-hc attr theme.padding_top 4 # space below the title's baseline (i.e. text depth)
-hc attr theme.active.color '#345F0Cef'
-hc attr theme.title_color '#ffffff'
-hc attr theme.normal.color '#323232dd'
-hc attr theme.urgent.color '#7811A1dd'
-hc attr theme.normal.title_color '#898989'
-hc attr theme.inner_width 1
-hc attr theme.inner_color black
-hc attr theme.border_width 3
-hc attr theme.floating.border_width 12
-hc attr theme.floating.outer_width 1
-hc attr theme.floating.outer_color black
-hc attr theme.active.inner_color '#789161'
-hc attr theme.urgent.inner_color '#9A65B0'
-hc attr theme.normal.inner_color '#606060'
-# copy inner color to outer_color
-for state in active urgent normal ; do
- hc substitute C theme.${state}.inner_color \
- attr theme.${state}.outer_color C
-done
-hc attr theme.active.outer_width 1
-hc attr theme.background_color '#141414'
-#+END_SRC
-
-** Window appearance
-
-#+BEGIN_SRC shell
- hc set window_gap 24
- hc set frame_padding 0
- hc set smart_window_surroundings on
- hc set smart_frame_surroundings on
- hc set mouse_recenter_gap 0
-#+END_SRC
-
-** Rules
-
-#+BEGIN_SRC shell
-hc unrule -F
-#hc rule class=XTerm tag=3 # move all xterms to tag 3
-hc rule focus=on # normally focus new clients
-hc rule floatplacement=smart
-#hc rule focus=off # normally do not focus new clients
-# give focus to most common terminals
-#hc rule class~'(.*[Rr]xvt.*|.*[Tt]erm|Konsole)' focus=on
-hc rule windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' floating=on
-hc rule windowtype='_NET_WM_WINDOW_TYPE_DIALOG' focus=on
-hc rule windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off
-
-hc set tree_style '╾│ ├└╼─┐'
-
-#+END_SRC
-
-** Unlock monitors
-
-#+BEGIN_SRC shell
-hc unlock
-#+END_SRC
-
-** Multi-monitor setup
-
-#+BEGIN_SRC shell
-# do multi monitor setup here, e.g.:
-# hc set_monitors 1280x1024+0+0 1280x1024+1280+0
-# or simply:
-# hc detect_monitors
-#+END_SRC
-
-** Panel
-
-#+BEGIN_SRC shell
- panel=~/.config/herbstluftwm/panel.sh
- [ -x "$panel" ] || panel=/etc/xdg/herbstluftwm/panel.sh
- for monitor in $(hc list_monitors | cut -d: -f1) ; do
- # start it on each monitor
- "$panel" "$monitor" &
- done
-#+END_SRC
Copyright 2019--2024 Marius PETER