Zrobiłem trochę badań.
Konfiguracja core.whitespace
nie ma nic wspólnego z wyświetlaniem zakładek. Służy tylko gitowi do rozpoznawania błędów związanych z białymi znakami tabulacji. Na przykład: gdy indent-with-non-tab
jest włączony i core.whitespace
jest ustawiony na tabwidth=4
, a linia jest wcięta za pomocą 4 spacji lub więcej, wtedy git zgłosi błąd.
W przypadku git, oprócz funkcji wykrywania błędów związanych z białymi znakami tabulacji, tabulator jest znakiem jak każdy inny znak. Jest porównywany i zrzucany do dowolnego narzędzia używanego do wyświetlania znaków. Oznacza to, że aby skonfigurować wyświetlaną szerokość tabulatora, musisz skonfigurować „interfejsy” git. W takim przypadku git diff
byłoby „mniej” (narzędzie uniksowe „mniej”). W takim przypadku git gui
byłoby to samo git-gui.
Konfiguracja mniej jest łatwa. Możesz ustawić konfigurację git tak, core.pager
aby mniej konfigurowała wyświetlanie tabulacji za pomocą 4 spacji (less ma parametr -xn
do ustawienia szerokości tabulatora n
).
Konfiguracja git-gui okazała się znacznie trudniejsza. Git-gui jest napisane w Tcl / Tk. Znalazłem opcję Tcl / Tk , aby skonfigurować szerokość tabulatora w widżetach tekstowych. Znalazłem również wiersz, w git-gui.sh
którym wygląda na to, że widget tekstowy jest inicjowany.
To jest linia 3346 pliku git-gui.sh
w wersji git 1.7.5:
catch {$ui_diff configure -tabstyle wordprocessor}
Zmieniłem to, zgodnie z instrukcją Tcl / Tk, na:
catch {$ui_diff configure -tabs "[expr {4 * [font measure $font 0]}]" -tabstyle wordprocessor}
To nie wydawało się mieć żadnego efektu. Próbowałem różnych wartości dla -tabs
i miały one pewien wpływ na wyświetlaną szerokość tabulacji, więc wydaje się, że poprawną linię należy zmodyfikować.
Niestety, Tcl / Tk nie wydaje się mieć pojęcia szerokości tabulatora pod względem znaków, zamiast tego szerokość tabulatora musi być ustawiona w pikselach lub centymetrach.
Zauważ, że nie mam żadnego doświadczenia w Tcl / TK, więc może po prostu przeoczę coś prostego.
W każdym razie teraz już wiesz, od czego zacząć kopanie. Pamiętaj, aby zgłosić się tutaj, jeśli masz działające rozwiązanie. Powodzenia.