Editor de scripts shell para Termux com formatação automática, copia arquivo e análise de scripts via navegador.
android
automation
bash
editor
formatter
http
linter
nano
netcat
posix
script
scripting
sh
shell
shellcheck
shfmt
terminal
termux
tools
utility
- Shell 100%
- Use DIALECT='markdown' for .md files (already working) - Prevent shfmt from running on non-shell files (markdown, etc.) - Add case statements to skip shfmt for non-sh dialects - Ensure only shell dialects (sh, bash) trigger shfmt formatting |
||
|---|---|---|
| AGENTS.md | ||
| en | ||
| README.md | ||
📜 en - Editor de Scripts com Formatação Automática
📝 en é um editor de scripts shell para Termux que formata automaticamente seus scripts com shfmt e oferece uma ferramenta de análise via navegador com -c.
📦 Instalação
1. Instale as Dependências
pkg update && pkg upgrade -y
pkg install git nano shfmt shellcheck netcat-openbsd
2. Clone o Repositório
git clone https://git.disroot.org/BourneShell/en.git
cd en
3. Dê Permissão de Execução
chmod +x en
4. Instale Globalmente
cp en $PREFIX/bin/
✅ Após isso, o comando en estará disponível em qualquer diretório.
🚀 Como Usar
✏️ Editar um Script
en meu_script.sh
- 📄 Se o arquivo não existir, ele será criado
- 🎨 Se for um script shell (extensão
.sh,.bash,.dash,.libou com shebang), será formatado automaticamente comshfmt -i 1antes eshfmt -i 4depois da edição - 🔎 A syntax do nano é detectada automaticamente por extensão, shebang ou mapeamento (sh, python, javascript, yaml, html, etc.)
🌐 Gerar Análise HTML (-c)
en -c ~/caminho/para/meu_script.sh
Isso irá:
- Executar
shellcheck -s shno script - Gerar uma página HTML temporária com duas áreas de texto:
- 📋 Saída do ShellCheck
- 📝 Conteúdo do script
- Iniciar um servidor HTTP local na porta especificada (padrão 8080)
- Abrir a página no navegador
- Ao pressionar Enter, o servidor para e os arquivos temporários são removidos
⚠️ Importante: Use o caminho completo do arquivo para evitar ambiguidades, especialmente se estiver em outro diretório.
⚙️ Opções Disponíveis
| Opção | Descrição |
|---|---|
-h |
📖 Mostra ajuda |
-c |
🌐 Gera análise HTML e serve via HTTP |
-f |
💪 Força formatação mesmo que não seja script shell |
-n |
🚫 Não formata automaticamente |
-p porta |
🔌 Define porta do servidor (padrão: 8080) |
💡 Exemplos
Editar com formatação automática
en ~/scripts/backup.sh
Gerar análise e abrir no navegador
en -c ~/scripts/backup.sh
Usar porta diferente
en -c -p 9090 ~/scripts/backup.sh
Forçar formatação mesmo em arquivo .txt
en -f ~/scripts/README.txt
🔍 Como Funciona o Modo -c
O modo -c cria um 🌐 ambiente web temporário para você visualizar e copiar a análise do seu script:
- 🛡️ ShellCheck é executado e sua saída é capturada
- 📂 O conteúdo do script é lido
- 🎨 Ambos são inseridos em uma página HTML simples, com botões para copiar
- 🖥️ A página é servida via HTTP local (salva em
$PREFIX/tmp/en_serve/) - 🌍 Seu navegador padrão é aberto automaticamente
- 🧹 Após você pressionar Enter no terminal, tudo é limpo
✨ Utilidades
- 👁️ Revisar scripts com mais conforto
- 🤝 Compartilhar análises (copiando o conteúdo)
- ⚠️ Verificar warnings do ShellCheck sem sair do terminal
📋 Dependências
| Pacote | Função |
|---|---|
nano |
✏️ Editor (pode ser substituído por vim editando o script) |
shfmt |
🎨 Formatador de scripts |
shellcheck |
🛡️ Analisador estático |
netcat-openbsd |
🌐 Servidor HTTP leve |
🗂️ Estrutura
en/
├── 📜 en # Script principal (POSIX sh)
└── 📄 README.md # Este arquivo
📝 Nota: Sem arquivos de configuração - tudo é detectado automaticamente.