jj: Change oneline and summary log template

Summary logs are changed to a little nicer presentation (from --summary
to 'builtin_log_compact_full_description' template).

Oneline logs have a changed order. Keep the revID as first thing, but
then show bookmarks/tags/head and descriptions. Only afterwards
show email, timesatmp, commitID since I am less interested in them
generally when viewing oneline commits (to get an overview of the last
changes and my current position).
This commit is contained in:
Marty Oehme 2025-02-28 14:04:41 +01:00
parent 2627055e7c
commit 749cedb162
Signed by: Marty
GPG key ID: 4E535BC19C61886E
3 changed files with 35 additions and 102 deletions

View file

@ -20,6 +20,7 @@ pager = "delta"
format = "git" # for the time being to use delta well
[templates]
# Add git diffs to commit drafts
draft_commit_description = '''
concat(
description,
@ -32,6 +33,38 @@ concat(
)
'''
[template-aliases]
# Changed order of normal oneliner around:
# keep revID, but then first thing bookmarks/tags/head and descriptions
# only afterwards show email, timesatmp, commitID since I am less interested
builtin_log_oneline = '''
if(root,
format_root_commit(self),
label(if(current_working_copy, "working_copy"),
concat(
separate(" ",
format_short_change_id_with_hidden_and_divergent_info(self),
if(conflict, label("conflict", "conflict")),
bookmarks,
tags,
if(git_head, label("git_head", "git_head()")),
if(description,
description.first_line(),
label(if(empty, "empty"), description_placeholder),
),
if(author.email(), author.email().local(), email_placeholder),
format_timestamp(commit_timestamp(self)),
working_copies,
format_short_commit_id(commit_id),
if(config("ui.show-cryptographic-signatures").as_boolean(),
format_short_cryptographic_signature(signature)),
if(empty, label("empty", "(empty)")),
) ++ "\n",
),
)
)
'''
[revsets]
log = "ancestors(@, 5) | ancestors(trunk()..(visible_heads() & mine()), 2) | trunk()"

View file

@ -51,8 +51,8 @@ alias jab="jj abandon"
alias J="jj log -r 'all()'" # mirror default command being log
alias jl="jj log -T builtin_log_oneline"
alias JL="jj log -T builtin_log_oneline -r 'all()'"
alias jlo="jj log --summary"
alias JLO="jj log --summary -r 'all()'"
alias jlo="jj log --summary -T builtin_log_compact_full_description"
alias JLO="jj log --summary -T builtin_log_compact_full_description -r 'all()'"
alias jloo="jj log --patch"
alias JLOO="jj log --patch -r 'all()'"
alias jol="jj op log"