unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
blob 2cdb6ea28d7c9b609217492615c95d3f8584b610 1014 bytes (raw)
name: etc/snippets/text-mode/guix-commit-message-update-package 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
# -*- mode: snippet -*-
# name: guix-commit-message-update-package
# key: update
# condition: git-commit-mode
# --

gnu: ${1:`(with-temp-buffer
           (magit-git-wash #'magit-diff-wash-diffs
             "diff" "--staged")
           (beginning-of-buffer)
           (when (search-forward "(define-public " nil 'noerror)
             (thing-at-point 'sexp 'no-properties)))`}: Update to ${2:`(with-temp-buffer
    (magit-git-wash #'magit-diff-wash-diffs
      "diff" "--staged")
    (beginning-of-buffer)
    (search-forward "name" nil 'noerror)
    (search-forward "+" nil 'noerror)   ; first change
    (when (and (search-forward "version " nil 'noerror)
               (looking-at-p "\""))
      (let ((end (save-excursion (search-forward "\")" nil 'noerror))))
        (when end
          (forward-char)
          (buffer-substring-no-properties (point) (- end 2))))))`}.

* `(car (magit-staged-files))` ($1): Update to $2.$0
`(mapconcat (lambda (file) (concat "* " file)) (cdr (magit-staged-files)) "\n")`

debug log:

solving 2cdb6ea28d7c9b609217492615c95d3f8584b610 ...
found 2cdb6ea28d7c9b609217492615c95d3f8584b610 in https://git.savannah.gnu.org/cgit/guix.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).