En aquest capítol es documenta l'estil de codi utilitzat a live systems.
15.1 Compatibilitat
No utilitzar una sintaxi o semàntica que sigui exclusiva de l'intèrpret d'ordres Bash. Per exemple, l'ús dels arrays.
Utilitzar només el subconjunt POSIX - per exemple, utilitzar $(foo) en lloc de `foo`.
Es pot comprovar els scripts amb 'sh -n' i 'checkbashisms'.
Assegurar-se que tot el codi funciona amb 'set -e'.
15.2 Indentació
Utilitzar sempre tabuladors en lloc d'espais.
15.3 Ajust de línia
En general, les línies són de 80 caràcters com a màxim.
Utilitzar "l'estil Linux" de salts de línia:
Mal:
if foo; then
bar
fi
Bé:
if foo
then
bar
fi
El mateix val per a les funcions:
Mal:
Foo () {
bar
}
Bé:
Foo ()
{
bar
}
15.4 Variables
Les variables van sempre en majúscules.
Les variables que s'utilitzen a live-build sempre comencen amb el prefix LB_
Les variables temporals internes de live-build comencen amb el prefix _LB_
Les variables locals comencen amb el prefix live-build__LB_
Les variables en relació a un paràmetre d'arrencada de live-config comencen amb LIVE_.
Totes les altres variables de live-config comencen amb el prefix _
Utilitzar claus al voltant de les variables, per exemple, escriure ${FOO} en lloc de $FOO.
Protegir sempre les variables amb cometes per a respectar els espais en blanc potencials: escriure "${FOO}" no ${FOO}.
Per raons de coherència, utilitzar sempre cometes al assignar valors a les variables:
Mal:
FOO=bar
Bé:
FOO="bar"
Si s'utilitzen múltiples variables, posar cometes a l'expressió completa:
Mal:
if [ -f "${FOO}"/foo/"${BAR}"/bar ]
then
foobar
fi
Bé:
if [ -f "${FOO}/foo/${BAR}/bar" ]
then
foobar
fi
15.5 Miscel·lània
Utilitzar "|" (sense les cometes) com separador en l'ús de sed, per exemple, "sed -e 's|foo|bar|'" (sense "").
No utilitzar l'ordre test per a fer comparacions o tests, utilitzar "[" "]" (sense ""); per exemple, "if [ -x /bin/foo ]; ..." i no "if test -x /bin/foo; ...".
Utilitzar case sempre que sigui possible en lloc de test, ja que és més fàcil de llegir i més ràpid en l'execució.
Fer servir noms en majúscula per a les funcions per evitar conflictes amb l'entorn dels usuaris.