GTK (Português)

O GTK, o GIMP Toolkit, foi criado inicialmente pelo Projeto GNU para o GIMP, mas agora é um kit de ferramentas muito popular com vinculações para várias linguagens. Este artigo explorará as ferramentas usadas para configurar o tema, o estilo, o ícone, a fonte e o tamanho da fonte do GTK, além de detalhar a configuração manual.

Status de tradução: Esse artigo é uma tradução de GTK. Data da última tradução: 2019-08-16. Você pode ajudar a sincronizar a tradução, se houver alterações na versão em inglês.

Do site do GTK:

GTK, ou o GIMP Toolkit, é um kit de ferramentas multiplataforma para criar interfaces gráficas com o usuário. Oferecendo um conjunto completo de widgets, o GTK é adequado para projetos que variam de pequenas ferramentas únicas a conjuntos completos de aplicativos.

Instalação

Três versões do GTK estão atualmente disponíveis nos repositórios oficiais. Elas podem ser instaladas com os seguintes pacotes:

  • GTK 4.x está disponível com o pacote gtk4.
  • GTK 3.x está disponível com o pacote gtk3.
  • GTK 2.x está disponível com o pacote gtk2.
  • GTK 1.x está disponível com o pacote gtkAUR.

Temas

No GTK 2, o tema padrão é o Raleigh, mas o Arch Linux tem um arquivo de configuração personalizado em /usr/share/gtk-2.0/gtkrc, que define o tema padrão como Adwaita. No GTK 3, o tema padrão é Adwaita, mas os temas HighContrast, HighContrastInverse e Raleigh também estão incluídos.

Para forçar um tema específico, defina as seguintes variáveis de ambiente:

  • Para GTK 2, use . Por exemplo, para iniciar o GIMP com o tema Raleigh:
$ GTK2_RC_FILES=/usr/share/themes/Raleigh/gtk-2.0/gtkrc gimp
  • Para GTK 3, use . Por exemplo, para iniciar a Calculadora do GNOME com a variante escura do Adwaita:
$ GTK_THEME=Adwaita:dark gnome-calculator
Nota: Para aplicar o acima aos atalhos da área de trabalho (ou lançadores), consulte Desktop entries#Modify environment variables.

Mais temas podem ser instalados a partir dos repositórios oficiais ou do AUR. Temas extraídos manualmente vão nos diretórios ou .

GTK 2 e GTK 3.20 ou mais novos tem suporte em:

  • Deepin Tema padrão para o ambiente Deepin. Inclui: deepin, deepin-dark
https://github.com/linuxdeepin/deepin-gtk-theme || deepin-gtk-theme
  • Materia Um tema plano semelhante ao Material Design para GTK3, GTK2 e GNOME-Shell.
https://github.com/nana-4/materia-theme || materia-gtk-theme

Há vários temas GTK adicionais no AUR. Por exemplo, pesquise por gtk-theme.

GTK e Qt

Se você tem aplicativos GTK e Qt (KDE) em sua área de trabalho, sabe que sua aparência não combina bem. Se você deseja fazer seus estilos de GTK combinarem com seus estilos de Qt, por favor, leia Aparência uniforme para aplicativos em Qt e GTK.

Ferramentas de configuração

A maioria dos grandes ambientes de desktop fornecem ferramentas para configurar o tema GTK, ícones, fonte e tamanho da fonte, e gerenciar essas configurações por XSettings:

  • Se você usa Cinnamon, use a ferramenta Temas (cinnamon-settings themes): vá em Configurações do sistema > Temas.
  • Se você usa Enlightenment: vá em Definições > Tudo > Aparência > Tema das aplicações.
  • Se você usa GNOME, use Ajustes do GNOME (gnome-tweaks): instale .
  • Se você usa MATE, use a ferramenta Appearance Preferences (mate-appearance-properties): vá em Sistema > Configurações > Aparência.
  • Se você usa Xfce, use a ferramenta Appearance: vá em Configurações > Aparência.

Outras ferramentas GUI geralmente sobrescrevem os arquivos de configuração.

Suporte a GTK 2 e GTK 3:

  • KDE GTK Configurator Aplicativo que permite que você altere o estilo e fonte de aplicativos GTK 2 e GTK 3.
https://invent.kde.org/plasma/kde-gtk-config || kde-gtk-config
Após a instalação, também pode ser encontrado em Configurações do sistema > Estilo dos aplicativos > GNOME/GTK Application Style.
  • {{App|Oo-mox|Aplicativo gráfico para gerar diferentes variações de cores dos temas dos temas Numix e Flat-Plat (GTK 2 e 3), Archdroid e Gnome-Colors. Também permite gerar temas GTK 2 pré-dimensionados para telas HiDPI.|https://github.com/actionless/oomox%7C

Suporte apenas a GTK 2:

  • GTK Change Theme Um programa pequeno que permite que você altere seu tema GTK 2.0 (considerado uma alternativa melhor ao switch2).
http://plasmasturm.org/code/gtk-chtheme/ || gtk-chtheme

Configuração

As configurações do GTK podem ser especificadas manualmente nos arquivos de configuração, mas os ambientes e aplicativos de desktop podem substituir essas configurações. Dependendo da versão do GTK, esses arquivos estão localizados em:

  • específico de usuário no GTK 2:
  • todo o sistema no GTK 2:
  • específico de usuário no GTK 3: , ou se não estiver definido
  • todo o sistema no GTK 3:
Nota:
  • Veja as propriedades de GtkSettings do GTK 3 (e as propriedades do GTK 2) no manual de referência de programação do GTK para a lista completa as opções de configuração de GTK atualmente válidas.
  • Algumas das configurações descritas abaixo (como gtk-icon-size) são obsoletas e ignoradas desde o GTK 3.10.
  • Se você editar seus arquivos de configuração do GTK, apenas os aplicativos recém-iniciados exibirão as alterações.

Configuração básica de tema

Para alterar manualmente o tema, os ícones, a fonte e o tamanho da fonte do GTK, adicione o seguinte aos arquivos de configuração, por exemplo:

  • GTK 2:
~/.gtkrc-2.0
gtk-icon-theme-name = "Adwaita"
gtk-theme-name = "Adwaita"
gtk-font-name = "DejaVu Sans 11"
  • GTK 3:

Variante escura de tema

Alguns temas do GTK 3 contêm uma variante de tema escuro, mas ela é usada apenas por padrão quando o aplicativo solicita isso explicitamente. Para usar a variante do tema escuro com todos os aplicativos GTK 3, defina:

gtk-application-prefer-dark-theme = true

Atalhos de teclado

Os atalhos de teclado (também conhecidos como aceleradores no GTK) podem ser alterados passando o mouse sobre o respectivo item de menu e pressionando a combinação de teclas desejada. Para ativar esse recurso, defina:

gtk-can-change-accels = 1

Vinculações de teclas Emacs

Para ter associações de teclas do tipo Emacs em aplicativos de GTK, adicione o seguinte:

Para GTK 3, também execute:

$ gsettings set org.gnome.desktop.interface gtk-key-theme "Emacs"

XFCE possui uma configuração similar:

$ xfconf-query -c xsettings -p /Gtk/KeyThemeName -s Emacs

Os arquivos de configuração em determinam quais são as ligações do Emacs e podem ser alteradas. Copiar seções para o arquivo permite alterações por usuário.

Atraso no menu do GNOME

Essa configuração controla o atraso entre apontar o mouse em um menu e a abertura do menu. Esse atraso é medido em milissegundos.

gtk-menu-popup-delay = 0

Reduzir tamanhos de widgets

Se você tem uma tela pequena ou simplesmente não gosta de grandes ícones e widgets, pode redimensionar as coisas facilmente.

Para ter ícones sem texto nas barras de ferramentas (valores válidos), use

gtk-toolbar-style = GTK_TOOLBAR_ICONS

Para ícones menores, use uma linha como essa:

gtk-icon-sizes = "panel-menu=16,16:panel=16,16:gtk-menu=16,16:gtk-large-toolbar=16,16\

 :gtk-small-toolbar=16,16:gtk-button=16,16"

Ou para remover ícones de botões completamente:

gtk-button-images = 0

Você também pode remover ícones de menus:

gtk-menu-images = 0

Veja também e .

Ocultar botões de CSD

Para remover os botões minimizar e maximizar das janelas em gtk3:

gtk-decoration-layout=menu:close

See .

Desabilitar colagem com mouse

Para desaligar colagem ao clicar com o botão do meio do mouse (também conhecido como PRIMARY):

gtk-enable-primary-paste=false

Localização inicial do seletor de arquivos

Abra o seletor de arquivos dentro do diretório de trabalho atual e não o local recentes. Normalmente o diretório de trabalho atual é a pasta pessoal.

GTK 3

Altere a configuração com o seguinte comando:

$ gsettings set org.gtk.Settings.FileChooser startup-mode cwd

GTK 2

Adicione o seguinte para :

StartupMode=cwd

Comportamento de rolagem legada

Antes do GTK 3.6, clicar em um dos lados do controle deslizante na barra de rolagem moveria a barra de rolagem na direção do clique em aproximadamente uma página. Desde o GTK 3.6, o controle deslizante se moverá diretamente para a posição do clique. Esse comportamento pode ser revertido em alguns aplicativos, criando o arquivo com o conteúdo abaixo:

Desabilitar barras de rolagem de sobreposição

Desde o GTK 3.15, as barras de rolagem de sobreposição são ativadas por padrão, o que significa que as barras de rolagem serão mostradas apenas ao passar o mouse nas aplicações do GTK 3. Esse comportamento pode ser revertido pela configuração da seguinte variável de ambiente: GTK_OVERLAY_SCROLLING=0. Veja Variáveis de ambiente#Ambiente gráfico.

O GTK 4 deixará de dar suporte a . Ele já foi retirado do ramo mestre. A partir do GTK 4, a natureza de sobreposição das barras de rolagem é parte do kit de ferramentas. A alternância geral foi removida para impedir que os desenvolvedores quebrem aplicativos que não foram testados com ambas as combinações. Para permitir que os desenvolvedores de aplicativos decidam como devem ser seus aplicativos, o kit de ferramentas fornece um mecanismo para desativar ou adicionar uma configuração aos usuários. A função gtk_scrolled_window_set_overlay_scrolling() pode ser usada para ativar/desativar a sobreposição de rolagem em uma base por aplicativo. Os desenvolvedores de aplicativos podem, opcionalmente, usar o GSettings para ter uma configuração de usuário vinculada à propriedade.

Remover indicadores de rolagem de sobreposição

As posições das barras de rolagem de sobreposição são indicadas por linhas tracejadas finas na janela do aplicativo. Essas linhas tracejadas estarão presentes mesmo quando a rolagem de overlay estiver desabilitada usando a variável de ambiente discutida na seção acima. Para remover as linhas do indicador, crie o seguinte arquivo:

Exemplos

Exemplo de configurações do GTK:

Nota: Pode ser ignorado para alguns ambientes de desktop (p.ex., GNOME).

Backend do GDK

O GDK (a camada de abstração subjacente do GTK) possui suporte a vários backends para exibir aplicativos GTK. O backend padrão é x11.

Backend do Broadway

O backend do GDK Broadway fornece suporte para a exibição de aplicativos GTK em um navegador da Web, usando HTML5 e soquetes da web.

Ao usar broadwayd, especifique o número de exibição a ser usado, prefixado com caractere de dois pontos, semelhante a X. O número de exibição padrão é 1.

$ display_number=:5

Inicie-o.

$ broadwayd $display_number

Porta usada por padrão

port = 8080 + $display_number

Aponte seu navegador para http://127.0.0.1:port

Para iniciar aplicativos

$ GDK_BACKEND=broadway BROADWAY_DISPLAY=$display_number <<app>>

Alternativamente, você pode definir endereço e porta

$ broadwayd --port $port_number --address $address $display_number

Backend do Wayland

O backend GDK do Wayland pode ser ativado definindo a variável de ambiente .

Solução de problemas

Temas diferentes entre aplicativos GTK 2 e GTK 3

Em geral, se um tema selecionado tiver suporte ao GTK 2 e ao GTK 3, o tema será aplicado a todos os aplicativos GTK 2 e GTK 3. Se um tema selecionado tiver suporte apenas ao GTK 2, ele será usado para aplicativos do GTK 2 e o tema padrão do GTK será usado para aplicativos do GTK 3. Se o tema selecionado tiver suporte apenas ao GTK 3, ele será usado para aplicativos do GTK 3 e o tema padrão do GTK será usado para aplicativos do GTK 2. Assim, para a consistência do tema da aplicação, é melhor usar um tema que tenha suporte ao GTK 2 e o GTK 3.

Você poderia encontrar quais temas instalados em seu sistema possuem uma versão GTK 2 e GTK 3 usando este comando (não funciona com nomes que contenham espaços):

find $(find ~/.themes /usr/share/themes/ -wholename "*/gtk-3.0" | sed -e "s/^\(.*\)\/gtk-3.0$/\1/") -wholename "*/gtk-2.0" | sed -e "s/.*\/\(.*\)\/gtk-2.0/\1"/

Tema não aplicado para aplicativos de root

Como arquivos de tema de usuário (, ) não são lidos por outras contas, o tema selecionado não será aplicado a aplicativos X sendo executados como root. Possíveis soluções incluem:

  • Criar links simbólicos, p.ex.:
# ln -s /home/[username]/.gtkrc-2.0 /etc/gtk-2.0/gtkrc
# ln -s /home/[username]/.config/gtk-3.0/settings.ini /etc/gtk-3.0/settings.ini
  • Configurar arquivos de temas para todo sistema: (GTK 3) ou (GTK 2)
  • Ajustar o tema como root
# sudo lxappearance
  • Usar o daemon de configurações (é isso que a maioria dos ambientes desktop fazem). Uma variante agnóstica a desktop usando XSettings está disponível sob nome .

Decorações do lado do cliente

O GTK 3.12 introduziu decorações para cliente, que move a barra de cabeçalho para fora do gerenciador de janela. Isso pode apresentar problemas como barras de título duplas, nenhuma barra de título ou sombras duplas com composição habilitada.

Para remover a sombra e o espaço em torno das janelas (por exemplo, em combinação com um gerenciador de janela de tiling), crie o seguinte arquivo:

Para ajustar os botões na barra de cabeçalho, use a configuração gtk-decoration-layout. Os exemplos abaixo removem todos os botões:

Cedilha ç/Ç em vez de ć/Ć

Veja e para uma a solução de contorno usando Xcompose (layout EUA internacional).

Suprimir aviso sobre barramento de acessibilidade

Se você não usa nenhuma recurso do Acesso Universal do GNOMe, você pode receber avisos com:

WARNING **: Couldn't connect to accessibility bus:

Para suprimir esses avisos, execute programas com ou defina isso como uma variável de ambiente global.

Incompatibilidade de cor de fundo da barra de título

Se você estiver usando um gerenciador de janela que usa um tema de decoração de janelas que imita a cor de fundo do tema GTK, você pode descobrir que a cor da barra de título não combina mais com a cor do aplicativo em alguns aplicativos do GTK 3. Como solução alternativa, crie o seguinte arquivo:

Eventos de foco incorretos com gerenciadores de janela tiling

Defina para usar entrada no estilo GTK2 em vez de xinput2.

Suporte a miniaturas para diálogo de arquivos GTK 2

Instale para ter a opção para ver arquivos como miniaturas em vez de lista no seletor de arquivos GTK.

Botão e ícones de menu

Para algumas aplicações na sessão Wayland do GNOME. Seu arquivo está desconfigurado. Isso pode acontecer se você tentar outros ambientes de área de trabalho baseados em GTK. Estes são os valores ofensivos:

~/.config/gtk-3.0/settings.ini
[Settings]
gtk-button-images=1
gtk-menu-images=1

Basta defini-los como 0 ou remover o arquivo inteiro para usar os padrões do GNOME.

GTK 3 sem polkit

O GTK 3 depende do polkit através do colord, que é necessário para impressão. No entanto, a impressão funciona bem sem o polkit instalado; pelo menos com uma impressora monocromática e versões de pacote gtk3-print-backends=3.22.19-2 e colord=1.4.1-1.

Alguns temas de GTK 2 só alteram a paleta de cores da UI

Dependendo do tema de escolha do suporte para o GTK 2, os controles da interface do usuário ainda podem ter a aparência padrão do Raleigh, possivelmente com uma paleta de cores diferente. Isso se deve a esses temas que exigem o mecanismo Murrine GTK 2, que está faltando (programas GTK 2 devem reclamar sobre isso em sua saída de erro padrão). Instale o pacote .

Aplicando patch no seletor de arquivos GTK para usar a digitação adiantada normal

O seletor de arquivos GTK usa o mesmo recurso de busca por digitação antecipada do GNOME/Files. Isso pode ser muito chocante e não se encaixa muito bem com outros ambientes de desktop.

Alguns aplicativos possuem suporte ao XDG-desktop-portal, que permite que o aplicativo use o seletor de arquivo nativo. Se isso não funcionar, você pode restaurar a funcionalidade de digitação antecipada usando um GTK com patch aplicado como, por exemplo, gtk3-mushroomsAUR.

Veja também

gollark: GTech synthetic dragon eggs cost only 2KST.
gollark: That should actually be the same one.
gollark: PotatOS has a decent JSON lib, you could use the one it does.
gollark: It should be available in `_G.json` anyway.
gollark: The JSON one in the ROM SHOULD mostly work.
This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.