diff --git a/modules/emacs.nix b/modules/emacs.nix index e853b3b..474e91e 100644 --- a/modules/emacs.nix +++ b/modules/emacs.nix @@ -19,6 +19,9 @@ with lib; melpaPackages.dired-sidebar chatgpt-shell denote + geiser-guile + flymake-guile + flycheck-guile denote-refs command-log-mode all-the-icons diff --git a/pkgs/base-packages.nix b/pkgs/base-packages.nix index 6cde130..be0b6f8 100644 --- a/pkgs/base-packages.nix +++ b/pkgs/base-packages.nix @@ -15,6 +15,12 @@ ollama ledger recutils + guile + guile-sqlite3 + guile-config + guile-sjson + guile-json + guile-lib # unrar p7zip zip diff --git a/scripts/zoomg b/scripts/zoomg new file mode 100755 index 0000000..6a2fe77 --- /dev/null +++ b/scripts/zoomg @@ -0,0 +1,36 @@ +#!/usr/bin/env -S guile -s +!# +(use-modules (ice-9 rdelim) + (ice-9 string-fun)) + +(define hypr-sig (getenv "HYPRLAND_INSTANCE_SIGNATURE")) +(define sock (socket 1 1 0)) +(connect sock AF_UNIX (string-concatenate `("/tmp/hypr/" ,hypr-sig "/.socket.sock"))) + +(define get-zoom-cmd "/getoption misc:cursor_zoom_factor") + +(define (send msg) + (display msg sock)) + +(define (set-zoom amount) + (send (string-concatenate `("/keyword misc:cursor_zoom_factor " ,(number->string amount))))) + +(send get-zoom-cmd) + +(define zoom + (do ((line (read-line sock) (read-line sock))) + ((eof-object? line)) + (when (string-contains line "float") + (+ (string->number + (string-trim (string-replace-substring line "float: " " "))) + 0.1)))) + +(display zoom) + +(do ((line (read-line sock) (read-line sock))) + ((eof-object? line)) + (display line) + (newline)) + +(close sock) +