gitk는 못 생겼다 / 테마 설정을 존중하지 않는다


32

Xubuntu를 실행 중입니다 (실제로 xfce가있는 Linux 민트이지만 본질적으로 동일한 것으로 가정합니다)

모양 테마를 (수정 된 버전의) MurrinaStormCloud로 설정했지만 gitk를 실행하면 못생긴 글꼴 렌더링, 못생긴 색상, 못생긴 위젯을 사용합니다.

나는 tcl이 여기에 책임이 있다고 생각하지만 그것을 고칠 수 있습니까?

다음은 현재 테마에서 파이어 폭스가 어떻게 보이는지와 gitk가 어떻게 보이는지 비교하는 그림입니다.

gitk 추한 테마


1
우리가 gitg를 가지고 있다는 것은 좋지만, 누군가 가 tcl / tk ugliness를 해결할 수 있는지 확인하기 위해 여전히이 질문에 투표합니다 . gitk는 여전히 gitg보다 더 작습니다.
— u0b34a0f6ae

답변:


25

gitk는 tcl / tk에서 구현됩니다. 나는 주변을 검색했지만 당신이 할 수있는 일이 많지 않은 것 같습니다. 그것은 리눅스 어디에서나 추악한 것으로 꾸짖습니다. 그리고 끔찍한 툴킷을 사용하는 것 외에도 gitk는 더 많은 기능 (주로 사용되지 않음)을 넣음에 따라 UI가 더욱 혼란스러워졌습니다.

따라서 솔루션 대신 GTK +를 사용하여 덜 성숙한 비슷한 도구 인 gitg를 권장 합니다.


3
1 gitg는 thatone에 대해 알고하지 않았다
— 조아킴 Elofsson에게

깃에 대해 들었습니다. 유망한 소리. 그래도 문제는 올바르게 기억한다면 gitk는 Windows에서 정상적으로 보였습니다.
— hasen

gitg가 훨씬 좋습니다. 그것을 위해 +1!
— crazy2be

2
불행히도 모든 tcl / tk 앱은 끔찍합니다.
— jpaugh

1
@jpaugh 아니요, Ttk 스타일을 사용하지 않는 Tk '테마'시스템 만은 아닙니다.
— Lloeki

11

tcl / tk 8.5는 실제로 테마가 있으며 Windows 7 및 Mac에서는 기본적으로 보입니다. 리눅스에서 테마 엔진 브릿지를 작성하는 데는주의가 덜한 것 같지만 다음 세 가지 중 하나를 수행 할 수 있습니다.

재부팅 사이에 지속되도록하려면에 줄 *TkTheme: clam을 추가하십시오 ~/.Xresources. 그러나 데스크톱 환경을 시작할지 여부를 잘 모르겠습니다 startx.

Ubuntu 11.04에서는 tcl / tk 라이브러리 경로를 필요에 따라 조정하는 것이 매우 쉽습니다 (일부 사람들은 해당 명령이 오래되었다고보고했습니다).

$./configure --with-tcl=/usr/lib/tcl8.5/ --with-tk=/usr/lib/tk8.5/

$make

$sudo checkinstall

checkinstall 직접 설치하는 대신 빠른 .deb를 만들면 시스템을 깔끔하게 유지할 수 있습니다.

그런 다음 위와 같이 tk가 qt 테마를 사용하도록하십시오.

$echo '*TkTheme: tileqt' | xrdb -merge -
  • tile-qt와 동일한 소스 포지 리포지토리에 tile-gtk도 있지만 시간이 지났습니다. 나는 그것을 많이 만들고 나서 설치하고 관리했지만 시각적 결과는 지저분했습니다. 권장하지 않았습니다.

10

이 문제를 데비안 (우분투) 방식으로 수정하려면 :

$ sudo apt-get install tk8.5
$ sudo update-alternatives --config wish

그리고 wish8.5 대안을 선택하십시오.


여전히 Gtk + 또는 Qt 테마를 따르지 않지만 훨씬 멋지게 보입니다. +1
— crazy2be

고마워, 나는 완벽한 데스크탑 통합을 기대하지는 않았지만 8.5는 8.4의 것보다 훨씬 나아 보인다.
— Lucian Adrian Grijincu

이 대답은 저기에 있어야합니다! tk를 8.5로 변경하면 gitk의 모양이 크게 향상됩니다.
— pedromanoel

4
이것이 내가 Ubuntu 14.04에서 얻는 것입니다 :update-alternatives: error: no alternatives for wish
— Luís de Sousa

수년에 걸친 데비안 기반 배포판의 변경으로 인해 더 이상 작동하지 않습니다. 데비안 9와 함께 그것을 시도했다.
— einpoklum-모니카

8

가브리엘 모린의 게시물은 훌륭하지만 tile-qt는 그 지침으로 더 이상 빌드하지 않으며 링크 된 블로그 게시물은 여전히 ​​작동하지만 더 이상 내가 아는 최고의 솔루션은 아닙니다.

"clam"테마보다 더 나은 것을 원하는 사람들을 위해 PySolFC 에는 Ttk에 대한 Clearlooks 테마가 포함되어 있으며 설치 방법을 설명하는 다른 블로그 게시물 을 작성 했습니다.

다음은 Lubuntu 사용자에게 적합하도록 관련 부분이 있습니다 (지금은 현재).

# Get the theme
sudo apt-get install pysolfc

# Copy it into your user profile to not rely on PySolFC's presence
mkdir -p ~/.local/share/tkthemes
cp -r /usr/share/games/pysolfc/themes/clearlooks ~/.local/share/tkthemes/

# (optional) Remove PySolFC now
sudo apt-get remove pysolfc
sudo apt-get autoremove

# Add it to Ttk's search path
echo "export TCLLIBPATH=~/.local/share/tkthemes" >> ~/.xsessionrc

# Set the theme
echo "*TkTheme: clearlooks" >> ~/.Xresources

# Test it in this specific terminal window
export TCLLIBPATH=~/.local/share/tkthemes
xrdb -merge ~/.Xresources
git gui     # gitk's "this isn't a repo" dialog is always ugly

# ...and then log out and back in to apply .xsessionrc for the whole desktop

여전히 추악한 위젯이 있습니다 (메뉴 막대와 SHA1 ID:텍스트는 gitk로 패치하여 사용할 수 있어야 함).하지만 Tcl / Tk를 패치하기에 충분하지 않습니다.

(그리고 메뉴 막대가 Windows와 MacOS에서 그리기 위해 OS에 위임되어 메뉴 표시 줄을 만들 수 없다는 소문이 들었습니다)


나는 당신이 당신의 블로그에 연결을 알아 차리고 개선 된 해결책으로 돌아 왔다는 사실을 좋아한다 :). 다시 설정할 시간이 있으면 tileqt에 대한 빌드 지침을 업데이트 할 수 있습니다. 이것이 여전히 제안한 것에 대한 대안이라고 생각하기 때문입니다.
— Gabriel Morin

이 스크립트는 실제로 무언가를 수행하지만 보이지 않습니다. 여전히 추악한 색의 테마를 얻으십시오. 우분투 14.04에서 테스트되었습니다.
— Luís de Sousa

글쎄, 나는 프랑켄슈타인이 부분적으로 쿠분투 14.04 시스템에 들어가는 Lubuntu 14.04 시스템을 git gui사용하고 있으며 이것이 매일 사용하는 것과 완벽하게 작동한다고 말할 수 있기 때문에 나는 당신의 끝에서 무엇이 잘못 될지 전혀 모른다. 이것은 모든 * buntu 배포판이 공유하는 공통 핵심 내에 확실하게 포함되어야합니다.
— ssokolow

4

gitk가 다른 테마를 쉽게 따르도록 만들 수는 없지만 그 모양은 상당히 사용자 정의 가능합니다.

다른 곳에서 언급했듯이 글꼴을 수동으로 선택할 수 있습니다. 에서 거의 모든 색상을 수정할 수 있습니다 ~/.gitk. 종료시 내용을 덮어 쓰므로이 파일을 수정하는 동안 gitk가 실행되고 있지 않은지 확인하십시오.

다음은 내가 가지고있는 것입니다 (내 ~/.gitk 파일 ). 여기에 이미지 설명을 입력하십시오


1
( 면책 조항 : 나는 관리자입니다. ) gitk에 대한 공식 드라큘라 어두운 테마가 있습니다 : draculatheme.com/gitk
— Aurelien

1
()하지만, 드라큘라 나에게 너무 높은 콘트라스트가 비록 좋은 일을) @Aurelien 좋은 내가 그 다음 매개 변수를 변경 할 수 있습니다 커밋 쓴, gitk이 테마 사용하여 다른 사람을 볼 수 있습니다.!
— 고티에

Gauthier, @Aurelien : 링크 된 텍스트를 ~/.gitk파일 에 배치하려고 시도했지만 아무런 효과가 없습니다.
— einpoklum-

1
@einpoklum : 개인적으로 나는이 텍스트를 ~/.config/git/gitk대신에 넣었다 ~/.gitk. draculatheme.com/gitk를 참조하십시오 . 도움이 되나요? 나는 다른 주제에 대해 모른다.
— Aurelien

1
@Aurelien : 그렇습니다.
— einpoklum-복원 Monica Monica

1

kaizer.se가 말했듯이 gitk (및 git gui )는 tcl / tk를 사용하여 구현되며, tk는 위젯 툴킷이며 gtk 기반 테마 (또는 전혀 아 파크)를 신경 쓰지 않습니다. 그리고 이것은 당신이 고칠 수있는 것이 아닙니다 (gittk를 gtk 위젯을 사용하도록 다시 쓰는 것은 불가능하지는 않지만 거의 '수정'이 아닙니다).

기본 설정 에서 글꼴 을 약간 더 좋게 변경하도록 변경할 수 있습니다 .
기본 글꼴 : Helvetica 9
Diff 표시 글꼴 : Courier 9
사용자 인터페이스 글꼴 : Helvetica 9

이것은 조금 나아 보이며 기본값처럼 깨지지 않았습니다.


0

다음 명령으로 tile-gtk (Mint 17.2에서)를 만들었습니다.

sudo apt install tcl-dev tk-dev glib2.0-dev libglib2.0-dev
git clone git://git.code.sf.net/p/tktable/tile-gtk tktable-tile-gtk
cd tktable-tile-gtk
./configure --with-glib-lib-inc=$(pkg-config --cflags glib-2.0) --with-gtk-lib-inc=$(pkg-config --cflags gdk-2.0)
make
sudo make install
echo '*TkTheme: tilegtk' | xrdb -merge -

잘 작동하고 좋아 보인다; 불행히도 tilegtk로 인해 gitk 인스턴스를 한 번만 실행할 수 있습니다.


0

여기와 다른 곳에서 제안 한 후에 Tcl / Tk 비즈니스 전체가 무력한 사례라는 결론에 도달했습니다. DE 테마를 사용할 수는 없습니다.

따라서 Git에 다른 GUI를 사용하기로 결정했습니다. Git Wiki 에는 많은 GUI가 나열되어 있으며 , 그중 일부는 상당히 기능적입니다.

  • git-cola- PyQt4 기반이며 기능면에서 가장 강력한 것으로 보입니다.

  • QGit -Qt를 기반으로, 멋지게 보이지만 특히 분기와 관련된 기능에는 일부 기능이 없습니다.

  • GitKraken – Electron 기반의 강력하고 우아한 인터페이스. 무료이지만 공급 업체에 사용자를 등록해야합니다.

git-gui / gitk로 어려움을 겪고있는 사용자에 대한 나의 충고는 단순히 위 중 하나로 전환하는 것입니다.


0

필자의 경우 올바른 버전의 tk와 wish가 시스템에 설치되었으며 문제는 anaconda를 설치하여 발생했습니다.

anaconda 설치 스크립트가에 추가 export PATH=":/path/to/anaconda3/bin:$PATH"되어 ~/.bashrc원하는 프로그램이 우선권을 갖습니다.

이 줄을 다시 작성 export PATH="$PATH:/path/to/anaconda3/bin"하여 gitk에 의해 시스템의 희망을 실행하고 글꼴 문제를 해결했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.