Variable: vc-jj-root-log-format

vc-jj-root-log-format is a customizable variable defined in vc-jj.el.

Value

("\nif(root,\n  format_root_commit(self),\n  label(if(current_working_copy, \"working_copy\"),\n    concat(\n      separate(\" \",\n        change_id ++ \"​\" ++ change_id.shortest(8).prefix() ++ \"​\" ++ change_id.shortest(8).rest(),\n        if(author.name(), author.name(), if(author.email(), author.email().local(), email_placeholder)),\n        commit_timestamp(self).format(\"%Y-%m-%d\"),\n        bookmarks,\n        tags,\n        working_copies,\n        if(git_head, label(\"git_head\", \"git_head()\")),\n        format_short_commit_id(commit_id),\n        if(conflict, label(\"conflict\", \"conflict\")),\n        if(config(\"ui.show-cryptographic-signatures\").as_boolean(),\n          format_short_cryptographic_signature(signature)),\n        if(empty, label(\"empty\", \"(empty)\")),\n        if(description,\n          description.first_line(),\n          label(if(empty, \"empty\"), description_placeholder),\n        ),\n      ) ++ \"\n\",\n    ),\n  )\n)"
 "^.+? \\([K-Zk-z]+\\)[[:space:]]\\([K-Zk-z]+\\)[[:space:]]\\([K-Zk-z]+\\) \\(.*\\) \\([[:digit:]]\\{4\\}-[[:digit:]]\\{2\\}-[[:digit:]]\\{2\\}\\)\\(.*?\\) \\([[:xdigit:]]+\\) \\(\\(?:conflict \\)?\\)\\(\\(?:(empty) \\)?\\)\\(\\(?:(no description set)\\)?\\).*$"
 ((1 '(face nil invisible t)) (2 'log-view-message)
  (3 'change-log-list) (4 'change-log-name) (5 'change-log-date)
  (6 'vc-jj-log-view-bookmark) (7 'vc-jj-log-view-commit)
  (8 'vc-conflict-state) (9 'change-log-function)
  (10 'change-log-function)))

Documentation

JJ log format for vc-print-root-log.

This option determines the format and fontification of the JJ Log View buffer created from vc-print-root-log.

It should be a list of the form (FORMAT REGEXP KEYWORDS), where FORMAT is a format string (a JJ template passed to "jj log"), REGEXP is a regular expression matching a single entry in the "jj log" output, and KEYWORDS is a list of font lock keywords (see font-lock-keywordsand (elisp) Search-based Fontification) for highlighting the Log View buffer.

REGEXP may define capture groups that KEYWORDS can use to fontify various regions of the Log View buffer.

Source Code

;; Defined in /nix/store/j1ql1qsv99iszr5pqf5fk9yfcl5pq4nv-emacs-packages-deps/share/emacs/site-lisp/elpa/vc-jj-0.5/vc-jj.el
(defcustom vc-jj-root-log-format
  (list
   ;; Log format (passed as the template for "jj log")
   "
if(root,
  format_root_commit(self),
  label(if(current_working_copy, \"working_copy\"),
    concat(
      separate(\" \",
        change_id ++ \"​\" ++ change_id.shortest(8).prefix() ++ \"​\" ++ change_id.shortest(8).rest(),
        if(author.name(), author.name(), if(author.email(), author.email().local(), email_placeholder)),
        commit_timestamp(self).format(\"%Y-%m-%d\"),
        bookmarks,
        tags,
        working_copies,
        if(git_head, label(\"git_head\", \"git_head()\")),
        format_short_commit_id(commit_id),
        if(conflict, label(\"conflict\", \"conflict\")),
        if(config(\"ui.show-cryptographic-signatures\").as_boolean(),
          format_short_cryptographic_signature(signature)),
        if(empty, label(\"empty\", \"(empty)\")),
        if(description,
          description.first_line(),
          label(if(empty, \"empty\"), description_placeholder),
        ),
      ) ++ \"\n\",
    ),
  )
)"
   ;; Log entry regexp
   (rx
    line-start
    ;; Graph
    (+? nonl) " "
    ;; Full change ID
    (group (+ (any "K-Zk-z")))
    space
    ;; Visible change ID
    (group (+ (any "K-Zk-z")))
    space
    (group (+ (any "K-Zk-z")))
    " "
    ;; Author
    (group (* nonl)) " "
    ;; Time
    (group (= 4 (any num)) "-" (= 2 (any num)) "-" (= 2 (any num)))
    ;; Tags and  bookmarks
    (group (*? nonl)) " "
    ;; Commit ID
    (group (+ (any hex))) " "
    ;; Special states
    (group (opt "conflict "))
    (group (opt "(empty) "))
    (group (opt "(no description set)"))
    ;; Description
    (* nonl) line-end)
   ;; Font lock keywords
   '((1 '(face nil invisible t))        ; Full change ID
     (2 'log-view-message)              ; Short change ID
     (3 'change-log-list)               ; Rest of Change ID
     (4 'change-log-name)               ; Author name
     (5 'change-log-date)               ; Date
     (6 'vc-jj-log-view-bookmark)       ; Bookmark names
     (7 'vc-jj-log-view-commit)         ; Commit ID
     (8 'vc-conflict-state)             ; Conflict marker
     (9 'change-log-function)           ; No description marker
     (10 'change-log-function)))        ; Revision description
  "JJ log format for `vc-print-root-log'.
This option determines the format and fontification of the JJ Log View
buffer created from `vc-print-root-log'.

It should be a list of the form (FORMAT REGEXP KEYWORDS), where FORMAT
is a format string (a JJ template passed to \"jj log\"), REGEXP is a
regular expression matching a single entry in the \"jj log\" output, and
KEYWORDS is a list of font lock keywords (see
`font-lock-keywords'and `(elisp) Search-based Fontification') for
highlighting the Log View buffer.

REGEXP may define capture groups that KEYWORDS can use to fontify
various regions of the Log View buffer."
  :type '(list string regexp (repeat sexp)))