git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH/RFC v2 2/2] diff.tcl: call "apply_tab_size 1" to fix alignment instead of spaces.

From
Junio C Hamano <gitster@pobox.com>
Date
Jan 28, 2026, 23:42 UTC
Message-ID
<xmqq4io5e23t.fsf@gitster.g>
In-Reply-To
<bf8e6231-e1c0-4c0c-b4d5-20f8d0044211@kdbg.org>
Johannes Sixt <j6t@kdbg.org> writes:
>> For us this bug is a show stopper that makes the diff in the
>> git-gui window by default unreadable.
> Earlier, I said that I'm not fond of such a change. But I changed my
> mind. I hadn't noticed so far that Gitk applies customized tabstops. Git
> GUI and Gitk need not emulate the behavor of terminal windows faithfully
> and can be more clever as far as tabstops are concerned.

I just peeked what gitk does, and it does use "settabs 0" (the equivalent of "apply_tab_size 0" in gitk world) for plain files, "settabs 1" for one parent regular commits, and "settabs $np" for n-parent merges, so what Chris is doing here makes git-gui match what gitk has been doing since 32f1b3e4 (gitk: Fix the tab setting in the diff display window, 2007-09-28) for close to 20 years ;-).

Having said that, the fact that they have been allowed to be different for so long tells me that the way characters immediately after tabs have been displayed in git-gui bothered nobody for a long time, and calling it a "show stopper" and "unreadable" is a great exaggeration, I must say.

Thanks.
Previous: Johannes SixtNext: Junio C Hamano
Message 17 of 30 in “diff.tcl: fixed alignment of tabs in git-gui diff by using spaces”
  1. diff.tcl: fixed alignment of tabs in git-gui diff by using spacesChris Idema via GitGitGadget, Jan 26, 2026
  2. Johannes SixtJan 26, 2026
  3. GitHub Chris IdemaJan 26, 2026
  4. Johannes SixtJan 26, 2026
  5. GitHub Chris IdemaJan 26, 2026
  6. Johannes SixtJan 26, 2026
  7. GitHub Chris IdemaJan 26, 2026
  8. GitHub Chris IdemaJan 26, 2026
  9. 0/2 diff.tcl: Fixed alignment of tabs in git-gui diff by using spaces.Chris Idema via GitGitGadget, Jan 27, 2026
  10. 2/2 diff.tcl: call "apply_tab_size 1" to fix alignment instead of spaces.Chris Idema via GitGitGadget, Jan 27, 2026
  11. Junio C HamanoJan 27, 2026
  12. Junio C HamanoJan 27, 2026
  13. GitHub Chris IdemaJan 28, 2026
  14. Johannes SixtJan 28, 2026
  15. GitHub Chris IdemaJan 28, 2026
  16. Johannes SixtJan 28, 2026
  17. Junio C HamanoJan 28, 2026
  18. Junio C HamanoJan 29, 2026
  19. GitHub Chris IdemaJan 29, 2026
  20. Johannes SixtJan 29, 2026
  21. Junio C HamanoJan 29, 2026
  22. 1/2 diff.tcl: fixed alignment of tabs in git-gui diff by using spacesChris Idema via GitGitGadget, Jan 27, 2026
  23. diff.tcl: made alignment of tabs in git-gui diff consistent with gitkChris Idema via GitGitGadget, Jan 28, 2026
  24. Johannes SixtJan 28, 2026
  25. GitHub Chris IdemaJan 28, 2026
  26. Junio C HamanoJan 29, 2026
  27. git-gui: shift tabstops to account for the first column of context diffsChris Idema via GitGitGadget, Jan 29, 2026
  28. Johannes SixtJan 29, 2026
  29. GitHub Chris IdemaMar 4, 2026
  30. Johannes SixtMar 4, 2026

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.