Podręcznik Systemów Live

Styl Kodowania

Styl Kodowania

Rozdział ten dokumentuje styl kodowania używany w systemach live.

Kompatybilność

●  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'.

Wcięcia

●  Zawsze używaj tabulatorów zamiast spacji.

Zawijanie

●  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

●  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  

Różne

●  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) 2022