From 6ebef45567bfc36f1ea9fd02281303e17c8e2f0f Mon Sep 17 00:00:00 2001 From: Magdalena Szweda Date: Mon, 19 Oct 2026 15:06:47 +0200 Subject: XMonad(binds): Change file manager bound under S-e --- jj/.config/jj/config.toml | 27 -------- xmonad/.config/xmonad/xmonad.hs | 135 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 135 insertions(+), 27 deletions(-) delete mode 100644 jj/.config/jj/config.toml create mode 100644 xmonad/.config/xmonad/xmonad.hs diff --git a/jj/.config/jj/config.toml b/jj/.config/jj/config.toml deleted file mode 100644 index fc65527..0000000 --- a/jj/.config/jj/config.toml +++ /dev/null @@ -1,27 +0,0 @@ -[user] -name = "Magdalena Szweda" -email = "hi@roughlynamed.net" - -[signing] -behavior = "own" -backend = "gpg" -key = "0A9EAC618DFFA723992D020257ED5A4B1D76448F" - -[signing.backends.gpg] -program = "gpg-sq" - -[aliases] -ba = ["b", "a"] -push = ["git", "push"] -clone = ["git", "clone"] -pushall = ["util", "exec", "--", "sh", "-c", ''' - for r in codeberg savannah pi; do - echo "== $r ==" - jj git push --remote "$r" "$@" || exit 1 - done -''', ""] - -[ui] -default-command = "log" -diff-instructions = false - diff --git a/xmonad/.config/xmonad/xmonad.hs b/xmonad/.config/xmonad/xmonad.hs new file mode 100644 index 0000000..5e14eea --- /dev/null +++ b/xmonad/.config/xmonad/xmonad.hs @@ -0,0 +1,135 @@ +{-# LANGUAGE ImportQualifiedPost #-} +{-# OPTIONS_GHC -Wno-deprecations #-} + +import Data.Map qualified as M +import System.Exit (exitSuccess) +import XMonad +import XMonad.Actions.CycleWS (nextScreen, shiftNextScreen) +import XMonad.Hooks.EwmhDesktops +import XMonad.Hooks.InsertPosition +import XMonad.Hooks.ManageHelpers (isDialog) +import XMonad.Hooks.StatusBar +import XMonad.Hooks.StatusBar.PP +import XMonad.Layout.NoBorders (smartBorders) +import XMonad.Layout.Renamed (Rename (Replace), renamed) +import XMonad.StackSet qualified as W +import XMonad.Util.ClickableWorkspaces +import XMonad.Util.EZConfig (additionalKeysP) +import XMonad.Util.Ungrab +import XMonad.Util.SpawnOnce (spawnOnce) +myModMask :: KeyMask +myModMask = mod4Mask + +myTerminal :: String +myTerminal = "alacritty" + +myBorderWidth :: Dimension +myBorderWidth = 2 + +colBg, colFg, colAccent, colGrey :: String +colBg = "#101010" +colFg = "#cccccc" +colAccent = "#708090" +colGrey = "#606060" + +myWorkspaces :: [String] +myWorkspaces = map show [1 .. 9 :: Int] + +myLayout = renamed [Replace "[]="] tiled ||| renamed [Replace "[M]"] Full + where + tiled = Tall nmaster delta ratio + nmaster = 1 + ratio = 0.50 + delta = 3 / 100 + +myManageHook :: ManageHook +myManageHook = + composeAll + [ className =? "confirmreset" --> doFloat, + className =? "makebranch" --> doFloat, + className =? "maketag" --> doFloat, + className =? "ssh-askpass" --> doFloat, + className =? "Blueman-manager" --> doFloat, + className =? "Pavucontrol" --> doFloat, + title =? "branchdialog" --> doFloat, + title =? "pinentry" --> doFloat, + isDialog --> doFloat + ] + +myToggleFloat :: Window -> X () +myToggleFloat w = windows $ \s -> + if M.member w (W.floating s) + then W.sink w s + else W.float w (W.RationalRect 0.1 0.1 0.8 0.8) s + +myXmobarPP :: PP +myXmobarPP = + def + { ppCurrent = xmobarColor colBg colAccent . wrap " " " ", + ppHidden = xmobarColor colFg "" . wrap " " " ", + ppHiddenNoWindows = xmobarColor colGrey "" . wrap " " " ", + ppUrgent = xmobarColor "#ff5555" "" . wrap " " " ", + ppTitle = xmobarColor colFg "" . shorten 60, + ppLayout = xmobarColor colAccent "", + ppSep = xmobarColor colGrey "" " " + } + +main :: IO () +main = + xmonad + . ewmhFullscreen + . ewmh + . withEasySB (statusBarProp "xmobar" (clickablePP myXmobarPP)) defToggleStrutsKey + $ myConfig + +startup :: X () +startup = do + spawnOnce "xmms2-launcher && ~/src/xmms2-mpris/xmms2-mpris" + spawnOnce "~/.cargo/bin/mprisence" + spawn "dbus-update-activation-environment DISPLAY XAUTHORITY" + spawn "feh --bg-scale ~/Pictures/floating_gnu.png" + spawn "xset m 0" + +myConfig = + def + { modMask = myModMask, + terminal = myTerminal, + borderWidth = myBorderWidth, + normalBorderColor = colGrey, + focusedBorderColor = colAccent, + workspaces = myWorkspaces, + layoutHook = myLayout, + manageHook = insertPosition End Newer <> myManageHook <+> manageHook def, + startupHook = startup + } + `additionalKeysP` [ ("M-", spawn myTerminal), + ("M-p", spawn "j4-dmenu-desktop"), + ("M-c", spawn "emacs"), + ("M-w", spawn "icecat"), + ("M-e", spawn "alacritty -e nnn"), + ("M-s", spawn "discord"), + ("M-x", spawn "loginctl lock-session"), + ("M-S-s", unGrab *> spawn "screenshot select"), + ("M-S-r", unGrab *> spawn "screenrecord select"), + ("M-q", kill), + ("M-f", withFocused myToggleFloat), + ("M-j", windows W.focusDown), + ("M-k", windows W.focusUp), + ("M-h", sendMessage Shrink), + ("M-l", sendMessage Expand), + ("M-S-h", sendMessage (IncMasterN 1)), + ("M-S-l", sendMessage (IncMasterN (-1))), + ("M-", sendMessage NextLayout), + ("M-.", nextScreen), + ("M-S-.", shiftNextScreen), + ("M-C-q", io exitSuccess), + ("", spawn "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"), + ("", spawn "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"), + ("", spawn "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"), + ("", spawn "playerctl play-pause"), + ("", spawn "playerctl next"), + ("", spawn "playerctl previous"), + ("", spawn "playerctl stop"), + ("", spawn "brightnessctl set +5%"), + ("", spawn "brightnessctl set 5%-") + ] -- cgit v1.2.3