A theme changes how GDM looks and keeps everything where it was: the same windows, menus and buttons in the same places, drawn in other colours, shapes and icons. Each theme has a light and a dark side.
Escolher um
Abra Ver → Tema e clique num tema: toda a janela muda de uma vez, sem necessidade de reiniciar. Ver → Suporte para Modo Escuro e Ver → Sempre escuro escolhem o lado claro ou escuro, tal como para o aspeto clássico (Modo escuro).
The built-in themes are Classic (GDM's own look, the default), Native (your system's accent colour and contrast), High contrast, and the style themes Metro, Adwaita, Breeze, Luna, Aero and Aqua, each with its own control shapes and icons, and on Windows its own title bar. Getting started describes each one; the website's Themes page shows them all, light and dark.
Onde ficam os ficheiros de tema
Theme files you make or download go in GDM's themes folder. View → Theme → Open themes folder opens it (and makes it the first time). It is in GDM's data folder:
| Sistema | Pasta |
|---|---|
| Windows | %APPDATA%\misterdownloadmanager\themes |
| Linux | ~/.local/share/misterdownloadmanager/themes |
| macOS | ~/Library/Application Support/misterdownloadmanager/themes |
| Cópia portátil | data\themesao lado do programa |
Em dois segundos, um novo ficheiro aparece em Ver → Tema, abaixo dos temas incorporados, pelo name que se atribui. Depois de editar um ficheiro, selecione-o novamente em Ver → Tema para ver a alteração.
Um tema pode ser um único ficheiro (harbour.toml) ou uma pasta própria (harbour/theme.toml) quando inclui ícones.
View → Theme → Add a theme file… does it for you: pick a file anywhere, and GDM copies it into the themes folder and uses it at once. A file that isn't a theme stays out, and GDM says why.
Esquemas de cores Base16 e pywal
Os esquemas de cores feitos para outros programas também são temas, sem necessidade de conversão:
- Um esquema Base16, o ficheiro
.yamlem que vêm os esquemas Base16 e Base24: tanto o esquema clássico (scheme:ebase00abase0Fno topo) como o mais recente (name:e um blocopalette:). Um esquema Base24 é lido como as suas primeiras 16 cores. - O
colors.jsondo pywal, ou o ficheiro de qualquer programa no formato do pywal (o modelo pywal do wallust).
Adicione-o com Ver → Tema → Adicionar um ficheiro de tema…, ou coloque-o na pasta de temas manualmente. Aparece em Ver → Tema com o nome do esquema (name: ou scheme:; o do pywal tem o nome do papel de parede).
pywal itself: once wal has run, View → Theme lists pywal, read straight from where
pywal writes its colours: ~/.cache/wal/colors.json (on Windows
%USERPROFILE%\.cache\wal\colors.json, where winwal and pywal write it; $PYWAL_CACHE_DIR or
$XDG_CACHE_HOME/wal when you set them). Pick it and GDM follows your wallpaper: each time wal
writes new colours, GDM takes them within two seconds. It looks only at the file's date and size,
every two seconds, and only while pywal is the theme. A copy added with Add a theme file…
keeps the colours it had.
A scheme changes colours only, on the classic look: every window, button and menu stays where it was. A dark scheme makes GDM dark and a light one light, whatever View → Always dark says. The scheme's colours go where they mean the same:
| GDM | Base16 | pywal |
|---|---|---|
| A lista de transferências, caixas de texto e menus | base00(o fundo) |
special.background |
| Windows, caixas de diálogo, barra de ferramentas, barra de menus e cabeçalhos de coluna | base01(o fundo mais claro) |
o fundo um passo em direção ao primeiro plano |
| Texto | base05(o primeiro plano) |
special.foreground |
| Texto secundário (tamanhos, notas) | base04 |
color8 |
| Foco, botões predefinidos, caixas de verificação, ligações, a seleção e a barra de progresso | base0D(azul) |
color4 |
| Erros | base08(vermelho) |
color1 |
| Avisos | base0A(amarelo) |
color3 |
| Sucesso, os medidores e as partes de um torrent | base0B(verde) |
color2 |
Borders and the hover and pressed shades are mixed from these, as for a theme file's [seeds].
Text stays readable: text and secondary text at 4.5:1 or more against every background they sit
on (WCAG AA), the accent at 3:1. A scheme short of that has those colours moved a little darker
(lighter on a dark scheme) until they pass; GDM's log says which.
Para mudar mais do que cores, crie um ficheiro de tema que herde o esquema pelo nome do ficheiro e adicione o que quiser:
name = "Gruvbox, my way"
inherits = "gruvbox-dark-medium" # gruvbox-dark-medium.yaml, beside it
icons = "accent"
[sizes]
radius = 6
inherits = "pywal"funciona da mesma forma e também segue wal.
O ficheiro
Um tema é um pequeno ficheiro de texto em TOML (ou JSON, .json; ou um esquema de cores, .yaml). Nomeia apenas o que muda; tudo o resto vem do tema que inherits:
name = "Harbour"
inherits = "classic"
icons = "color"
[seeds.light]
background = "#eef3f6"
surface = "#ffffff"
text = "#11202b"
accent = "#0f6c8c"
[seeds.dark]
background = "#14212a"
surface = "#0e171d"
text = "#e8f0f4"
accent = "#5cc3e6"
[sizes]
radius = 6
[controls]
focus = "ring"
name— o que Ver → Tema lista; o nome do ficheiro quando não há nenhum.inherits— o tema de onde o seu começa:classic(o predefinido quando omitido), um ID de tema incorporado (metro,adwaita,breeze,luna,aero,aqua,high-contrast), ou outro ficheiro de tema na mesma pasta, pelo seu nome de ficheiro sem.toml. Um ficheiro que herda outro pode ser herdado por sua vez; um tema não pode herdar-se a si próprio.[seeds]— a handful of colours (background,surface,header,text,accent,selection,error,warning,success) that GDM spreads over every control.[seeds.light]and[seeds.dark]give each side its own.[colors]— funções de cor única (comowindow,accentou"segments.done") em ambos os lados;[light]e[dark]apenas num lado. Uma cor é#rrggbb, ou#rrggbbaacom transparência. As funções que um ficheiro define prevalecem sobre as suas sementes.[sizes]— raios de canto, larguras de borda, tamanhos de letra e alturas de linha, em píxeis.[controls]— a forma de caixas de texto, caixas de verificação, botões, barras de progresso, barras de deslocamento, a marca de foco e a barra de título.icons—color,mono(uma cor) ouaccent.contrast = "high"— reforça todas as cores de borda e texto por cima do resto.
Every colour role, size and control style, with what it sets, is listed on the website's Themes page (read from GDM's own code, so it never drifts). The built-in themes are written the same way: read them on GitHub.
A key GDM doesn't know, or a value it can't read, is skipped and written to GDM's log (the logs
folder beside the themes folder), so a file made for a newer GDM still loads. A file that isn't
valid TOML or JSON doesn't load, and the log says why. A file named like a built-in theme
(metro.toml) is passed over: give yours a name of its own.
Ícones
Um tema numa pasta própria (harbour/theme.toml) pode trazer os seus ícones em icons/16 e icons/24 (e, para imagens PNG, icons/32 e icons/48, usados num ecrã com escala de 150 % e mais), cada um nomeado para o que mostra (tb-add-url.svg, cat-music.png…). Os ficheiros SVG e PNG mantêm as suas cores; os ficheiros -symbolic.svg e -symbolic.png, como o GNOME e o KDE os nomeiam, assumem a cor do texto do tema. Um ícone que o conjunto não tem é desenhado como o aspeto clássico o desenha. A lista completa de nomes está em themeicons.rs (NEEDS).
Criar um
- Ver → Tema → Abrir pasta de temas, e crie um novo ficheiro
.tomllá (qualquer editor de texto). - Comece pelo exemplo acima: altere as cores das sementes e, em seguida, adicione funções e tamanhos à medida que avança.
- Selecione-o em Ver → Tema e observe ambos os lados: Ver → Sempre escuro ativado e desativado. Verifique se o texto é legível e a marca de foco visível em ambos.
A página de Temas do site tem um prompt que pode dar a um assistente de IA, com o formato, todas as chaves e as regras, para escrever um tema para si a partir de uma descrição.
Partilhe-o
Fez algo que outros gostariam? Abra um pull request que o adicione a crates/app/assets/themes, com:
- o ficheiro
.tomle a sua pasta de ícones, se tiver uma; - capturas de ecrã da janela principal nos seus lados claro e escuro;
- a
SOURCES.txtbeside any icons, saying who drew them and under which licence. Icons must be your own or under a licence that lets GDM share them (GPL-3.0), never copied from another program.
Ainda não tem a certeza? Mostre-o primeiro nas discussões. O ficheiro CONTRIBUTING.md explica como funcionam os pedidos de pull aqui.
Próximos passos
Gratuito, de código aberto, sem anúncios, sem período de avaliação.
Download GolinksPRO Download Manager