Rozdział ten dokumentuje styl kodowania używany w systemach live.
-
Nie wolno używać składni lub semantyki, które jest unikalne dla basha. Na przykład, użycie układu konstrukcji.
-
Nie używaj podzbiorów POSIX'a - na przykład, używaj $(foo) zamiast`foo`.
-
Możesz sprawdzić swoje skrypty używając 'sh -n' i 'checkbashisms'.
-
Upewnij się, że cały kod powłoki działa z 'set-e'.
-
Zawsze używaj tabulatorów zamiast spacji.
-
Generalnie linie mają maksymalnie 80 znaków.
-
Używaj zakończeń lini "typowych dla Linuxa":
-
Zmienne występują zawsze zapisane drukowanymi literami.
-
Zmienne wykorzystane w live-build zawsze zaczynają się przedroskiem LB_.
-
Wewnętrzne tymczasowe zmienne w live-build należy rozpocząć od przedrostka _LB_.
-
Lokalne zmienne zaczynają się przedrostkiem live-build' a __LB_.
-
Zmienne dotyczące parametrów startowych live-config zaczynają się od LIVE_.
-
Wszystkie inne zmienne w live-config zacznij przedroskiem _.
-
Używaj nawiasów wokół zmiennych; na przykład napisz ${FOO} zamiast $FOO.
-
Zawsze chroń zmienne znakami cytatu do zachowania potencjalnych białych znaków: napisz "${FOO}", a nie ${FOO}.
_ * Dla zachowania spójności, należy zawsze używać znaków cytatu podczas przypisywania wartości do zmiennych:
-
Jeśli zastosowane jest wiele zmiennych, przytocz całe wyrażenie:
if [ -f "${FOO}"/foo/"${BAR}"/bar ]
then
foobar
fi
if [ -f "${FOO}/foo/${BAR}/bar" ]
then
foobar
fi
-
Używaj "|" (bez otaczających wyrażenie znaków cytatu) jako rozdzielacz w zapytania do sed'a, np. "sed -e 's|foo|bar|'" (bez "").
-
Nie używaj komendy test dla porównań i testów, użyj "[" "]" (bez ""); np. "if [ -x /bin/foo ]; ..." a nie "if test -x /bin/foo; ...".
_ * Użyj case gdzie to jest możliwe zamiast test, jest to łatwiejsze do odczytania i szybsze w wykonaniu.
-
Użyj nazw funkcji pisanych wielkimi literami, aby ograniczyć niepożądane działanie e środowisku użytkownika.