Skip to content
| Marketplace
Sign in
Visual Studio Code>Themes>Extensão do AronNew to Visual Studio Code? Get it now.
Extensão do Aron

Extensão do Aron

Aron Alvarenga

|
5 installs
| (1) | Free
Conforto visual, leitura ergonômica, temas Kindle e pausas para descanso ocular.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Extensão do Aron

Extensão para Visual Studio Code e Cursor focada em conforto visual, leitura de código e ergonomia durante sessões longas de programação. Combina temas de baixo brilho inspirados em leitores digitais, tipografia configurável, modo de foco por bloco semântico e lembretes de pausa ocular.

Versão: 0.2.0
Requisito: VS Code 1.85.0 ou superior


Sumário

  1. Visão geral
  2. Instalação
  3. Início rápido
  4. Comandos
  5. Atalhos de teclado
  6. Modo Leitura
  7. Foco por bloco semântico
  8. Temas incluídos
  9. Tipografia
  10. Saúde visual e ergonomia
  11. Painel de Controle
  12. Configurações
  13. Desenvolvimento local
  14. Empacotamento e publicação
  15. Solução de problemas
  16. Licença

Visão geral

A extensão foi pensada para reduzir o cansaço visual em sessões prolongadas de codificação. Enquanto estiver ativa, ela aplica JetBrains Mono como fonte padrão do editor (configurável). O Modo Leitura concentra a interface no conteúdo: oculta elementos de distração, ajusta tipografia, limita a largura da coluna de texto e destaca o bloco de código em uso.

Principais recursos:

  • Modo Leitura com layout simplificado e restauração de configurações
  • Três temas: Warm Light, Warm Light Night e Sepia Dark
  • Foco visual por linha ou por bloco semântico (função, tag HTML, regra CSS)
  • Timer da regra 20-20-20 com overlay de pausa
  • Lembretes de postura e limite de sessão contínua
  • Presets tipográficos e modo dedicado para Markdown
  • Painel de Controle com ajustes visuais e estatísticas de pausas

Instalação

A partir do código-fonte (desenvolvimento)

git clone <url-do-repositorio>
cd aron_extension
npm install
npm run compile

No VS Code ou Cursor, abra a pasta do projeto e pressione F5 para iniciar a janela de desenvolvimento da extensão.

Marketplace (quando publicada)

  1. Abra a aba Extensions (Ctrl+Shift+X)
  2. Pesquise por Extensão do Aron
  3. Clique em Install

Início rápido

  1. Com a extensão carregada, a fonte JetBrains Mono será aplicada automaticamente (é necessário tê-la instalada no sistema).
  2. Pressione Ctrl+Shift+Z para ativar o Modo Leitura.
  3. Pressione Ctrl+Shift+A para abrir o Painel de Controle.
  4. Clique em Aron na barra de status para abrir o menu rápido de comandos.
  5. Para sair do Modo Leitura, use novamente Ctrl+Shift+Z ou o comando Restaurar Configurações.

Comandos

Todos os comandos estão disponíveis na Command Palette (Ctrl+Shift+P) com o prefixo Extensão do Aron.

Comando Descrição
Alternar Modo Leitura Ativa ou desativa o Modo Leitura
Menu Rápido Lista os comandos principais em um seletor
Painel de Controle Abre a interface visual de configuração
Aplicar Warm Light Aplica o tema claro amarelado
Aplicar Warm Light Night Aplica o tema claro noturno (luz baixa)
Aplicar Sepia Dark Aplica o tema escuro sépia
Aplicar Tema Pôr do Sol Alterna entre Warm Light e Warm Light Night conforme o horário
Iniciar Pausa Ocular Inicia manualmente uma pausa da regra 20-20-20
Preset Tipográfico Conforto Fonte levemente maior, altura de linha 1.6
Preset Leitura Longa Fonte maior, altura de linha 1.85, quebra de linha ativa
Preset Código Denso Altura de linha compacta, quebra de linha desativada
Modo Leitura Markdown Ativa leitura focada em arquivos .md com preview lateral
Criar Perfil Recomendado Aplica configurações base e orienta a criação de um Profile do VS Code
Restaurar Configurações Reverte alterações feitas pela extensão

Atalhos de teclado

Atalho Ação
Ctrl+Shift+Z Alternar Modo Leitura
Ctrl+Shift+A Abrir Painel de Controle

No macOS, substitua Ctrl por Cmd.


Modo Leitura

O Modo Leitura reorganiza o ambiente de edição para priorizar leitura e concentração.

O que muda ao ativar

  • Activity bar, status bar, minimap e breadcrumbs são ocultados
  • Sidebar, painel inferior e barra auxiliar são fechados
  • Tamanho da fonte recebe um incremento configurável (fontSizeBoost)
  • Altura de linha, quebra de linha e largura máxima de coluna são ajustadas
  • Layout centralizado do editor é ativado (zenMode.centerLayout)
  • Tema da extensão pode ser aplicado automaticamente (autoSelectTheme)
  • Foco visual e dimming de código externo ao bloco ativo
  • Timer de pausa ocular (se configurado para o Modo Leitura)

O que é restaurado ao desativar

Todas as configurações capturadas antes da ativação são gravadas e restauradas ao sair do modo, incluindo layout, tipografia, tema e personalizações de cor. A sidebar pode ser reaberta automaticamente conforme as opções de restauração.

Persistência entre recargas

O estado do Modo Leitura é salvo internamente. Se a extensão for recarregada durante o desenvolvimento (F5), o toggle continua reconhecendo que o modo está ativo e permite desativá-lo corretamente.


Foco por bloco semântico

Por padrão, o foco visual usa o modo smart: a extensão consulta o Selection Range Provider do VS Code (a mesma base do comando Expand Selection) para identificar o bloco que contém o cursor e escurece o restante do arquivo.

Escopos disponíveis (focusScope)

Valor Comportamento
line Destaca apenas a linha do cursor
block Destaca o bloco semântico (função, tag, regra CSS, etc.)
smart Usa bloco quando couber nos limites configurados; caso contrário, usa linha

Limites de bloco

  • focusBlockMinLines (padrão: 2): blocos menores que isso são ignorados
  • focusBlockMaxLines (padrão: 80): blocos maiores fazem o modo smart voltar para linha

Compatibilidade

Funciona nas linguagens com suporte a Selection Range no VS Code/Cursor (TypeScript, JavaScript, HTML, CSS, JSON, entre outras). Em linguagens sem suporte, o fallback é o foco por linha.


Temas incluídos

Extensão do Aron Warm Light

Tema claro com paleta amarelada inspirada em papel e leitores digitais. Fundo #E5D9B4, contraste suave, syntax highlighting em tons quentes. A intensidade amarelada e o nível de contraste podem ser ajustados via configuração.

Extensão do Aron Warm Light Night

Variante mais escura do Warm Light, indicada para leitura noturna com luz baixa. Mantém a base amarelada, porém com luminosidade reduzida.

Extensão do Aron Sepia Dark

Tema escuro com tons sépia e cinza quente. Indicado para ambientes com pouca luz, com emissão reduzida de luz azul em relação a temas escuros convencionais.

Ajustes dinâmicos

Configuração Efeito
warmLightIntensity (0 a 100) Controla o quanto o fundo pende para o amarelo
contrastLevel (low, medium, high) Ajusta contraste do texto e syntax
autoSunsetMode Alterna Warm Light e Warm Light Night após sunsetHour
syncWithSystemTheme Aplica Warm Light ou Sepia Dark conforme o tema do sistema
autoThemeByFileType Aplica Warm Light em arquivos de leitura (.md, .txt, .rst)

Por padrão, autoApplyTheme está desligado: os temas só são aplicados manualmente ou ao entrar no Modo Leitura (se autoSelectTheme estiver ativo).


Tipografia

Fonte ativa com a extensão

Enquanto a extensão estiver carregada, o editor usa:

'JetBrains Mono', monospace

Instale a fonte no sistema operacional para garantir a renderização correta: JetBrains Mono

Fonte serifada (opcional)

Para leitura longa, é possível usar Merriweather, Literata ou Georgia:

  • useSerifInReadingMode: serifada no Modo Leitura
  • useSerifInMarkdownMode: serifada no modo Markdown (padrão: ativo)

Presets tipográficos

Preset Font Size Line Height Word Wrap
Conforto +1 px 1.6 on
Leitura longa +3 px 1.85 on
Código denso +0 px 1.35 off

Os presets podem ser aplicados independentemente do Modo Leitura.


Saúde visual e ergonomia

Regra 20-20-20

A cada restIntervalMinutes (padrão: 45 minutos), a extensão sugere uma pausa ocular: olhar para um ponto distante por restDurationSeconds (padrão: 20 segundos).

Com enableRestOverlay ativo, a pausa exibe um overlay em tela cheia com contagem regressiva.

O timer pode ficar sempre ativo (enableRestTimerAlways) ou apenas no Modo Leitura (enableRestTimerInZenMode).

Lembrete de postura

Com enablePostureReminder, um aviso periódico (postureIntervalMinutes, padrão: 60) sugere levantar e alongar.

Limite de sessão

Com enableSessionLimit, após sessionLimitMinutes (padrão: 90) de codificação contínua, a extensão recomenda uma pausa.

Estatísticas

O Painel de Controle exibe o número de pausas realizadas no dia e o total acumulado.


Painel de Controle

Abra com Ctrl+Shift+A ou pelo comando Painel de Controle.

O painel oferece:

  • Atalhos para Modo Leitura, temas e pausa ocular
  • Slider de intensidade do Warm Light
  • Seletor de nível de contraste
  • Estatísticas de pausas oculares

A interface utiliza ícones da biblioteca Phosphor Icons no webview interno.


Configurações

Todas as configurações ficam em Settings > Extensão do Aron ou no settings.json com o prefixo extensaoDoAron..

Tipografia e fonte

Chave Padrão Descrição
readingFontFamily 'JetBrains Mono', monospace Fonte aplicada com a extensão ativa
readingSerifFontFamily 'Merriweather', 'Literata', Georgia, serif Fonte serifada para leitura
enableFontLigatures true Ligaduras tipográficas
fontSizeBoost 2 Incremento de fonte no Modo Leitura (px)
lineHeight 1.7 Altura de linha no Modo Leitura
maxColumnWidth 80 Largura máxima da coluna (caracteres)

Temas

Chave Padrão Descrição
autoApplyTheme false Aplica tema ao carregar a extensão
autoSelectTheme true Aplica tema ao entrar no Modo Leitura
autoSunsetMode false Alternância automática por horário
sunsetHour 19 Hora de início do modo noturno quente
syncWithSystemTheme false Sincroniza com tema claro/escuro do SO
warmLightIntensity 50 Intensidade amarelada (0 a 100)
contrastLevel medium Contraste: low, medium, high
autoThemeByFileType false Tema por tipo de arquivo
readingFileExtensions ["md","txt","rst"] Extensões de leitura
codeFileExtensions ["ts","tsx","js","jsx","py","rs","go"] Extensões de código

Modo Leitura e foco

Chave Padrão Descrição
enableFocusMode true Destaque do bloco ativo
enableLineDimming true Escurece código fora do foco
focusScope smart Escopo: line, block, smart
focusBlockMinLines 2 Mínimo de linhas do bloco
focusBlockMaxLines 80 Máximo de linhas do bloco
useSerifInReadingMode false Serifada no Modo Leitura
useSerifInMarkdownMode true Serifada no modo Markdown
reduceMotion true Reduz animações do VS Code

Restauração de layout

Chave Padrão Descrição
restoreSidebarOnExit true Reabre sidebar ao sair
restorePanelOnExit false Reabre painel inferior
restoreAuxiliaryBarOnExit false Reabre barra auxiliar
assumeSidebarVisible true Assume sidebar aberta antes do modo
assumePanelVisible false Assume painel aberto
assumeAuxiliaryBarVisible false Assume barra auxiliar aberta

Saúde visual

Chave Padrão Descrição
enableRestTimerAlways true Timer 20-20-20 sempre ativo
enableRestTimerInZenMode true Timer no Modo Leitura (se always off)
restIntervalMinutes 45 Intervalo entre lembretes (min)
restDurationSeconds 20 Duração da pausa (s)
enableRestOverlay true Overlay na pausa ocular
enablePostureReminder true Lembrete de postura
postureIntervalMinutes 60 Intervalo de postura (min)
enableSessionLimit true Aviso de sessão longa
sessionLimitMinutes 90 Limite de sessão (min)

Exemplo de settings.json

{
  "extensaoDoAron.readingFontFamily": "'JetBrains Mono', monospace",
  "extensaoDoAron.focusScope": "smart",
  "extensaoDoAron.fontSizeBoost": 2,
  "extensaoDoAron.autoApplyTheme": false,
  "extensaoDoAron.autoSelectTheme": true,
  "extensaoDoAron.warmLightIntensity": 50,
  "extensaoDoAron.restIntervalMinutes": 45,
  "extensaoDoAron.enableRestOverlay": true
}

Desenvolvimento local

Pré-requisitos

  • Node.js 20 ou superior
  • npm 9 ou superior
  • VS Code ou Cursor 1.85+

Scripts

npm install          # Instala dependências
npm run compile      # Compila TypeScript
npm run watch        # Compilação contínua
npm run package      # Gera arquivo .vsix

Depuração

  1. Abra a pasta do projeto no editor
  2. Pressione F5
  3. Na janela Extension Development Host, teste os comandos da extensão

A configuração de launch está em .vscode/launch.json.

Estrutura do projeto

aron_extension/
├── src/
│   ├── extension.ts          # Ponto de entrada
│   ├── zenMode.ts            # Modo Leitura
│   ├── focusMode.ts          # Foco por bloco/linha
│   ├── themeService.ts       # Temas e ajustes de cor
│   ├── restTimer.ts          # Pausas e lembretes
│   ├── controlPanel.ts       # Painel webview
│   ├── typographyPresets.ts  # Presets tipográficos
│   ├── markdownReading.ts    # Modo Markdown
│   └── ...
├── themes/
│   ├── warm-light.json
│   ├── warm-light-night.json
│   └── sepia-dark.json
├── package.json
└── tsconfig.json

Empacotamento e publicação

Gerar pacote .vsix

npm run package

O arquivo será gerado na raiz do projeto.

Publicar na Marketplace

  1. Crie uma organização em Azure DevOps
  2. Gere um Personal Access Token com escopo Marketplace (Manage)
  3. Crie um Publisher em Marketplace Management
  4. Atualize o campo "publisher" em package.json
  5. Autentique e publique:
npx vsce login SEU_PUBLISHER
npx vsce publish

Solução de problemas

A fonte ficou grande demais após testes

Execute Extensão do Aron: Restaurar Configurações ou ajuste manualmente:

"editor.fontSize": 14

Se o zoom da janela também mudou, use Ctrl+0 para redefinir.

Não consigo sair do Modo Leitura

  1. Pressione Ctrl+Shift+Z para alternar
  2. Se persistir, use Restaurar Configurações
  3. Após recarregar a extensão (F5), o estado é recuperado automaticamente

Erro ao alterar configuração do editor

Algumas chaves (como editor.padding.left) não existem na API do VS Code/Cursor. A extensão usa alternativas compatíveis (wordWrapColumn, zenMode.centerLayout). Mantenha a extensão atualizada.

JetBrains Mono não aparece

Instale a fonte no sistema operacional. Sem ela, o editor usará a fallback monospace definida na configuração.

Foco por bloco não funciona em certos arquivos

Verifique se a linguagem possui Selection Range Provider. Use focusScope: "line" como alternativa.


Licença

Projeto de uso pessoal. Defina a licença conforme a publicação desejada (MIT, Apache 2.0, etc.).


Extensão do Aron · Conforto visual para quem passa horas no editor.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft