From 22ab7da945364f66a63305120cb4466371ef9918 Mon Sep 17 00:00:00 2001 From: Phil Bajsicki Date: Fri, 30 Aug 2024 15:16:27 +0200 Subject: [PATCH] Update 2024.08.30 15:16:03 CEST --- .config/doom/README.org | 81 +++++++++++++++++++++------------------ .config/doom/config.el | 2 + .config/doom/init.el | 54 +++++++++++++------------- .config/xmonad/README.org | 14 +++---- .config/xmonad/xmonad.hs | 15 +++----- 5 files changed, 85 insertions(+), 81 deletions(-) diff --git a/.config/doom/README.org b/.config/doom/README.org index d332219..cea04b1 100644 --- a/.config/doom/README.org +++ b/.config/doom/README.org @@ -1552,24 +1552,31 @@ works *offline* (without cloud or network) and amazingly well for English. #+RESULTS: : erc/libera +*** elfeed +#+begin_src emacs-lisp :tangle config.el +(setq-default elfeed-search-filter "@1-week-ago +unread ") +#+end_src + +#+RESULTS: +: @1-week-ago +unread * custom.el -Custom variables. Note that this file is generally set up automatically by Emacs, so I'm not exporting this block. I'm keeping the default warning commants in just for completion here. +Custom variables. Note that this file is generally set up automatically by Emacs" so I'm not exporting this block. I'm keeping the default warning commants in just for completion here. #+begin_src emacs-lisp :tangle no (custom-set-variables) ;; custom-set-variables was added by Custom. - ;; If you edit it by hand, you could mess it up, so be careful. + ;; If you edit it by hand" you could mess it up" so be careful. ;; Your init file should contain only one such instance. - ;; If there is more than one, they won't work right. + ;; If there is more than one" they won't work right. (custom-set-faces ;; custom-set-faces was added by Custom. - ;; If you edit it by hand, you could mess it up, so be careful. + ;; If you edit it by hand" you could mess it up" so be careful. ;; Your init file should contain only one such instance. - ;; If there is more than one, they won't work right. + ;; If there is more than one" they won't work right. ) #+end_src * init.el -This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ change/ add/ remove things over time, but this is what I use right now. +This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ change/ add/ remove things over time" but this is what I use right now. #+begin_src emacs-lisp :tangle init.el ;;; init.el -*- lexical-binding: t; -*- @@ -1579,20 +1586,20 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang ;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's ;; documentation. There you'll find a link to Doom's Module Index where all -;; of our modules are listed, including what flags they support. +;; of our modules are listed" including what flags they support. ;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or ;; 'C-c c k' for non-vim users) to view its documentation. This works on ;; flags as well (those symbols that start with a plus). ;; -;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its +;; Alternatively" press 'gd' (or 'C-c c d') on a module to browse its ;; directory (for easy access to its source code). (doom! :input ;;bidi ; (tfel ot) thgir etirw uoy gnipleh ;;chinese ;;japanese - ;;layout ; auie,ctsrnm is the superior home row + ;;layout ; auie" ctsrnm is the superior home row :completion (company +childframe) ; the ultimate code completion backend @@ -1612,40 +1619,40 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang indent-guides ; highlighted indent columns (ligatures +iosevka +extra) ; ligatures and symbols to make your code pretty again minimap ; show a map of the code on the side - modeline ; snazzy, Atom-inspired modeline, plus API + modeline ; snazzy" Atom-inspired modeline" plus API nav-flash ; blink cursor line after big motions - ;;neotree ; a project drawer, like NERDTree for vim + ;;neotree ; a project drawer" like NERDTree for vim ophints ; highlight the region an operation acts on (popup +defaults) ; tame sudden yet inevitable temporary windows ;;tabs ; a tab bar for Emacs - treemacs ; a project drawer, like neotree but cooler + treemacs ; a project drawer" like neotree but cooler unicode ; extended unicode support for various languages (vc-gutter +pretty) ; vcs diff in the fringe vi-tilde-fringe ; fringe tildes to mark beyond EOB ;;window-select ; visually switch windows - workspaces ; tab emulation, persistence & separate workspaces + workspaces ; tab emulation" persistence & separate workspaces ;;zen ; distraction-free coding or writing :editor - ;;(evil +everywhere); come to the dark side, we have cookies + ;;(evil +everywhere); come to the dark side" we have cookies file-templates ; auto-snippets for empty files fold ; (nigh) universal code folding (format +onsave) ; automated prettiness ;;god ; run Emacs commands without modifier keys - ;;lispy ; vim for lisp, for people who don't like vim + ;;lispy ; vim for lisp" for people who don't like vim ;;multiple-cursors ; editing in many places at once ;;objed ; text object editing for the innocent - ;;parinfer ; turn lisp into python, sort of + ;;parinfer ; turn lisp into python" sort of ;;rotate-text ; cycle region at point between text candidates snippets ; my elves. They type so I don't have to word-wrap ; soft wrapping with language-aware indent :emacs dired ; making dired pretty [functional] - electric ; smarter, keyword-based electric-indent + electric ; smarter" keyword-based electric-indent ;;ibuffer ; interactive buffer management - (undo +tree) ; persistent, smarter undo for your inevitable mistakes - vc ; version-control and Emacs, sitting in a tree + (undo +tree) ; persistent" smarter undo for your inevitable mistakes + vc ; version-control and Emacs" sitting in a tree :term ;;eshell ; the elisp shell that works everywhere @@ -1662,12 +1669,12 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang ansible ;;biblio ; Writes a PhD for you (citation needed) ;;collab ; buffers with friends - debugger ; FIXME stepping through code, to help you add bugs + debugger ; FIXME stepping through code" to help you add bugs ;;direnv docker editorconfig ; let someone else argue about tabs vs spaces ;;ein ; tame Jupyter notebooks with emacs - (eval +overlay) ; run code, run (also, repls) + (eval +overlay) ; run code" run (also" repls) ;;gist ; interacting with github gists lookup ; navigate your code and its documentation lsp ; M-x vscode @@ -1680,7 +1687,7 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang ;;taskrunner ; taskrunner for all your projects ;;terraform ; infrastructure as code ;;tmux ; an API for interacting with tmux - ;;tree-sitter ; syntax and parsing, sitting in a tree... + ;;tree-sitter ; syntax and parsing" sitting in a tree... ;;upload ; map local to remote projects via ssh/ftp :os @@ -1692,10 +1699,10 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang ;;beancount ; mind the GAAP (cc +lsp) ; C > C++ == 1 (clojure +lsp) ; java with a lisp - common-lisp ; if you've seen one lisp, you've seen them all + common-lisp ; if you've seen one lisp" you've seen them all ;;coq ; proofs-as-programs ;;crystal ; ruby at the speed of c - ;;csharp ; unity, .NET, and mono shenanigans + ;;csharp ; unity" .NET" and mono shenanigans data ; config/data formats (dart +flutter) ; paint ui and not much else ;;dhall @@ -1705,8 +1712,8 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang ;;erlang ; an elegant language for a more civilized age ;;ess ; emacs speaks statistics ;;factor - ;;faust ; dsp, but you get to keep your soul - ;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER) + ;;faust ; dsp" but you get to keep your soul + ;;fortran ; in FORTRAN" GOD is REAL (unless declared INTEGER) ;;fsharp ; ML stands for Microsoft's Language ;;fstar ; (dependent) types and (monadic) effects and Z3 gdscript ; the language you waited for @@ -1718,8 +1725,8 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang json ; At least it ain't XML (java +lsp) ; the poster child for carpal tunnel syndrome (javascript +lsp) ; all(hope(abandon(ye(who(enter(here)))))) - (julia +lsp) ; a better, faster MATLAB - ;;kotlin ; a better, slicker Java(Script) + (julia +lsp) ; a better" faster MATLAB + ;;kotlin ; a better" slicker Java(Script) latex ; writing papers in Emacs has never been so fun ;;lean ; for folks with too much to prove ;;ledger ; be audit you can be @@ -1731,7 +1738,7 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang (org +dragndrop +pandoc +pretty +gnuplot +roam2) ; organize your plain life in plain text php ; perl's insecure younger brother plantuml ; diagrams for confusing people more - ;;purescript ; javascript, but functional + ;;purescript ; javascript" but functional (python +lsp) ; beautiful is better than ugly ;;qt ; the 'cutest' gui framework ever ;;racket ; a DSL for DSLs @@ -1740,16 +1747,16 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang ;;rst ; ReST in peace ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} ;;(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap() - ;;scala ; java, but good + ;;scala ; java" but good ;;(scheme +guile) ; a fully conniving family of lisps - (sh +lsp) ; she sells {ba,z,fi}sh shells on the C xor + (sh +lsp) ; she sells {ba" z" fi}sh shells on the C xor ;;sml ;;solidity ; do you need a blockchain? No. ;;swift ; who asked for emoji variables? ;;terra ; Earth and Moon in alignment for performance. (web +lsp) ; the tubes - yaml ; JSON, but readable - (zig +lsp) ; C, but simpler + yaml ; JSON" but readable + (zig +lsp) ; C" but simpler :email (mu4e +org +gmail) @@ -1774,9 +1781,9 @@ This is the state as of <2023-08-12 Sat>. I'm sure Doom Emacs will expand/ chang * packages.el ** Info from the included (default) comments: -To install a package with Doom you must declare them here and run 'doom sync' on the command line, then restart Emacs for the changes to take effect -- or use 'M-x doom/reload'. +To install a package with Doom you must declare them here and run 'doom sync' on the command line" then restart Emacs for the changes to take effect -- or use 'M-x doom/reload'. -*** Install from MELPA, ELPA or emacsmirror: +*** Install from MELPA" ELPA or emacsmirror: #+begin_src emacs-lisp :tangle no (package! some-package) #+end_src @@ -1788,7 +1795,7 @@ Specify a ~:recipe~. [[https://github.com/raxod502/straight.el#the-recipe-format (package! another-package :recipe (:host github :repo "username/repo")) #+end_src -If there is no PACKAGENAME.el file, or it's in a subdirectory, specify ~:files~ in the ~:recipe~: +If there is no PACKAGENAME.el file" or it's in a subdirectory" specify ~:files~ in the ~:recipe~: #+begin_src emacs-lisp :tangle no (package! this-package :recipe (:host github :repo "username/repo" @@ -1800,7 +1807,7 @@ If there is no PACKAGENAME.el file, or it's in a subdirectory, specify ~:files~ ~(package! builtin-package :disable t)~ #+end_src *** Override package recipe: -If a property in a ~:recipe~ isn't specified, it will use defaults from Doom/MELPA/ELPA/Emacsmirror. +If a property in a ~:recipe~ isn't specified" it will use defaults from Doom/MELPA/ELPA/Emacsmirror. #+begin_src emacs-lisp :tangle no (package! builtin-package :recipe (:nonrecursive t)) (package! builtin-package-2 :recipe (:repo "myfork/package")) diff --git a/.config/doom/config.el b/.config/doom/config.el index 8bafa5d..2f2725f 100644 --- a/.config/doom/config.el +++ b/.config/doom/config.el @@ -732,3 +732,5 @@ and the contents of the files below the headlines." (interactive) (erc :server "irc.libera.chat" :port "6667")) + +(setq-default elfeed-search-filter "@1-week-ago +unread ") diff --git a/.config/doom/init.el b/.config/doom/init.el index ad68e17..2afe183 100644 --- a/.config/doom/init.el +++ b/.config/doom/init.el @@ -5,20 +5,20 @@ ;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's ;; documentation. There you'll find a link to Doom's Module Index where all -;; of our modules are listed, including what flags they support. +;; of our modules are listed" including what flags they support. ;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or ;; 'C-c c k' for non-vim users) to view its documentation. This works on ;; flags as well (those symbols that start with a plus). ;; -;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its +;; Alternatively" press 'gd' (or 'C-c c d') on a module to browse its ;; directory (for easy access to its source code). (doom! :input ;;bidi ; (tfel ot) thgir etirw uoy gnipleh ;;chinese ;;japanese - ;;layout ; auie,ctsrnm is the superior home row + ;;layout ; auie" ctsrnm is the superior home row :completion (company +childframe) ; the ultimate code completion backend @@ -38,40 +38,40 @@ indent-guides ; highlighted indent columns (ligatures +iosevka +extra) ; ligatures and symbols to make your code pretty again minimap ; show a map of the code on the side - modeline ; snazzy, Atom-inspired modeline, plus API + modeline ; snazzy" Atom-inspired modeline" plus API nav-flash ; blink cursor line after big motions - ;;neotree ; a project drawer, like NERDTree for vim + ;;neotree ; a project drawer" like NERDTree for vim ophints ; highlight the region an operation acts on (popup +defaults) ; tame sudden yet inevitable temporary windows ;;tabs ; a tab bar for Emacs - treemacs ; a project drawer, like neotree but cooler + treemacs ; a project drawer" like neotree but cooler unicode ; extended unicode support for various languages (vc-gutter +pretty) ; vcs diff in the fringe vi-tilde-fringe ; fringe tildes to mark beyond EOB ;;window-select ; visually switch windows - workspaces ; tab emulation, persistence & separate workspaces + workspaces ; tab emulation" persistence & separate workspaces ;;zen ; distraction-free coding or writing :editor - ;;(evil +everywhere); come to the dark side, we have cookies + ;;(evil +everywhere); come to the dark side" we have cookies file-templates ; auto-snippets for empty files fold ; (nigh) universal code folding (format +onsave) ; automated prettiness ;;god ; run Emacs commands without modifier keys - ;;lispy ; vim for lisp, for people who don't like vim + ;;lispy ; vim for lisp" for people who don't like vim ;;multiple-cursors ; editing in many places at once ;;objed ; text object editing for the innocent - ;;parinfer ; turn lisp into python, sort of + ;;parinfer ; turn lisp into python" sort of ;;rotate-text ; cycle region at point between text candidates snippets ; my elves. They type so I don't have to word-wrap ; soft wrapping with language-aware indent :emacs dired ; making dired pretty [functional] - electric ; smarter, keyword-based electric-indent + electric ; smarter" keyword-based electric-indent ;;ibuffer ; interactive buffer management - (undo +tree) ; persistent, smarter undo for your inevitable mistakes - vc ; version-control and Emacs, sitting in a tree + (undo +tree) ; persistent" smarter undo for your inevitable mistakes + vc ; version-control and Emacs" sitting in a tree :term ;;eshell ; the elisp shell that works everywhere @@ -88,12 +88,12 @@ ansible ;;biblio ; Writes a PhD for you (citation needed) ;;collab ; buffers with friends - debugger ; FIXME stepping through code, to help you add bugs + debugger ; FIXME stepping through code" to help you add bugs ;;direnv docker editorconfig ; let someone else argue about tabs vs spaces ;;ein ; tame Jupyter notebooks with emacs - (eval +overlay) ; run code, run (also, repls) + (eval +overlay) ; run code" run (also" repls) ;;gist ; interacting with github gists lookup ; navigate your code and its documentation lsp ; M-x vscode @@ -106,7 +106,7 @@ ;;taskrunner ; taskrunner for all your projects ;;terraform ; infrastructure as code ;;tmux ; an API for interacting with tmux - ;;tree-sitter ; syntax and parsing, sitting in a tree... + ;;tree-sitter ; syntax and parsing" sitting in a tree... ;;upload ; map local to remote projects via ssh/ftp :os @@ -118,10 +118,10 @@ ;;beancount ; mind the GAAP (cc +lsp) ; C > C++ == 1 (clojure +lsp) ; java with a lisp - common-lisp ; if you've seen one lisp, you've seen them all + common-lisp ; if you've seen one lisp" you've seen them all ;;coq ; proofs-as-programs ;;crystal ; ruby at the speed of c - ;;csharp ; unity, .NET, and mono shenanigans + ;;csharp ; unity" .NET" and mono shenanigans data ; config/data formats (dart +flutter) ; paint ui and not much else ;;dhall @@ -131,8 +131,8 @@ ;;erlang ; an elegant language for a more civilized age ;;ess ; emacs speaks statistics ;;factor - ;;faust ; dsp, but you get to keep your soul - ;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER) + ;;faust ; dsp" but you get to keep your soul + ;;fortran ; in FORTRAN" GOD is REAL (unless declared INTEGER) ;;fsharp ; ML stands for Microsoft's Language ;;fstar ; (dependent) types and (monadic) effects and Z3 gdscript ; the language you waited for @@ -144,8 +144,8 @@ json ; At least it ain't XML (java +lsp) ; the poster child for carpal tunnel syndrome (javascript +lsp) ; all(hope(abandon(ye(who(enter(here)))))) - (julia +lsp) ; a better, faster MATLAB - ;;kotlin ; a better, slicker Java(Script) + (julia +lsp) ; a better" faster MATLAB + ;;kotlin ; a better" slicker Java(Script) latex ; writing papers in Emacs has never been so fun ;;lean ; for folks with too much to prove ;;ledger ; be audit you can be @@ -157,7 +157,7 @@ (org +dragndrop +pandoc +pretty +gnuplot +roam2) ; organize your plain life in plain text php ; perl's insecure younger brother plantuml ; diagrams for confusing people more - ;;purescript ; javascript, but functional + ;;purescript ; javascript" but functional (python +lsp) ; beautiful is better than ugly ;;qt ; the 'cutest' gui framework ever ;;racket ; a DSL for DSLs @@ -166,16 +166,16 @@ ;;rst ; ReST in peace ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} ;;(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap() - ;;scala ; java, but good + ;;scala ; java" but good ;;(scheme +guile) ; a fully conniving family of lisps - (sh +lsp) ; she sells {ba,z,fi}sh shells on the C xor + (sh +lsp) ; she sells {ba" z" fi}sh shells on the C xor ;;sml ;;solidity ; do you need a blockchain? No. ;;swift ; who asked for emoji variables? ;;terra ; Earth and Moon in alignment for performance. (web +lsp) ; the tubes - yaml ; JSON, but readable - (zig +lsp) ; C, but simpler + yaml ; JSON" but readable + (zig +lsp) ; C" but simpler :email (mu4e +org +gmail) diff --git a/.config/xmonad/README.org b/.config/xmonad/README.org index f32f1bf..9e314b6 100644 --- a/.config/xmonad/README.org +++ b/.config/xmonad/README.org @@ -300,15 +300,12 @@ Emacs daemon for emacsclient. #+begin_src haskell spawnOnce "/usr/bin/emacs --daemon" #+end_src +***** Xscreensaver +#+begin_src haskell + spawnOnce "xscreensaver" +#+end_src *** Startup applications #+begin_src haskell - spawnOn "1" "firefox-developer-edition" - spawnOn "2" "evolution" - spawnOn "9" "steam" - spawnOn "3" "discord" - spawnOn "6" "google-chrome-stable" - spawnOn "e" "/usr/bin/emacsclient" - spawnOn "j" "keepassxc" #+end_src @@ -568,9 +565,10 @@ Notes: I use a ZSA Moonlander so a lot of the 4-5 key sequences are actually jus #+begin_src haskell , ("M-e", spawn "emacsclient -c -a 'emacs'") , ("M-", spawn "alacritty") - , ("M-S-", spawn "feh --randomize --bg-fill /usr/share/backgrounds/archlinux/*") + , ("M-S-", spawn "feh --recursive --randomize --bg-fill /mnt/ext1/media/Images/Wallpapers/*") , ("M-", spawn "dm-maim") , ("", spawn "flameshot gui") + , ("M-S-C-M1-s", spawn "xscreensaver-command -lock") #+end_src *** Keybindings for keyboard layout changes diff --git a/.config/xmonad/xmonad.hs b/.config/xmonad/xmonad.hs index e810bb7..2c13024 100644 --- a/.config/xmonad/xmonad.hs +++ b/.config/xmonad/xmonad.hs @@ -155,13 +155,9 @@ myStartupHook = do spawnOnce "/usr/bin/emacs --daemon" - spawnOn "1" "firefox-developer-edition" - spawnOn "2" "evolution" - spawnOn "9" "steam" - spawnOn "3" "discord" - spawnOn "6" "google-chrome-stable" - spawnOn "e" "/usr/bin/emacsclient" - spawnOn "j" "keepassxc" + spawnOnce "xscreensaver" + + myXmobarPP :: PP myXmobarPP = def @@ -194,7 +190,7 @@ myXmobarPP = def xmobar0 = statusBarProp "xmobar -x 0 ~/.config/xmobar/xmobarrc" (pure myXmobarPP) xmobar1 = statusBarProp "xmobar -x 1 ~/.config/xmobar/xmobarrc-no-trayer" (pure myXmobarPP) xmobar2 = statusBarProp "xmobar -x 2 ~/.config/xmobar/xmobarrc-no-trayer" (pure myXmobarPP) -xmobar3 = statusBarProp "xmobar -x 2 ~/.config/xmobar/xmobarrc-no-trayer" (pure myXmobarPP) +xmobar3 = statusBarProp "xmobar -x 3 ~/.config/xmobar/xmobarrc-no-trayer" (pure myXmobarPP) main :: IO () main = do @@ -341,9 +337,10 @@ main = do , ("M-e", spawn "emacsclient -c -a 'emacs'") , ("M-", spawn "alacritty") - , ("M-S-", spawn "feh --randomize --bg-fill /mnt/ext1/media/Images/Wallpapers/*") + , ("M-S-", spawn "feh --recursive --randomize --bg-fill /mnt/ext1/media/Images/Wallpapers/*") , ("M-", spawn "dm-maim") , ("", spawn "flameshot gui") + , ("M-S-C-M1-s", spawn "xscreensaver-command -lock") , ("M-j p", spawn "setxkbmap -model pc104 -layout pl -option compose:rctrl") , ("M-j g", spawn "setxkbmap -model pc104 -layout gr -option compose:rctrl")