Add emacs run launcher, put HLWM config in the right place

This commit is contained in:
Joseph Ferano 2023-08-11 12:36:21 +07:00
parent 925c3e285d
commit bba3fc4f0a
3 changed files with 44 additions and 11 deletions

View File

@ -240,7 +240,8 @@ Finish up
(setopt package-vc-selected-packages
'((dotenv :url "https://github.com/pkulev/dotenv.el")
(doom-themes :url "https://github.com/JosephFerano/doom-themes")))
(doom-themes :url "https://github.com/JosephFerano/doom-themes")
(app-launcher :url "https://github.com/SebastienWae/app-launcher")))
(package-initialize)
#+end_src
@ -1495,6 +1496,30 @@ When called interactively, prompt for BUFFER."
(setq completion-styles '(orderless basic)
completion-category-overrides '((file (styles basic partial-completion))))
#+end_src
** App Launcher
#+begin_src emacs-lisp
(defun emacs-run-launcher ()
"Create and select a frame called emacs-run-launcher which
consists only of a minibuffer and has specific dimensions. Runs
app-launcher-run-app on that frame, which is an emacs command
that prompts you to select an app and open it in a dmenu like
behaviour. Delete the frame after that command has exited"
(interactive)
(with-selected-frame
(make-frame '((name . "emacs-run-launcher")
(minibuffer . only)
(fullscreen . 0) ; no fullscreen
(undecorated . t) ; remove title bar
;;(auto-raise . t) ; focus on this frame
;;(tool-bar-lines . 0)
;;(menu-bar-lines . 0)
(internal-border-width . 30)
(width . 100)
(height . 20)))
(unwind-protect
(app-launcher-run-app)
(delete-frame))))
#+end_src
** Dirvish/Dired
#+begin_src emacs-lisp
(require 'dirvish)

View File

@ -11,6 +11,10 @@ hc emit_hook reload
xsetroot -solid '#5A8E3A'
picom -b -c
nitrogen --restore &
polybar &
xset r rate 260 60
# remove all existing keybindings
hc keyunbind --all
@ -20,10 +24,11 @@ hc keyunbind --all
#Mod=Mod1 # Use alt as the main modifier
Mod=Mod4 # Use the super key as the main modifier
hc keybind $Mod-Shift-q quit
hc keybind $Mod-Ctrl-q quit
hc keybind $Mod-Shift-r reload
hc keybind $Mod-Shift-c close
hc keybind $Mod-Return spawn "kitty" # use your $TERMINAL with xterm as fallback
hc keybind $Mod-Shift-q close
hc keybind $Mod-Return spawn kitty # use your $TERMINAL with xterm as fallback
hc keybind $Mod-space spawn emacsclient -cF "((visibility . nil))" -e "(emacs-run-launcher)"
# basic movement in tiling and floating mode
# focusing clients
@ -94,7 +99,7 @@ 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 \
hc keybind $Mod-w \
or , and . compare tags.focus.curframe_wcount = 2 \
. cycle_layout +1 vertical horizontal max vertical grid \
, cycle_layout +1
@ -107,9 +112,11 @@ hc mousebind $Mod-Button3 resize
# 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-Tab cycle_all +1
#hc keybind $Mod-Shift-Tab cycle_all -1
hc keybind $Mod-Tab cycle +1
hc keybind $Mod-Shift-Tab cycle -1
# hc keybind $Mod-c cycle
hc keybind $Mod-i jumpto urgent
# theme
@ -166,12 +173,13 @@ hc set mouse_recenter_gap 0
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 floatplacement=center
#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 title='emacs-run-launcher' floating=on floatplacement=center hook=emacs_launcher
hc rule windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off
hc rule fixedsize floating=on

View File

@ -212,8 +212,8 @@ blur-background-exclude = [
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
# `xrender` is the default one.
#
# backend = "glx"
backend = "xrender";
backend = "glx"
#backend = "xrender";
# Enable/disable VSync.
# vsync = false