[user] name = "Leah Neukirchen" email = "leah@vuxu.org" [ui] # color = "never" default-command = ["log", "-r", "default"] pager = "less -FRX" [ui.graph] style = "ascii" [git] subprocess = true [diff] format = "git" [snapshot] auto-track = "none()" [aliases] add = ["file", "track"] leg = ["log", "-T", "builtin_log_oneline"] lg = ["log", "--no-graph", "-T", 'separate(" ",committer.timestamp().format("%Y-%m-%d"),commit_id.shortest(7),if(bookmarks,"(" ++ bookmarks ++ ")"),if(tags,"(tag: " ++ tags ++")"),if(empty,""),description.first_line())++"\n"'] top = ["log", "--ignore-working-copy", "-r", 'latest(bookmarks() & ::@)', "--no-graph", "-T", 'separate(",",bookmarks)'] head = ["log", "--ignore-working-copy", "-T", 'commit_id++"\n"', "-r", "@-", "--no-graph"] logp = ["log", "--no-graph", "--patch", "--git", "-T", "log_full"] tug = ["bookmark", "move", "--from", "heads(::@- & bookmarks())", "--to", "@-"] prompt = ["log", "--ignore-working-copy", "--color", "never", "-r", "@", "--no-graph", "-T", 'if(empty,":"++parents.map(|c|if(c.local_bookmarks(),c.local_bookmarks().join("&"),c.change_id().shortest())).join("&"),if(local_bookmarks,local_bookmarks.join("&"),change_id.shortest()))'] [revsets] log = '..@' [revset-aliases] default = 'present(@) | ancestors(immutable_heads().., 2) | present(trunk())' [merge-tools.meld] edit-args = ["--newtab", "$left", "$right"] [merge-tools.ediff] program = 'sh' merge-args = ['-c', 'emacsclient -c --eval "(ediff-merge-files-with-ancestor \"$0\" \"$1\" \"$2\" nil \"$3\")"', '$left', '$right', '$base', '$output'] [template-aliases] log_full = ''' concat( "\n", "commit " ++ commit_id ++ "\n", "Change-ID: " ++ change_id ++ "\n", surround("Bookmarks: ", "\n", separate(" ", local_bookmarks, remote_bookmarks)), surround("Tags: ", "\n", tags), "Author: " ++ format_full_signature(author) ++ "\n", "Date: " ++ format_full_timestamp(author.timestamp()) ++ "\n", if(author.email().contains(committer.email()) && committer.email().contains(author.email()), "", "Committer: " ++ format_full_signature(committer) ++ "\n" ++ "CommitDate: " ++ format_full_timestamp(committer.timestamp()) ++ "\n" ), "\n", indent(" ", coalesce(description, label(if(empty, "empty"), description_placeholder) ++ "\n")), "\n", ) ''' 'format_full_timestamp(timestamp)' = 'timestamp.local().format("%a %b %d %H:%M:%S %Y %z")' 'format_full_signature(signature)' = 'coalesce(signature.name(), name_placeholder) ++ " <" ++ coalesce(signature.email(), "@") ++ ">"' # no seconds needed 'format_timestamp(timestamp)' = 'timestamp.local().format("%Y-%m-%d %H:%M")' prompt = ''' separate(" ", bookmarks.map(|x| if( x.name().substr(0, 10).starts_with(x.name()), x.name().substr(0, 10), x.name().substr(0, 9) ++ "…") ).join(" "), tags.map(|x| if( x.name().substr(0, 10).starts_with(x.name()), x.name().substr(0, 10), x.name().substr(0, 9) ++ "…") ).join(" "), surround("\"","\"", if( description.first_line().substr(0, 24).starts_with(description.first_line()), description.first_line().substr(0, 24), description.first_line().substr(0, 23) ++ "…" ) ), change_id, commit_id, if(empty, "(empty)"), if(conflict, "(conflict)"), if(divergent, "(divergent)"), if(hidden, "(hidden)"), ) ''' [colors] "error" = { fg = "default", bold = true } "error_source" = { fg = "default" } "warning" = { fg = "default", bold = true } "hint" = { fg = "default" } "error heading" = { fg = "red", bold = true } "error_source heading" = { bold = true } "warning heading" = { fg = "default", bold = true } "hint heading" = { fg = "default", bold = true } "conflict_description" = "default" "conflict_description difficult" = "default" "commit_id" = "default" "change_id" = "default" # Unique prefixes and the rest for change & commit ids "prefix" = { underline = true, bold = false } "rest" = "default" "divergent rest" = "default" "divergent prefix" = { fg = "default", underline = true } "hidden prefix" = "default" "author" = "default" "committer" = "default" "timestamp" = "default" "working_copies" = "default" "bookmark" = { fg = "default", bold = true } "bookmarks" = { fg = "default", bold = true } "local_bookmarks" = { fg = "default", bold = true } "remote_bookmarks" = { fg = "default", bold = true } "tag" = { fg = "default", bold = true } "tags" = { fg = "default", bold = true } "git_refs" = { fg = "default", bold = true } "git_head" = { fg = "default", bold = true } "divergent" = { fg = "default", bold = true } "divergent change_id" = { fg = "default", bold = true } "conflict" = { fg = "default", bold = true } "empty" = { fg = "bright black" } "placeholder" = "default" "description placeholder" = "default" "empty description placeholder" = "default" "separator" = "default" "elided" = "default" "root" = "default" "username" = "default" "email" = "default" "working_copy" = { bold = false } "working_copy commit_id" = "default" "working_copy change_id" = { fg = "default", bold = true } "working_copy change_id prefix" = { fg = "default", bold = true } "working_copy author" = "default" "working_copy committer" = "default" "working_copy timestamp" = "default" "working_copy working_copies" = "default" "working_copy bookmark" = { fg = "default", bold = true } "working_copy bookmarks" = { fg = "default", bold = true } "working_copy local_bookmarks" = { fg = "default", bold = true } "working_copy remote_bookmarks" = { fg = "default", bold = true } "working_copy tag" = { fg = "default", bold = true } "working_copy tags" = { fg = "default", bold = true } "working_copy git_refs" = { fg = "default", bold = true } "working_copy divergent" = { fg = "default", bold = true } "working_copy divergent change_id" = { fg = "default", bold = true } "working_copy conflict" = { fg = "default", bold = true } "working_copy empty" = { fg = "bright black" } "working_copy placeholder" = { fg = "bright black" } "working_copy description placeholder" = { fg = "bright black" } "working_copy empty description placeholder" = { fg = "bright black" } "working_copy username" = "default" "working_copy email" = "default" "config_list name" = "default" "config_list value" = "default" "config_list overridden" = { fg = "default", bold = true } "config_list overridden name" = "default" "config_list overridden value" = "default" "diff header" = "default" "diff empty" = "default" "diff binary" = "default" "diff file_header" = "default" "diff hunk_header" = "default" "diff removed" = { fg = "default" } "diff added" = { fg = "default" } "diff token" = "default" "diff modified" = "default" "diff renamed" = "default" "diff copied" = "default" "diff access-denied" = { bg = "red" } "operation id" = "default" "operation user" = "default" "operation time" = "default" "operation current_operation" = { bold = true } "operation current_operation id" = "default" "operation current_operation user" = "default" "operation current_operation time" = "default" "node elided" = "default" "node working_copy" = { fg = "green", bold = true } "node current_operation" = { fg = "green", bold = true } "node immutable" = "default" "node conflict" = { fg = "red", bold = true }