jesseduffield.lazygit/pkg/integration/tests/branch
Stefan Haller 35d3659cce Use more widely-supported Unicode symbols for the commit graph
The commit graph used '⏣' (U+23E3 BENZENE RING WITH CIRCLE) for merge
commits and '◯' (U+25EF LARGE CIRCLE) for regular commits. Both have
very poor coverage in popular monospace fonts:

- '⏣' lives in the Misc Technical block and is essentially absent from
  every common monospace font (Source Code Pro, JetBrains Mono, Fira
  Code, Cascadia Code, Hack, Iosevka, Menlo, Consolas, Monaco, IBM
  Plex Mono, Ubuntu Mono, Noto Sans Mono, Inconsolata). It is always
  drawn from a system fallback font.
- '◯' is the late-addition LARGE CIRCLE codepoint. It is present in
  some fonts (Cascadia, Fira Code, Hack, Iosevka, Menlo, Noto Sans
  Mono) but missing from many others, including Source Code Pro and
  most Nerd Font derivatives based on it.

This is why the graph renders inconsistently across platforms even
when the same monospace font is configured: each OS picks a different
fallback font (Apple Symbols on macOS, Segoe UI Symbol on Windows,
Noto/DejaVu/Symbola on Linux), and the substituted glyphs differ in
shape, weight, and advance width. '◯' is also East Asian Ambiguous
width, so some terminals render it wider than one cell, exaggerating
the misalignment.

Replace the symbols with codepoints from the foundational 1991
Geometric Shapes block, which has far broader font coverage:

- Merge: '◎' U+25CE BULLSEYE -- concentric circles, the visually
  closest cousin to the previous benzene-ring glyph.
- Commit: '○' U+25CB WHITE CIRCLE -- the same hollow-circle silhouette
  as before, just a more universally available codepoint.

The new symbols are present in the font directly in significantly
more cases; and when fallback is still required, they are universally
well-drawn (unlike '⏣', which many fallback fonts also lack).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-04 13:06:29 +02:00
..
checkout_autostash.go Add integration tests for checkout/new branch with autostash 2024-09-03 09:05:53 +02:00
checkout_by_name.go Fix unstable tests 2025-07-09 16:00:46 +02:00
checkout_previous_branch.go Add new command "Checkout previous branch" 2025-07-12 18:17:25 +02:00
create_tag.go Better tag creation UX 2023-07-22 14:36:35 +10:00
delete.go Fix unstable tests 2025-07-09 16:00:46 +02:00
delete_multiple.go Move LocalBranchSortOrder and RemoteBranchSortOrder to user config 2025-07-09 13:15:03 +02:00
delete_remote_branch_when_tag_with_same_name_exists.go Fix deleting a remote branch when a remote tag with the same name exists 2025-11-27 19:51:24 +01:00
delete_remote_branch_with_credential_prompt.go More explicit test of status panel content 2024-06-03 13:02:46 +02:00
delete_remote_branch_with_different_name.go Fix bug with deleting remote branch whose name doesn't match local branch 2024-09-28 11:19:32 +02:00
delete_while_filtering.go Move LocalBranchSortOrder and RemoteBranchSortOrder to user config 2025-07-09 13:15:03 +02:00
detached_head.go Use sentence case everywhere 2023-05-25 23:52:19 +10:00
merge_fast_forward.go Add no-ff merge option 2025-10-19 21:24:28 +02:00
merge_non_fast_forward.go Use more widely-supported Unicode symbols for the commit graph 2026-05-04 13:06:29 +02:00
move_commits_to_new_branch_from_base_branch.go Add new command "Move commits to new branch" 2025-04-21 18:12:50 +02:00
move_commits_to_new_branch_from_main_branch.go Add new command "Move commits to new branch" 2025-04-21 18:12:50 +02:00
move_commits_to_new_branch_keep_stacked.go Use branchPrefix on moving commits to a new branch 2025-05-29 22:39:26 +02:00
new_branch_autostash.go Add integration tests for checkout/new branch with autostash 2024-09-03 09:05:53 +02:00
new_branch_from_remote_tracking_different_name.go Update tracking behaviour for branches created from remote branches 2024-07-04 22:34:36 +02:00
new_branch_from_remote_tracking_same_name.go Update tracking behaviour for branches created from remote branches 2024-07-04 22:34:36 +02:00
new_branch_with_prefix.go Move test from commit to branch 2025-04-09 10:44:36 +02:00
new_branch_with_prefix_using_run_command.go Add runCommand function to Go template syntax 2025-04-09 10:44:36 +02:00
open_pull_request_invalid_target_remote_name.go pkg/gui: Allow user to select remote and branch when creating a PR 2024-11-23 11:52:21 +11:00
open_pull_request_no_upstream.go Use UpstreamBranch for opening pull requests 2023-09-18 13:40:52 +10:00
open_pull_request_select_remote_and_target_branch.go pkg/gui: Allow user to select remote and branch when creating a PR 2024-11-23 11:52:21 +11:00
open_with_cli_arg.go Construct arg vector manually rather than parse string 2023-05-23 19:49:19 +10:00
rebase.go Move LocalBranchSortOrder and RemoteBranchSortOrder to user config 2025-07-09 13:15:03 +02:00
rebase_abort_on_conflict.go Move LocalBranchSortOrder and RemoteBranchSortOrder to user config 2025-07-09 13:15:03 +02:00
rebase_and_drop.go Move LocalBranchSortOrder and RemoteBranchSortOrder to user config 2025-07-09 13:15:03 +02:00
rebase_cancel_on_conflict.go Move LocalBranchSortOrder and RemoteBranchSortOrder to user config 2025-07-09 13:15:03 +02:00
rebase_conflicts_fix_build_errors.go Move LocalBranchSortOrder and RemoteBranchSortOrder to user config 2025-07-09 13:15:03 +02:00
rebase_conflicts_fix_build_errors_with_out_of_date_submodule.go Don't stage out-of-date submodules when asking user to auto-stage after resolving conflicts 2026-03-30 17:41:53 +02:00
rebase_copied_branch.go Un-deprecate UserConfig.Git.Log.Order and ShowGraph 2025-07-09 13:15:03 +02:00
rebase_does_not_autosquash.go Remove target branch from title of rebase menu 2024-06-03 14:06:11 +02:00
rebase_from_marked_base.go Move LocalBranchSortOrder and RemoteBranchSortOrder to user config 2025-07-09 13:15:03 +02:00
rebase_onto_base_branch.go Draw divergence from base branch right-aligned in branches view 2025-07-30 14:23:31 +02:00
rebase_to_upstream.go Fix resetting or rebasing a branch to its upstream when the upstream branch name is different 2025-01-04 15:48:26 +01:00
rename.go Replace whitespace with '-' when renaming a branch 2023-09-05 14:57:18 +01:00
reset.go Use sentence case everywhere 2023-05-25 23:52:19 +10:00
reset_to_duplicate_named_tag.go Add integration tests showing resetting to duplicate named tags and branches 2025-06-04 20:43:01 +02:00
reset_to_duplicate_named_upstream.go Add integration test for resetting to upstream branch with duplicate name 2025-06-04 20:43:01 +02:00
reset_to_upstream.go Move LocalBranchSortOrder and RemoteBranchSortOrder to user config 2025-07-09 13:15:03 +02:00
select_commits_of_current_branch.go Add a command to select all commits of the current branch 2025-04-10 09:02:09 +02:00
set_upstream.go chore: rename "Set/Unset upstream" menu to "Upstream Options" 2023-09-06 00:23:35 +02:00
shared.go Extract test helper function checkRemoteBranches 2024-12-01 10:59:54 +01:00
show_divergence_from_base_branch.go Draw divergence from base branch right-aligned in branches view 2025-07-30 14:23:31 +02:00
show_divergence_from_upstream.go chore: rename "Set/Unset upstream" menu to "Upstream Options" 2023-09-06 00:23:35 +02:00
show_divergence_from_upstream_no_divergence.go Fix crash when viewing the divergence of a branch which is up to date with its upstream 2024-09-18 09:24:10 +02:00
sort_local_branches.go Add a prompt for the sort order menus for branches 2025-07-09 13:16:42 +02:00
sort_remote_branches.go Add a prompt for the sort order menus for branches 2025-07-09 13:16:42 +02:00
squash_merge.go feat: squash merge 2024-06-30 11:01:03 +10:00
suggestions.go Construct arg vector manually rather than parse string 2023-05-23 19:49:19 +10:00
unset_upstream.go Fix unsetting upstream when it doesn't exist 2023-11-04 23:46:27 +01:00