CLI, automação e desktop Linux
Gistbar
Plugin para o Noctalia Shell que traz os meus gists do GitHub para a barra: busca por descrição, nome de arquivo, linguagem e conteúdo, cópia pelo teclado, gist novo a partir da área de transferência, prévia e edição, tudo pelo gh CLI.
O problema
São 95 gists acumulados, e achar um trecho exigia abrir o GitHub, lembrar em qual gist ele estava e copiar à mão. Criar um gist novo com o que estava na área de transferência também passava pelo navegador.
Decisões técnicas
Plugin do próprio shell, na mesma arquitetura e no mesmo kit visual do Daybar: a lógica em funções JavaScript puras testadas com Vitest, o QML só como tela. Todo acesso ao GitHub passa pelo gh CLI, então o plugin nunca toca num token, e o conteúdo vai por stdin, nunca pela linha de comando. A busca ignora acento e cobre o conteúdo, que é o motivo de um gist existir, mas descrição e nome de arquivo pesam mais. O conteúdo fica em cache local com permissão 0600 e só é baixado de novo quando o gist muda. Gist novo nasce secreto, porque publicar por engano é a pior falha possível aqui.
Resultado
Uso próprio no meu desktop com CachyOS, publicado em licença MIT, com 151 testes. Testado no Noctalia 4.7.7; o port para o Noctalia v5 está planejado.
Atalhos
- Mod + G
- abre a busca de gists
- Mod + Ctrl + G
- cria um gist a partir da área de transferência
- ↑/↓
- navega pela lista
- Enter
- copia o primeiro arquivo do gist
- Shift + Enter
- copia o link do gist
- Esc
- limpa a busca
- Ctrl + E
- edita a descrição e o arquivo aberto na prévia
- Ctrl + S
- salva a edição no GitHub
Imagens
