Ich habe nachgeforscht.
Die Konfiguration core.whitespace
hat nichts damit zu tun, wie Registerkarten angezeigt werden. Es wird nur für Git verwendet, um tabulatorbedingte Whitespace-Fehler zu erkennen. Beispiel: Wenn indent-with-non-tab
aktiviert und auf core.whitespace
gesetzt tabwidth=4
ist und eine Zeile mit mindestens 4 Leerzeichen eingerückt wird, meldet git einen Fehler.
Für Git ist ein Tabulatorzeichen, abgesehen von den Funktionen zur Erkennung von Whitespace-Fehlern, ein Zeichen wie jedes andere Zeichen. Es wird verglichen und auf das Tool abgelegt, mit dem die Zeichen angezeigt werden. Das heißt, um die angezeigte Tabulatorbreite zu konfigurieren, müssen Sie die "Frontends" von Git konfigurieren. In diesem Fall git diff
wäre "less" (das Unix-Tool "less"). In diesem Fall git gui
wäre es Git-Gui.
Weniger konfigurieren ist einfach. Sie können die Git-Konfiguration so einstellen core.pager
, dass weniger eingerichtet wird, um eine Registerkarte mit 4 Leerzeichen anzuzeigen (weniger hat einen Parameter, -xn
auf den die Tabulatorbreite eingestellt werden kann n
).
Die Konfiguration von git-gui gestaltete sich erheblich schwieriger. Git-gui ist in Tcl / Tk geschrieben. Ich habe eine Tcl / Tk- Option gefunden , um die Tabulatorbreite in Text-Widgets zu konfigurieren. Ich habe auch eine Zeile gefunden, in der git-gui.sh
es aussieht, als würde das Text-Widget initialisiert.
Dies ist Zeile 3346 der Datei git-gui.sh
in Git-Version 1.7.5:
catch {$ui_diff configure -tabstyle wordprocessor}
Ich habe das nach dem Tcl / Tk-Handbuch folgendermaßen geändert:
catch {$ui_diff configure -tabs "[expr {4 * [font measure $font 0]}]" -tabstyle wordprocessor}
Das schien keine Wirkung zu haben. Ich habe verschiedene Werte für ausprobiert -tabs
und sie hatten einige Auswirkungen auf die angezeigte Registerbreite. Es scheint also die richtige Zeile zu sein, die geändert werden muss.
Leider scheint Tcl / Tk keinen Begriff für die Tabulatorbreite in Zeichen zu haben, stattdessen muss die Tabulatorbreite in Pixel oder Zentimetern angegeben werden.
Beachten Sie, dass ich keinerlei Erfahrung mit Tcl / TK habe. Vielleicht übersehen wir hier nur etwas Einfaches.
Wie auch immer, jetzt wissen Sie, wo Sie anfangen sollen zu graben. Denken Sie daran, sich hier zu melden, wenn Sie eine funktionierende Lösung haben. Viel Glück.