Elixir má úžasnou výhodu díky svému jednotnému formátování kódu. Formátovač kódu mimo jiné upraví závorky, mezery, oddělí bloky kódu prázdnými řádky atd. Přehled těchto pravidel je sepsaný v Elixir Style Guide. V něm najdete i další dobrá doporučení pro psaní kódu: jakým stylem pojmenovávat funkce a proměnné, jak psát komentáře, jak používat pipe operátor atd. (Více o formátování a udržování čistého kódu v příspěvku Hygiena).

Já jsem vlastně jiný přístup nezažila, takže mi připadá jako samozřejmost, že formátování vůbec nemusím řešit - jen stisknu klávesovou zkratku. Lze nastavit i automatické formátování při uložení souboru (např. ve VS Code).

V jednom projektu jsem pro kontrolu formátování chtěla použít GitHub actions. Sama jsem je ještě nikdy nenastavovala, ale klikání se nebojím, tak jsem rovnou zkusila, co najdu na GitHubu v menu repozitáře pod položkou Actions:

GitHub actions: Suggested for this repository

Ha! Rovnou mi to nabízí Elixir :-) A pod tlačítkem Configure pak .yml soubor se základním nastavením. Na jeho konec jsem tedy jen podle vzoru v souboru přidala tento příkaz:

  - name: Check formatting
    run: mix format --check-formatted

Tlačítkem Start commit pak lze rovnou z webového rozhraní vytvořit commit s touto konfigurací. V tomto případě soubor .github/workflows/elixir.yml. Workflow lze vytvořit i “ručně” (viz detailní návod na GitHubu).

Pokud se chcete pochlubit, jak vám vše funguje, můžete použít workflow status badge. Jeho kód lze vygenerovat na GitHubu v menu daného repozitáře: Actions |> příslušné workflow (např. Elixir CI) |> třítečkové menu vpravo |> Create status badge. Nebo vytvořit podle návodu. Pak už stačí jen vložit daný kód do README projektu.

System working? Seems to be