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.