flowral.docs

Fish, Neovim, WezTerm e comandos úteis

Fish por padrão interativo

Fish suporta nativamente autosuggestion, highlighting, tab completion e histórico. Não instalar plugins redundantes sem necessidade. Manter /bin/sh e shells POSIX para scripts, init e instaladores; Fish não é POSIX.

Abbreviations em vez de aliases ocultos: expansão fica visível antes de executar. Config em ~/.config/fish/conf.d/flowral.fish sem sobrepor dotfiles pessoais sem backup.

if status is-interactive
  abbr -a gst 'git status'
  abbr -a gsw 'git switch'
  abbr -a gco 'git checkout'
  abbr -a gpl 'git pull'
  abbr -a gps 'git push'
  abbr -a v 'nvim'
  abbr -a xi 'sudo xbps-install -S'
  abbr -a xr 'sudo xbps-remove -R'
  abbr -a xu 'sudo xbps-install -Syu'
  abbr -a xs 'xbps-query -Rs'
  abbr -a xo 'sudo xbps-remove -o'
  abbr -a fi 'flatpak install --user flathub'
  abbr -a fr 'flatpak uninstall --user'
  abbr -a fu 'flatpak update --user'
  abbr -a fl 'flatpak list --user --app'
  abbr -a pps 'podman ps'
end

Não criar atalhos perigosos com -y automático para apagar pacotes/discos. Para AppImage, usar subcomandos próprios flowral appimage install/remove/list/update ou funções seguras que copiam para ~/Applications, geram/removem .desktop apenas sob confirmação, checam SHA e validam paths; arquivo AppImage isolado não é instalação gerenciada pelo XBPS.

WezTerm

  • Principal terminal; sem titlebar, mas manter resize via compositor. A documentação do WezTerm recomenda window_decorations="RESIZE" em vez de "NONE" quando se deseja somente remover o título; testar ambos com Swirl.
  • Tema injetado por require('flowral-theme') ou Lua gerado; tokens de cursor, texto, paleta ANSI 16, seleção, tab bar.
  • Desativar tab bar quando irrelevante/única tab; suporte a font fallback e ligaturas configurável; profile acessível para GPU antiga.
  • Atalhos previamente desejados: Ctrl+Shift+V (split vertical), Ctrl+Shift+H (split horizontal), Ctrl+Shift+[ e Ctrl+Shift+] (resize). Verificar conflitos com colar clipboard e binds por padrão antes de publicar.
-- ~/.wezterm.lua — exemplo para teste
local wezterm = require 'wezterm'
local config = wezterm.config_builder()
config.window_decorations = 'RESIZE'
config.color_scheme = 'Builtin Solarized Dark' -- substituído por Flowral adaptador
return config

Neovim — sem LSP obrigatório

Função Escolha inicial Carregamento
Plugins vim.pack (se versão permitir) ou mini.deps no start
Highlight nvim-treesitter conforme linguagens lazy por filetype
Completion nvim-cmp + cmp-buffer + cmp-path lazy em insert
Snippets mini.snippets (opcional) lazy
File navigation netrw embutido ou oil.nvim sob demanda
Busca fzf + ripgrep sob demanda
Markdown render-markdown.nvim ou markview.nvim só markdown
Colors palette Flowral em Lua on demand ao tema

Sem servidor LSP obrigatório; completion buffer/path não fornece type checking, rename semântico, jump-to-definition confiável. Manter opção explícita de instalar LSP por linguagem depois.

Markdown enriquecido

Renderização de headers, tabelas, callouts, código, checkbox, links; tecla para alternar visual enriquecido ↔ texto cru, especialmente útil para edições precisas; performance com arquivos longos, opção sem conceal/reduced-motion.

Theme integration TUI

ANSI 16 cores no WezTerm cobre ferramentas sem configuração própria; adapters específicos para Fish, Neovim, OpenCode TUI e demais TUIs apenas se versões suportarem. Registry de plugins de tema indica supported, partial, unsupported por versão.

Qualidade

Medir start Fish e Neovim com/s em plugins; 0 erro com fish -n; Neovim --headless; WezTerm parse da config e experiência no hardware alvo. Testar aliases perigosos com confirmação.