Kitty 0.50 traz restauração de sessão e janelas encaixáveis
Linux Notícias Open Source Software Software livre Tecnologia

Kitty 0.50 traz restauração de sessão e janelas encaixáveis

Kitty 0.50 traz melhorias importantes como restauração automática de sessões, janelas encaixáveis para melhor organização, suporte ao toque no Wayland e otimização na gestão de abas, oferecendo um terminal mais eficiente e prático para usuários que buscam produtividade.

O já está disponível e traz uma série de novidades para um dos emuladores de terminal mais conhecidos do ecossistema Linux. A atualização se destaca pela introdução da restauração automática de sessões, pelo suporte a janelas acopláveis e pelas melhorias no gerenciamento de abas e na integração com o Wayland.

Desenvolvido para oferecer alto desempenho por meio da aceleração gráfica da GPU, o é utilizado por desenvolvedores, administradores de sistemas e usuários que precisam de um terminal rápido, personalizável e com recursos avançados.

Com a nova versão, o programa passa a oferecer mais flexibilidade na organização do ambiente de trabalho. Também ganha recursos que ajudam a preservar o contexto das atividades após reinicializações e encerramentos de sessão.

Outro destaque é a atenção dedicada à segurança. O Kitty 0.50 corrige uma falha relacionada à autenticação do controle remoto, além de resolver problemas de gerenciamento de memória que poderiam comprometer a estabilidade do aplicativo.

Restauração automática de sessões é uma das principais novidades

Uma das funcionalidades mais interessantes do Kitty 0.50 é a possibilidade de restaurar automaticamente as sessões após o usuário encerrar sua sessão no sistema, reiniciar ou desligar o computador.

O novo recurso é controlado pela opção restore_session_after_logout, que pode ser ativada no arquivo de configuração do terminal.

Para habilitar a funcionalidade, basta adicionar a seguinte linha ao arquivo kitty.conf:

restore_session_after_logout yes

Com essa configuração ativada, o Kitty salva o estado de suas instâncias quando o ambiente gráfico informa que o usuário está prestes a encerrar a sessão.

As informações preservadas incluem as janelas abertas, as abas, a posição e o tamanho das janelas do sistema operacional, além do histórico de comandos e textos exibidos no terminal (scrollback).

Isso significa que, depois de iniciar o computador novamente e abrir o Kitty, o usuário poderá recuperar boa parte do ambiente de trabalho que estava utilizando anteriormente.

O recurso é especialmente útil para desenvolvedores que trabalham com vários terminais simultaneamente, administradores que mantêm diferentes conexões SSH abertas e usuários que organizam suas atividades em diversas abas.

No Linux, a restauração automática depende de um portal de desktop compatível com o mecanismo Inhibit, versão 3. Esse recurso permite que os aplicativos sejam avisados quando o sistema está prestes a encerrar a sessão.

No macOS, as informações salvas são protegidas por criptografia associada ao chaveiro do sistema.

É importante destacar que a restauração não significa necessariamente que todos os programas em execução serão iniciados novamente. O Kitty recupera o histórico e a estrutura das janelas, mas não reinicia automaticamente aplicativos que estavam sendo executados dentro delas, além do shell.

Essa decisão evita que comandos potencialmente perigosos sejam executados novamente sem a intervenção do usuário.

Janelas acopláveis permitem criar ambientes mais organizados

Outra novidade importante do Kitty 0.50 é o suporte a janelas acopláveis, conhecidas como dockable windows.

O recurso permite posicionar janelas adicionais nas bordas de outras janelas ou abas, criando áreas auxiliares que permanecem associadas ao ambiente principal.

Na prática, isso abre novas possibilidades de organização do terminal.

Um desenvolvedor, por exemplo, pode manter um terminal principal para executar comandos e utilizar uma janela acoplada para exibir informações de monitoramento, uma árvore de arquivos ou outro shell.

As janelas acopladas podem acompanhar a janela à qual estão vinculadas. Quando a janela principal muda de aba, o painel associado também acompanha essa movimentação. Da mesma forma, o fechamento da janela principal encerra o painel correspondente.

O recurso pode ser utilizado por meio dos seguintes comandos:

kitty @ launch --type=window-dock

Para criar uma janela acoplada à aba, existe também:

kitty @ launch --type=tab-dock

Essa funcionalidade torna o Kitty mais interessante para quem gosta de trabalhar com vários painéis simultaneamente, sem precisar organizar manualmente diversas janelas independentes na área de trabalho.

As janelas acopláveis também são preservadas nos arquivos de sessão, facilitando a recuperação de ambientes personalizados.

Gerenciamento de abas ganha recursos de espaços de trabalho

O gerenciamento de abas também recebeu melhorias importantes.

A partir da versão 0.50, o Kitty permite utilizar abas de maneira semelhante a espaços de trabalho identificados por nomes.

Isso facilita a organização de diferentes projetos ou atividades dentro de uma mesma instância do terminal.

Por exemplo, um usuário pode manter uma aba chamada Desenvolvimento, outra chamada Servidor e uma terceira chamada Estudos. Cada uma pode reunir suas próprias janelas e comandos.

Entre as novidades está a opção --focus-existing, utilizada para direcionar o foco para uma janela ou aba que já existe, em vez de criar uma nova.

Outro recurso permite organizar as abas alfabeticamente de acordo com seus títulos, utilizando o novo valor by-title na opção launch --location.

Também ficou mais fácil mover janelas para abas identificadas por nomes. Caso a aba de destino ainda não exista, o Kitty poderá criá-la automaticamente.

Essas mudanças ajudam a reduzir a quantidade de janelas abertas e tornam a navegação mais organizada, principalmente em ambientes com vários projetos simultâneos.

Wayland recebe suporte aprimorado para telas sensíveis ao toque

Os usuários de Linux que utilizam o protocolo Wayland também encontram novidades no Kitty 0.50.

A atualização introduz suporte a interações por toque, incluindo:

  • Toque na tela para simular cliques do mouse.
  • Rolagem com efeito de inércia (momentum scrolling).
  • Seleção de textos utilizando gestos de toque.

Esses recursos ampliam as possibilidades de utilização do terminal em dispositivos com telas sensíveis ao toque.

Outra melhoria envolve as decorações das janelas controladas pelo próprio aplicativo, conhecidas como client-side decorations.

Em ambientes gráficos como o GNOME, essas decorações passam a respeitar melhor as configurações do desktop, incluindo fontes da barra de título, escala de texto, organização dos botões e comportamento dos cliques na barra superior.

O objetivo é oferecer uma experiência visual mais consistente com o restante do ambiente gráfico.

Novos efeitos visuais para o cursor

O Kitty 0.50 também amplia os recursos de personalização gráfica introduzidos na série 0.49.

A atualização adiciona três novos shaders para criar efeitos animados durante a movimentação do cursor:

  • cursor-trail-railgun
  • cursor-trail-torpedo
  • cursor-trail-pixiedust

Esses efeitos adicionam partículas e animações ao movimento do ponteiro, permitindo personalizar a aparência do terminal.

Outra novidade é a possibilidade de associar shaders a atalhos de teclado. Com isso, o usuário pode ativar ou controlar determinados efeitos sem precisar modificar manualmente as configurações.

Os controles de animação também foram ampliados e agora permitem trabalhar com efeitos de desaparecimento gradual (fade), inversão e repetição em loop.

Embora sejam recursos principalmente visuais, essas opções demonstram a flexibilidade do Kitty para quem gosta de personalizar o ambiente de trabalho.

Melhorias gráficas e suporte a imagens

O processamento de imagens no terminal também recebeu aprimoramentos.

O Kitty 0.50 adiciona dois novos formatos de imagens com cores indexadas, permitindo utilizar diretamente a paleta de cores configurada no terminal.

Uma vantagem desse comportamento é que as cores das imagens podem acompanhar automaticamente a mudança de tema.

Assim, ao alternar entre diferentes esquemas de cores, determinados elementos gráficos também podem ser atualizados para manter a consistência visual.

A atualização ainda melhora a renderização e reduz oscilações visuais causadas por aplicativos que atualizam repetidamente pequenas partes da tela.

Esse tipo de otimização é importante para programas que trabalham com interfaces de texto dinâmicas, painéis de monitoramento e ferramentas interativas executadas diretamente no terminal.

Novo suporte ao Program Status Protocol

Outra novidade técnica é a implementação do Program Status Protocol (PSP).

Esse mecanismo permite que aplicativos informem ao terminal o estado atual de sua execução.

Entre os estados que podem ser comunicados estão:

  • Programa em execução.
  • Programa finalizado.
  • Programa encerrado com erro.
  • Programa aguardando uma ação do usuário.

O Kitty pode apresentar essas informações diretamente na barra de abas.

Isso facilita a identificação de tarefas que terminaram, processos que apresentaram problemas ou programas que ainda precisam de alguma interação.

Para quem executa várias tarefas simultaneamente, esse recurso pode ajudar a acompanhar o andamento dos trabalhos sem precisar alternar constantemente entre todas as janelas.

Correções de segurança e estabilidade

Além dos novos recursos, o Kitty 0.50 inclui correções importantes de segurança.

Uma das principais resolve uma falha no mecanismo de autenticação do controle remoto, que poderia permitir que uma solicitação especialmente preparada contornasse a autenticação por senha.

Esse problema merece atenção porque o recurso de controle remoto permite que processos externos enviem comandos ao Kitty para gerenciar janelas e executar determinadas operações.

A atualização também corrige problemas relacionados à segurança da memória, incluindo:

  • Estouro de buffer no heap (heap buffer overflow).
  • Escrita fora dos limites de memória (out-of-bounds write).
  • Uso de memória após sua liberação (use-after-free) durante o recarregamento das configurações.

Falhas desse tipo podem provocar encerramentos inesperados e, dependendo das circunstâncias, representar riscos de segurança.

Outras correções envolvem travamentos no Wayland, problemas de renderização, conexões SSH, transferências de arquivos, operações de arrastar e soltar e notificações do ambiente gráfico.

No Linux, as notificações também passaram a identificar corretamente o arquivo desktop do Kitty. Isso permite que ambientes gráficos como o KDE Plasma agrupem as notificações de maneira mais adequada.

Vale a pena atualizar para o Kitty 0.50?

O Kitty 0.50 é uma atualização interessante tanto para usuários comuns quanto para profissionais que dependem do terminal em suas atividades diárias.

A restauração automática de sessões é uma das melhorias mais práticas, pois reduz o trabalho necessário para reconstruir um ambiente de desenvolvimento após reinicializações ou encerramentos de sessão.

As janelas acopláveis também representam um avanço importante, especialmente para quem trabalha com monitoramento, desenvolvimento de software e administração de servidores.

Já as melhorias no Wayland, os novos recursos gráficos e as correções de segurança tornam o lançamento ainda mais relevante.

Para quem já utiliza o Kitty, vale conferir as novidades e verificar a disponibilidade da versão 0.50 nos canais de distribuição utilizados pelo sistema.

Para obter mais informações, consulte o changelog.

Conclusão

Com o Kitty 0.50, o emulador de terminal dá mais um passo para oferecer um ambiente de trabalho flexível, personalizável e eficiente. A possibilidade de restaurar sessões automaticamente, organizar janelas acopláveis e gerenciar abas como espaços de trabalho torna o aplicativo ainda mais interessante para quem utiliza o terminal intensivamente.

Somadas às melhorias no Wayland e às correções de segurança, as novidades fazem desta uma atualização relevante para o ecossistema Linux e para os usuários de outros sistemas compatíveis.

Key Takeaways

  • Kitty 0.50 foi lançado e traz novidades importantes como restauração automática de sessões (opção restore_session_after_logout), que salva janelas, abas, posições e scrollback para recuperar o ambiente após logout/reinício (depende do portal Inhibit no Linux; macOS usa chaveiro criptografado), sem reexecutar automaticamente programas.
  • Introduz suporte a janelas acopláveis (dockable windows), permitindo painéis vinculados a janelas/abas principais (comandos kitty @ launch --type=window-dock e --type=tab-dock) que acompanham mudanças de aba e são preservadas nas sessões.
  • Gerenciamento de abas melhorado com conceitos de espaços de trabalho nomeados, opção --focus-existing, ordenação por título (launch --location by-title) e criação automática de abas de destino, facilitando organização por projetos/atividades.
  • Suporte Wayland aprimorado para telas sensíveis ao toque (toque como clique, rolagem com inércia, seleção por gestos) e melhorias nas client-side decorations para respeitar configurações do desktop (fontes, escala, botões, comportamento da barra superior).
  • Correções de segurança e estabilidade (falha na autenticação do controle remoto, estouro de buffer, out-of-bounds write, use-after-free) e novidades gráficas e técnicas: novos shaders de cursor animado, suporte a formatos de imagem com cores indexadas e implementação do Program Status Protocol (PSP).

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.