darwin: use emacs ultra-scroll package if using macport
2 files changed, 37 insertions(+), 13 deletions(-)
M user/settings/darwin.nix → user/settings/darwin.nix
@@ -21,11 +21,43 @@ }; home.file.".hushlogin".text = ""; - programs.emacs.extraConfig = '' - (with-eval-after-load 'dired - (setq insert-directory-program "gls" - dired-use-ls-dired t)) - ''; + programs.emacs = + let + useMacPort = true; + in + { + package = if useMacPort then pkgs.emacs-macport else pkgs.emacs; + extraPackages = ( + epkgs: + lib.lists.optionals useMacPort [ + epkgs.ultra-scroll + ] + ); + + extraConfig = '' + (with-eval-after-load 'dired + (setq insert-directory-program "gls" + dired-use-ls-dired t)) + '' + + ( + if useMacPort then + '' + (use-package ultra-scroll + :config (progn + (setq scroll-conservatively 3 + scroll-margin 0) + (ultra-scroll-mode +1))) + + '' + else + '' + (use-package pixel-scroll + :config (progn + (setq pixel-scroll-precision-use-momentum t) + (pixel-scroll-precision-mode 1))) + '' + ); + }; programs.fish.plugins = map
M user/settings/emacs/post-init.el → user/settings/emacs/post-init.el
@@ -134,14 +134,6 @@ (add-hook 'evil-insert-state-entry-hook #'noct-absolute) (add-hook 'evil-insert-state-exit-hook #'noct-relative) -(use-package pixel-scroll - :ensure nil - :if (not ;; i.e. not emacs-macport - (or (eq window-system 'mac) - (bound-and-true-p mac-carbon-version-string))) - :config (progn - (setq pixel-scroll-precision-use-momentum t) - (pixel-scroll-precision-mode 1) )) ;;; Encoding