Beautifier Bash - sformatuj Bash w przeglądarce, prawdziwy shfmt
Bash dostaje pełny reformat w przeglądarce, nie tylko poprawione wcięcia. Pod spodem chodzi **shfmt** (a shell formatter widely used in CI (POSIX sh / bash / mksh)) - to oryginalny kompilator-formater skompilowany do WebAssembly. Ten sam, którego używasz w terminalu / w CI.
Co to oznacza w praktyce: łamie długie linie (max 100 znaków domyślnie), normalizuje wcięcia (tab / 2 / 4 spacje - wybierasz), normalizuje spacje wokół operatorów, wyrównuje argumenty w wywołaniach funkcji, respektuje konwencje języka (np. `if (x)` vs `if(x)`). To jest dokładnie to, co robi `Format Document` w VS Code dla Bash z oficjalnym rozszerzeniem.
Akceptuje pliki .sh, .bash. Wszystko idzie w twojej przeglądarce - kod nie wychodzi z twojej maszyny, brak uploadu, brak logów po stronie serwera. WASM-binarny pakiet ładuje się leniwie przy pierwszym kliknięciu (60-300 kB), kolejne formaty są natychmiastowe.
shfmt to najpopularniejszy formater shellowy w 2026 - używany przez większość pipeline-ów CI (GitHub Actions, GitLab CI, Drone). Domyślnie 2 spacje (POSIX sh recommended), `switch case` z indentem (przeciwnie do gołego bash defaults), spacja po `>` w redirectach. Działa dla bash, POSIX sh, mksh, busybox sh.
Jak to działa
- Wybierz tryb (Grzeczny / Agresywny / Tylko wcięcia) lub zostaw domyślny.
- Wklej kod w lewy panel albo użyj "Wczytaj plik".
- Dostosuj ustawienia (koło zębate): wcięcie, szerokość, cudzysłowy, średniki.
- Kliknij Sformatuj - pierwszy raz potrwa chwilę (libki ładują się leniwie).
- Po prawej dostajesz wynik z syntax highlightingiem - kopiuj, pobierz albo otwórz w nowej karcie.
Kiedy się przydaje
Pięć typowych sytuacji dla Bash:
- Pretty-print zminifikowanego źródła. Wkleiłeś kod od kolegi / z PDF-a / z bloga i ma rozjechane wcięcia. shfmt robi pełen reformat w sekundę.
- PR review. Kod do code review ma swój styl - shfmt narzuca oficjalny styl języka, więc code review przestaje krzyczeć o whitespace.
- Konwersja tabów na spacje (albo odwrotnie). `.editorconfig` w jednym projekcie mówi 4 spacje, w innym 2 - przełączasz w ustawieniach.
- Sprawdzenie składni. Jeśli shfmt odrzuci kod z błędem parsowania, znaczy że masz literówkę składniową - szybki sanity check przed odpaleniem build-a.
- Podgląd z syntax highlightingiem. Po sformatowaniu dostajesz kolorowany podgląd (silnik Shiki, te same gramatyki, co w VS Code).