diff options
Diffstat (limited to 'oni/packages')
| -rw-r--r-- | oni/packages/emacs-config.scm | 113 | ||||
| -rw-r--r-- | oni/packages/emacs.scm | 92 | ||||
| -rw-r--r-- | oni/packages/utilities.scm | 2 |
3 files changed, 136 insertions, 71 deletions
diff --git a/oni/packages/emacs-config.scm b/oni/packages/emacs-config.scm index 6794a62..fd1bbd4 100644 --- a/oni/packages/emacs-config.scm +++ b/oni/packages/emacs-config.scm @@ -38,7 +38,7 @@ (define-public emacs-oni-config (let - ((commit "b3b63e7322acd6fe373454bf5c8a41a97f000938") + ((commit "09a4099586657170cbdcff071b2d0fac5ed133b7") (revision "0")) (package (name "emacs-oni-config") (version (git-version "0.0.1" revision commit)) @@ -52,7 +52,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0nj8gyzvajza2bsq20a2k1hljsmqw6a18l6bakff4d8l0wbmamzn")))) + "1lhn76r08b2zin45xjpzq60am8jw445s73b0yl4cdq107g0cbk0i")))) (build-system emacs-build-system) (home-page "https://code.ryuslash.org/emacs-config/") (synopsis "My Emacs configuration") @@ -311,7 +311,11 @@ Emacs"))) (inherit emacs-oni-config) (name "emacs-oni-yasnippet") (arguments - '(#:include '("oni-yasnippet.el"))) + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir-oni-yasnippet + (λ _ (chdir "oni-yasnippet")))) + #:include '("\\.el$" "^snippets\\/"))) (propagated-inputs `(("emacs-yasnippet" ,emacs-yasnippet) ("emacs-diminish" ,emacs-diminish))) @@ -323,15 +327,10 @@ Emacs"))) (inherit emacs-oni-config) (name "emacs-oni-bats") (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'chdir-oni-bats - (λ _ (chdir "oni-bats")))) - #:include '("\\.el$" "^snippets\\/bats-mode\\/"))) + '(#:include '("\\.el$"))) (propagated-inputs `(("emacs-bats" ,emacs-bats) ("emacs-oni-sh" ,emacs-oni-sh) - ("emacs-oni-yasnippet" ,emacs-oni-yasnippet) ("bats" ,bats))) (synopsis "My Emacs Bats coding configuration") (description "This package provides my configuration for coding in Bats"))) @@ -346,15 +345,13 @@ Emacs"))) (add-after 'unpack 'chdir-oni-org (λ _ (chdir "oni-org")))) #:include '("\\.el$" - "^snippets\\/org-mode\\/" "^capture-templates\\/" "^icons\\/") ;; The default #:emacs (emacs-minimal) doesn't include `range.el' and ;; throws an error while trying to byte-compile oni-org. #:emacs ,emacs)) (propagated-inputs - (list emacs-oni-yasnippet - emacs-oni-hydra + (list emacs-oni-hydra my-emacs-org-roam emacs-org emacs-org-contrib @@ -429,14 +426,9 @@ Emacs"))) (inherit emacs-oni-config) (name "emacs-oni-python") (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'chdir-oni-python - (λ _ (chdir "oni-python")))) - #:include '("\\.el$" "^snippets\\/python-mode\\/"))) + '(#:include '("oni-python\\.el$"))) (propagated-inputs - (list emacs-oni-yasnippet - emacs-oni-company + (list emacs-oni-company emacs-oni-flycheck emacs-oni-hydra emacs-oni-lsp @@ -521,14 +513,7 @@ Emacs"))) (inherit emacs-oni-config) (name "emacs-oni-conf") (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'chdir-oni-conf - (λ _ (chdir "oni-conf")))) - #:include '("\\.el$" - "^snippets\\/conf-mode\\/"))) - (propagated-inputs - `(("emacs-oni-yasnippet" ,emacs-oni-yasnippet))) + '(#:include '("oni-conf\\.el$"))) (synopsis "My Emacs Conf mode configuration") (description "This pakcage provides my configuation for Conf mode"))) @@ -562,16 +547,11 @@ Emacs"))) (inherit emacs-oni-config) (name "emacs-oni-csharp") (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'chdir-oni-csharp - (λ _ (chdir "oni-csharp")))) - #:include '("\\.el$" "^snippets\\/"))) + '(#:include '("oni-csharp\\.el$"))) (propagated-inputs `(("emacs-csharp-mode" ,emacs-csharp-mode) ("emacs-oni-company" ,emacs-oni-company) ("emacs-oni-flycheck" ,emacs-oni-flycheck) - ("emacs-oni-yasnippet" ,emacs-oni-yasnippet) ("emacs-oni-hydra" ,emacs-oni-hydra) ("emacs-oni-lsp" ,emacs-oni-lsp) ("emacs-oni-smartparens" ,emacs-oni-smartparens))) @@ -583,16 +563,11 @@ Emacs"))) (inherit emacs-oni-config) (name "emacs-oni-css") (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'chdir-oni-css - (λ _ (chdir "oni-css")))) - #:include '("\\.el$" "^snippets\\/"))) + '(#:include '("oni-css\\.el$"))) (propagated-inputs `(("emacs-oni-company" ,emacs-oni-company) ("emacs-oni-hydra" ,emacs-oni-hydra) - ("emacs-rainbow-mode" ,emacs-rainbow-mode) - ("emacs-oni-yasnippet" ,emacs-oni-yasnippet))) + ("emacs-rainbow-mode" ,emacs-rainbow-mode))) (synopsis "My Emacs CSS configuration") (description "This package provides my configuration for writing CSS."))) @@ -612,16 +587,11 @@ Emacs"))) (inherit emacs-oni-config) (name "emacs-oni-elisp") (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'chdir-oni-elisp - (λ _ (chdir "oni-elisp")))) - #:include '("\\.el$" "^snippets\\/"))) + '(#:include '("oni-elisp\\.el$"))) (propagated-inputs `(("emacs-oni-company" ,emacs-oni-company) ("emacs-oni-flycheck" ,emacs-oni-flycheck) ("emacs-oni-paredit" ,emacs-oni-paredit) - ("emacs-oni-yasnippet" ,emacs-oni-yasnippet) ("emacs-oni-hydra" ,emacs-oni-hydra) ("emacs-rainbow-delimiters" ,emacs-rainbow-delimiters) ("emacs-nameless" ,emacs-nameless) @@ -678,7 +648,6 @@ Emacs"))) (propagated-inputs (list emacs-hy-mode emacs-oni-paredit - emacs-oni-yasnippet emacs-rainbow-delimiters)) (synopsis "My Hy configuration") (description "This package provides my configuration for Hy."))) @@ -741,7 +710,7 @@ Emacs"))) (arguments '(#:include '("oni-epub\\.el$"))) (propagated-inputs - (list emacs-nov-el)) + (list emacs-nov)) (synopsis "My configuration for reading ePub files") (description "This package provides my configuration for reading ePub files."))) @@ -795,13 +764,7 @@ Emacs"))) (inherit emacs-oni-config) (name "emacs-oni-html") (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'chdir-oni-html - (λ _ (chdir "oni-html")))) - #:include '("\\.el$" "^snippets\\/"))) - (propagated-inputs - (list emacs-oni-yasnippet)) + '(#:include '("oni-html\\.el$"))) (synopsis "My HTML configuration") (description "This package provides my configuration for HTML."))) @@ -865,14 +828,9 @@ Emacs"))) (inherit emacs-oni-config) (name "emacs-oni-nxml") (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'chdir-oni-nxml - (λ _ (chdir "oni-nxml")))) - #:include '("\\.el$" "^snippets\\/"))) + '(#:include '("oni-nxml\\.el$"))) (propagated-inputs - (list emacs-oni-yasnippet - emacs-reformatter)) + (list emacs-reformatter)) (synopsis "My XML configuration") (description "This package provides my configuration for writing XML."))) @@ -970,12 +928,11 @@ Emacs"))) (modify-phases %standard-phases (add-after 'unpack 'chdir-oni-php (λ _ (chdir "oni-php")))) - #:include '("\\.el$" "^snippets\\/" "^scripts\\/"))) + #:include '("\\.el$" "^scripts\\/"))) (propagated-inputs (list emacs-php-mode - emacs-oni-yasnippet emacs-oni-flycheck - emacs-oni-company + emacs-oni-corfu emacs-oni-hydra emacs-ggtags emacs-fic-mode @@ -1053,3 +1010,29 @@ Emacs"))) (list emacs-logview)) (description "This package provides my configuration for logview mode."))) + +(define-public emacs-oni-dumb-jump + (package + (inherit emacs-oni-config) + (name "emacs-oni-dumb-jump") + (arguments + '(#:include '("oni-dumb-jump\\.el$"))) + (synopsis "My configuration for dumb-jump") + (propagated-inputs + (list emacs-dumb-jump)) + (description + "This package provides my configuration for dumb-jump"))) + +(define-public emacs-oni-corfu + (package + (inherit emacs-oni-config) + (name "emacs-oni-corfu") + (arguments + '(#:include '("oni-corfu\\.el$"))) + (synopsis "My configuration for corfu") + (propagated-inputs + (list emacs-corfu + emacs-cape + emacs-oni-prescient)) + (description + "This package provides my configuration for corfu."))) diff --git a/oni/packages/emacs.scm b/oni/packages/emacs.scm index 105a855..5629998 100644 --- a/oni/packages/emacs.scm +++ b/oni/packages/emacs.scm @@ -610,7 +610,7 @@ dot-separated path form like @code{jobs.build.docker} and (license license:gpl3)))) (define-public emacs-yoshi-theme - (let ((commit "6e436a34cc56a73eec49f8d5f8fbcfcaa5cae808") + (let ((commit "dc7b512dbe29db8f61f1485dad4213f5c5fd2669") (revision "0")) (package (name "emacs-yoshi-theme") @@ -623,7 +623,7 @@ dot-separated path form like @code{jobs.build.docker} and (method git-fetch) (file-name (git-file-name name version)) (sha256 - (base32 "1xidzl08sf2hndd7jazc1f5b9gwnbasq7p5901bbbnr898b7r407")))) + (base32 "0qjcqrj1k8mlkjlahjn83l7hq76dmjvn1n9xnj0rz3drk114wxb0")))) (build-system emacs-build-system) (arguments `(#:include '("icons/*" . ,%default-include))) @@ -843,7 +843,7 @@ flycheck-phpstan) (flycheck-mode t)) (add-hook php-mode-hook my-php-mode-setup). (license #f))) (define-public emacs-org-mem - (let ((commit "0a33650ccb79c9bd49d7598fbb8f09beb2153350") + (let ((commit "07094dac902e452d59533e4d01e8177afaa0cfd1") (revision "0")) (package (name "emacs-org-mem") @@ -856,9 +856,12 @@ flycheck-phpstan) (flycheck-mode t)) (add-hook php-mode-hook my-php-mode-setup). (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "0jrisa0w6khiv2mndhyrr0yjsg191yix4gpj2g57nvp80l3xbnbl")))) + (base32 "09c2s9yz3288g0z66wxqhhk7nwwqri7wgprk3k9h41l0l2hswssc")))) (build-system emacs-build-system) - (propagated-inputs (list emacs-el-job emacs-emacsql emacs-llama)) + (propagated-inputs (list emacs-el-job + emacs-emacsql + emacs-llama + emacs-truename-cache)) (home-page "https://github.com/meedstrom/org-node") (synopsis "Cache metadata on all Org files") (description @@ -1019,3 +1022,82 @@ enabled.") (synopsis "Emacs major mode for Vue based on Tree-sitter") (description "Emacs major mode for Vue based on Tree-sitter") (license license:gpl3+)))) + +(define-public emacs-stillness-mode + (package + (name "emacs-stillness-mode") + (version "20250307.1608") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/neeasade/stillness-mode.el") + (commit "05029febdb451941ed218e6ddbef5294776e31d4"))) + (file-name (git-file-name name version)) + (sha256 + (base32 "06gj5fjjq922fafn2wi8i0c6sx3s95zi17crmgv2dy0k1f4ljvkz")))) + (build-system emacs-build-system) + (propagated-inputs (list emacs-dash)) + (home-page "https://github.com/neeasade/stillness-mode.el") + (synopsis "Prevent windows from jumping on minibuffer activation") + (description + "stillness-mode is a minor mode that prevents Emacs from scrolling the main +editing window when a multi-line minibuffer appears. It automatically adjusts +point just enough so that Emacs doesn't force a jump in the visible buffer.") + (license license:expat))) + +(define-public emacs-related-files + (package + (name "emacs-related-files") + (version "20230903.851") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/DamienCassou/related-files") + (commit "8020f375013d5e83c9b8117d118d2402c63e66bb"))) + (file-name (git-file-name name version)) + (sha256 + (base32 "09czvj7rcvcb8h6fh6f2i1fiwk0ghg7n0lx1xppnf9yvwpdxld1s")))) + (build-system emacs-build-system) + (arguments + '(#:tests? #f)) + (home-page "https://www.gnu.org/software/emacs/") + (synopsis "Easily find files related to the current one") + (description + "Thousands times a day you want to jump from a file to its test file (or to its +CSS file, or to its header file, or any other related file) and just as many +times you want to go back to the initial file. Jumping to related files is what +this package is about. The question is: how does a user specify that a file is +related to a set of other files? One way is to create a function that takes a +file as argument and returns a list of related filenames: (defun +my/related-files-jumper (file) (let ((without-ext (file-name-sans-extension +file))) (list (concat without-ext \".js\") (concat without-ext \".css\")))) (setq +related-files-jumpers (list #'my/related-files-jumper)) `my/related-files-jumper +is called a jumper. With this setup, `related-files-jump will let the user jump +from Foo.js to Foo.css and back. This is working good but has several +limitations: 1. If Foo.css is not in the same directory as Foo.js or if you +want to include test files which end with \"-tests.js\", `my/related-files-jumper +has to be modified in a non-obvious way or a complicated new jumper must be +written and added to `related-files-jumpers'; 2. The function +`my/related-files-jumper has to be shared with all Emacs users working on the +same project So related-files recommends another approach that is less powerful +but much simpler. Here is another way to define the same jumper: (recipe +:remove-suffix \".js\" :add-suffix \".css\") This list must replace +`my/related-files-jumper in `related-files-jumpers'. This jumper lets the user +go from Foo.js to Foo.css. related-files will automatically inverse the meaning +of :remove-suffix and :add-suffix arguments so the user can also go from Foo.css +to Foo.js with this jumper. See `related-files-jumpers and THE MANUAL (TODO) +for more information. This kind of jumper can easily be shared with the members +of a team through a .dir-locals.el file. See (info \"(Emacs) Directory +Variables\"). `related-files-make also makes it easy to create a related file and +fill it with some content. If the content is always the same, a string can be +used to specify it: (recipe :remove-suffix \".js\" :add-suffix \".css\" :filler +\"Fill the CSS file\") There is also an `auto-insert'-based way to fill new files +and new kinds of fillers can easily be implemented. See the manual for more +information. If you want to add a new kind of jump, override +`related-files-apply and optionally `related-files-get-filler', call +`related-files-add-jumper-type and add a function to +`related-files-jumper-safety-functions'. If you want to add a new kind of +filler, override `related-files-fill and call `related-files-add-filler-type'.") + (license license:gpl3+))) diff --git a/oni/packages/utilities.scm b/oni/packages/utilities.scm index 9b2cafa..d4d6633 100644 --- a/oni/packages/utilities.scm +++ b/oni/packages/utilities.scm @@ -24,7 +24,7 @@ (base32 "1w35wqw9y77gcx7rcc74b0f7n0vjk4yh8xicjkfc5by5vzffrhc6")) (file-name (git-file-name name version)))) (propagated-inputs - (list guile-3.0 guile-inkplate)) + (list guile-3.0-latest guile-inkplate)) (build-system gnu-build-system) (arguments `(#:tests? #f |
