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”:
Źle:
if foo; then bar fi
Dobrze:
if foo then bar fi
● To samo dotyczy funkcji:
Źle:
Foo () { bar }
Dobrze:
Foo () { bar }
● 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:
Źle:
FOO=bar
Dobrze:
FOO="bar"
● Jeśli zastosowane jest wiele zmiennych, przytocz całe wyrażenie:
Źle:
if [ -f "${FOO}"/foo/"${BAR}"/bar ] then foobar fi
Dobrze:
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.
License: Ten program jest wolnym oprogramowaniem: możesz go rozprowadzać dalej i / lub modyfikować zgodnie z warunkami Powszechnej Licencji Publicznej GNU opublikowanej przez Free Software Foundation, według wersji 3 tej Licencji lub (według Twojego wyboru) dowolnej późniejszej wersji
Ten program jest rozpowszechniany w nadziei, że będzie użyteczny, ale BEZ JAKIEJKOLWIEK GWARANCJI; bez nawet domyślnej gwarancji PRZYDATNOŚCI HANDLOWEJ albo PRZYDATNOŚCI DO OKREŚLONYCH ZASTOSOWAŃ. Patrz GNU General Public License aby uzyskać więcej szczegółów.
Powinieneś otrzymać kopię Licencji GNU General Public License wraz z tym programem. Jeśli nie, odwiedź http://www.gnu.org/licenses/.
Pełny tekst licencji GNU General Public można znaleźć w pliku /usr/share/common-licenses/GPL-3.
≅ SiSU Spine ፨ (object numbering & object search)
(web 1993, object numbering 1997, object search 2002 ...) 2024