gitk parece feio / não respeita as configurações do tema

31

Estou rodando o Xubuntu, (na verdade o linux mint com o xfce no topo, mas suponho que seja essencialmente a mesma coisa)

Eu configurei meu tema de aparência para (uma versão modificada de) MurrinaStormCloud, mas se eu executar o gitk, ele usa renderização feia de fontes, cores feias, widgets feios.

Acho que tcl é o culpado aqui, mas posso consertar isso?

Aqui está uma imagem para comparação entre o aspecto do firefox no tema atual e o aspecto do gitk:

    
por hasen 26.08.2009 / 20:56

9 respostas

24

O gitk é implementado em tcl / tk. Eu procurei por aí, mas parece que não há muito que você possa fazer; é repreendido como feio no Linux em todos os lugares. E além de usar um kit de ferramentas medonho, o gitk tem piorado para mim, já que eles colocam mais funções (a maioria não é usada), a interface do usuário fica ainda mais confusa.

Então, em vez de uma solução eu recomendo gitg , que é uma ferramenta semelhante, menos madura, usando o GTK +.

    
por 26.08.2009 / 22:18
11

tcl / tk 8.5 é realmente personalizável e parece bastante nativo no Windows 7 e, aparentemente, no Mac. Menos cuidado parece ter sido dado para escrever pontes de mecanismo de tema para ele no Linux, mas você pode fazer uma de três coisas:

Para que isso ocorra entre as reinicializações, adicione a linha *TkTheme: clam a ~/.Xresources , mas não tenho certeza se isso é lido se você iniciou o ambiente de área de trabalho com startx ou não.

  • Solução alternativa para o acima, pelo autor do mesmo post do blog, nesta mesma página: link

  • Para obter o tk para usar temas do qt , você precisará fazer o checkout e construir o tile-qt a partir de: git: //tktable.git.sourceforge.net/gitroot/tktable/tile-qt

No Ubuntu 11.04 foi muito fácil, adapte os caminhos da biblioteca tcl / tk conforme necessário (algumas pessoas relataram que essas instruções estão desatualizadas):

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

$make

$sudo checkinstall

checkinstall sendo para criar um .deb rápido em vez de instalar diretamente, mantém o sistema organizado.

Depois, como acima, pegue tk para usar seus temas qt:

$echo '*TkTheme: tileqt' | xrdb -merge -
  • Há também um tile-gtk no mesmo repositório do sourceforge que o tile-qt, mas está completamente desatualizado. Eu consegui construí-lo e instalá-lo depois de muito mexer, mas os resultados visuais foram confusos - não é recomendado.
por 03.12.2011 / 19:06
10

Para consertar isso da maneira Debian (Ubuntu):

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

E depois escolha a alternativa wish8.5.

    
por 04.04.2011 / 11:24
8

A postagem de Gabriel Morin é boa, mas o tile-qt não funciona mais com essas instruções e, embora o post do blog ao qual ele ligou (meu, por sinal) ainda funcione, não é mais a melhor solução que conheço.

Para pessoas que querem algo melhor do que o tema "clam", o PySolFC inclui um Tema do Clearlooks para o Tk e eu escrevi outra postagem no blog que explica como instalá-lo.

Aqui estão as partes relevantes, adaptadas para um usuário do Lubuntu (que eu sou agora):

# 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

Existem alguns widgets que ainda são feios (a barra de menu e o SHA1 ID: text, que precisa ser corrigido no gitk para ser o themable), mas eu não sei o suficiente Tcl / Tk para corrigir as coisas.

(E eu ouvi rumores de que a barra de menu não foi feita como legível porque é delegada ao sistema operacional para desenhar no Windows e no MacOS)

    
por 25.05.2012 / 01:55
4

Você não pode facilmente fazer o gitk seguir seus outros temas, mas sua aparência é bastante personalizável.

Como mencionado em outro lugar, você pode escolher suas fontes manualmente. Quase todas as cores são modificáveis também, no seu ~/.gitk . Certifique-se de que o gitk não esteja sendo executado ao modificar esse arquivo, pois ele substitui o conteúdo na saída.

Aqui está o que eu tenho (meu arquivo ~/.gitk ):

    
por 16.12.2016 / 08:10
1

como kaizer.se disse que gitk (e também git gui ) é implementado usando tcl / tk, tk é o toolkit de widget e não se importa com temas baseados em gtk (ou qualquer afaik). E não, isso não é algo que você possa consertar (bem reescrever o gitk para usar o widget do gtk não é impossível, mas dificilmente é uma 'correção') além de substituí-lo por outra coisa.

Você pode alterar as fontes nas preferências para melhorar um pouco, eu uso:
Fonte principal: Helvetica 9
Diff display font: Courier 9
Fonte da interface do usuário: Helvetica 9

Isso parece um pouco melhor e não tão quebrado quanto o padrão, bem para mim.

    
por 26.08.2009 / 22:42
0

Eu criei o tile-gtk (na Mint 17.2) com os seguintes comandos:

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 -

Funciona bem, parece bom; infelizmente eu posso executar apenas uma instância do gitk a tempo devido ao tilegtk.

    
por 20.11.2015 / 15:05
0

Depois de algumas das sugestões aqui e em outros lugares, cheguei à conclusão de que todo esse negócio da Tcl / Tk é um caso indefeso - ele nunca consegue usar o tema do DE.

Portanto, decidi tentar outras GUIs para o Git. O Git Wiki lista um número de GUIs , algumas das quais são bastante capazes:

  • git-cola - baseado no PyQt4 e parece ser mais poderoso em termos de funcionalidade .

  • QGit - baseado no Qt, parece ótimo, mas carece de alguma funcionalidade, especialmente em o que diz respeito aos ramos.

  • GitKraken - uma interface poderosa e elegante baseada em Electron e carregada com recursos; gratuito, mas requer o registro do usuário no fornecedor.

Meu conselho para os usuários que estão sofrendo com o git-gui / gitk é simplesmente mudar para um dos itens acima.

    
por 13.04.2016 / 11:54
0

No meu caso, a versão correta do tk e do wish foi instalada no sistema, e o problema surgiu de ter instalado o anaconda.

O script de instalação do anaconda adiciona export PATH=":/path/to/anaconda3/bin:$PATH" ao seu ~/.bashrc , o que faz com que o programa desejado instalado tenha precedência.

Reescrever esta linha para export PATH="$PATH:/path/to/anaconda3/bin" permitiu que o sistema fosse executado pelo gitk e resolvesse o problema da fonte.

    
por 10.08.2018 / 11:17