# SOME DESCRIPTIVE TITLE
# Copyright (C) YEAR Debian Live Project
# This file is distributed under the same license as the live-manual package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: live-manual 5.0~a2-1\n"
"POT-Creation-Date: 2022-01-08 13:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#. type: Plain text
#: en/about_manual.ssi:94 en/about_manual.ssi:102 en/about_manual.ssi:110
#: en/about_manual.ssi:118 en/about_manual.ssi:126 en/about_manual.ssi:134
#: en/appendix_style-guide.ssi:124 en/appendix_style-guide.ssi:134
#: en/appendix_style-guide.ssi:144 en/appendix_style-guide.ssi:154
#: en/appendix_style-guide.ssi:164 en/appendix_style-guide.ssi:177
#: en/examples.ssi:14 en/examples.ssi:30 en/examples.ssi:40 en/examples.ssi:54
#: en/examples.ssi:67 en/examples.ssi:83 en/examples.ssi:93 en/examples.ssi:106
#: en/examples.ssi:114 en/examples.ssi:124 en/examples.ssi:134
#: en/examples.ssi:149 en/examples.ssi:157 en/examples.ssi:165
#: en/examples.ssi:173 en/examples.ssi:189 en/examples.ssi:203
#: en/examples.ssi:211 en/examples.ssi:219 en/examples.ssi:235
#: en/examples.ssi:249 en/examples.ssi:257 en/examples.ssi:265
#: en/examples.ssi:273 en/examples.ssi:293 en/examples.ssi:301
#: en/examples.ssi:310 en/examples.ssi:320 en/project_bugs.ssi:69
#: en/project_coding-style.ssi:26 en/project_coding-style.ssi:48
#: en/project_coding-style.ssi:73 en/project_coding-style.ssi:83
#: en/project_coding-style.ssi:95 en/project_coding-style.ssi:106
#: en/project_coding-style.ssi:116 en/project_coding-style.ssi:145
#: en/project_coding-style.ssi:153 en/project_coding-style.ssi:163
#: en/project_coding-style.ssi:173 en/user_basics.ssi:34 en/user_basics.ssi:42
#: en/user_basics.ssi:52 en/user_basics.ssi:70 en/user_basics.ssi:84
#: en/user_basics.ssi:97 en/user_basics.ssi:105 en/user_basics.ssi:143
#: en/user_basics.ssi:151 en/user_basics.ssi:163 en/user_basics.ssi:174
#: en/user_basics.ssi:182 en/user_basics.ssi:194 en/user_basics.ssi:202
#: en/user_basics.ssi:210 en/user_basics.ssi:222 en/user_basics.ssi:234
#: en/user_basics.ssi:244 en/user_basics.ssi:254 en/user_basics.ssi:272
#: en/user_basics.ssi:303 en/user_basics.ssi:319 en/user_basics.ssi:327
#: en/user_basics.ssi:347 en/user_basics.ssi:374 en/user_basics.ssi:390
#: en/user_customization-binary.ssi:18 en/user_customization-contents.ssi:24
#: en/user_customization-contents.ssi:33 en/user_customization-contents.ssi:51
#: en/user_customization-installer.ssi:32
#: en/user_customization-installer.ssi:44 en/user_customization-packages.ssi:14
#: en/user_customization-packages.ssi:22 en/user_customization-packages.ssi:40
#: en/user_customization-packages.ssi:53 en/user_customization-packages.ssi:67
#: en/user_customization-packages.ssi:95 en/user_customization-packages.ssi:106
#: en/user_customization-packages.ssi:114
#: en/user_customization-packages.ssi:140
#: en/user_customization-packages.ssi:153
#: en/user_customization-packages.ssi:163
#: en/user_customization-packages.ssi:173
#: en/user_customization-packages.ssi:197
#: en/user_customization-packages.ssi:213
#: en/user_customization-packages.ssi:292
#: en/user_customization-packages.ssi:304
#: en/user_customization-packages.ssi:314
#: en/user_customization-packages.ssi:328
#: en/user_customization-packages.ssi:343
#: en/user_customization-packages.ssi:359
#: en/user_customization-packages.ssi:376 en/user_customization-runtime.ssi:14
#: en/user_customization-runtime.ssi:26 en/user_customization-runtime.ssi:44
#: en/user_customization-runtime.ssi:56 en/user_customization-runtime.ssi:75
#: en/user_customization-runtime.ssi:83 en/user_customization-runtime.ssi:92
#: en/user_customization-runtime.ssi:121 en/user_customization-runtime.ssi:131
#: en/user_customization-runtime.ssi:139 en/user_customization-runtime.ssi:148
#: en/user_customization-runtime.ssi:157 en/user_customization-runtime.ssi:172
#: en/user_customization-runtime.ssi:202 en/user_customization-runtime.ssi:210
#: en/user_customization-runtime.ssi:219 en/user_customization-runtime.ssi:229
#: en/user_customization-runtime.ssi:237 en/user_customization-runtime.ssi:245
#: en/user_customization-runtime.ssi:253 en/user_customization-runtime.ssi:261
#: en/user_customization-runtime.ssi:269 en/user_customization-runtime.ssi:277
#: en/user_customization-runtime.ssi:285 en/user_installation.ssi:22
#: en/user_installation.ssi:46 en/user_installation.ssi:56
#: en/user_installation.ssi:64 en/user_installation.ssi:74
#: en/user_installation.ssi:82 en/user_installation.ssi:90
#: en/user_installation.ssi:110 en/user_installation.ssi:125
#: en/user_installation.ssi:138 en/user_managing_a_configuration.ssi:22
#: en/user_managing_a_configuration.ssi:32
#: en/user_managing_a_configuration.ssi:55
#: en/user_managing_a_configuration.ssi:67
#: en/user_managing_a_configuration.ssi:76 en/user_overview.ssi:34
#: en/user_overview.ssi:47 en/user_overview.ssi:55
msgid "code{"
msgstr ""

#. type: Plain text
#: en/about_manual.ssi:98 en/about_manual.ssi:106 en/about_manual.ssi:114
#: en/about_manual.ssi:122 en/about_manual.ssi:130 en/about_manual.ssi:138
#: en/appendix_style-guide.ssi:128 en/appendix_style-guide.ssi:138
#: en/appendix_style-guide.ssi:148 en/appendix_style-guide.ssi:158
#: en/appendix_style-guide.ssi:173 en/appendix_style-guide.ssi:182
#: en/examples.ssi:20 en/examples.ssi:34 en/examples.ssi:44 en/examples.ssi:61
#: en/examples.ssi:71 en/examples.ssi:89 en/examples.ssi:102
#: en/examples.ssi:110 en/examples.ssi:118 en/examples.ssi:128
#: en/examples.ssi:141 en/examples.ssi:153 en/examples.ssi:161
#: en/examples.ssi:169 en/examples.ssi:177 en/examples.ssi:197
#: en/examples.ssi:207 en/examples.ssi:215 en/examples.ssi:231
#: en/examples.ssi:239 en/examples.ssi:253 en/examples.ssi:261
#: en/examples.ssi:269 en/examples.ssi:277 en/examples.ssi:297
#: en/examples.ssi:306 en/examples.ssi:316 en/examples.ssi:332
#: en/project_bugs.ssi:73 en/project_coding-style.ssi:38
#: en/project_coding-style.ssi:69 en/project_coding-style.ssi:79
#: en/project_coding-style.ssi:89 en/project_coding-style.ssi:102
#: en/project_coding-style.ssi:112 en/project_coding-style.ssi:123
#: en/project_coding-style.ssi:149 en/project_coding-style.ssi:157
#: en/project_coding-style.ssi:169 en/project_coding-style.ssi:179
#: en/user_basics.ssi:38 en/user_basics.ssi:46 en/user_basics.ssi:56
#: en/user_basics.ssi:75 en/user_basics.ssi:89 en/user_basics.ssi:101
#: en/user_basics.ssi:109 en/user_basics.ssi:147 en/user_basics.ssi:155
#: en/user_basics.ssi:168 en/user_basics.ssi:178 en/user_basics.ssi:186
#: en/user_basics.ssi:198 en/user_basics.ssi:206 en/user_basics.ssi:214
#: en/user_basics.ssi:226 en/user_basics.ssi:238 en/user_basics.ssi:248
#: en/user_basics.ssi:258 en/user_basics.ssi:295 en/user_basics.ssi:307
#: en/user_basics.ssi:323 en/user_basics.ssi:331 en/user_basics.ssi:358
#: en/user_basics.ssi:378 en/user_basics.ssi:394
#: en/user_customization-binary.ssi:25 en/user_customization-contents.ssi:29
#: en/user_customization-contents.ssi:43 en/user_customization-contents.ssi:55
#: en/user_customization-installer.ssi:38
#: en/user_customization-installer.ssi:49 en/user_customization-packages.ssi:18
#: en/user_customization-packages.ssi:26 en/user_customization-packages.ssi:45
#: en/user_customization-packages.ssi:59 en/user_customization-packages.ssi:71
#: en/user_customization-packages.ssi:100
#: en/user_customization-packages.ssi:110
#: en/user_customization-packages.ssi:118
#: en/user_customization-packages.ssi:145
#: en/user_customization-packages.ssi:159
#: en/user_customization-packages.ssi:169
#: en/user_customization-packages.ssi:179
#: en/user_customization-packages.ssi:203
#: en/user_customization-packages.ssi:218
#: en/user_customization-packages.ssi:296
#: en/user_customization-packages.ssi:308
#: en/user_customization-packages.ssi:318
#: en/user_customization-packages.ssi:333
#: en/user_customization-packages.ssi:347
#: en/user_customization-packages.ssi:372
#: en/user_customization-packages.ssi:381 en/user_customization-runtime.ssi:18
#: en/user_customization-runtime.ssi:30 en/user_customization-runtime.ssi:48
#: en/user_customization-runtime.ssi:69 en/user_customization-runtime.ssi:79
#: en/user_customization-runtime.ssi:88 en/user_customization-runtime.ssi:97
#: en/user_customization-runtime.ssi:125 en/user_customization-runtime.ssi:135
#: en/user_customization-runtime.ssi:144 en/user_customization-runtime.ssi:153
#: en/user_customization-runtime.ssi:162 en/user_customization-runtime.ssi:180
#: en/user_customization-runtime.ssi:206 en/user_customization-runtime.ssi:215
#: en/user_customization-runtime.ssi:223 en/user_customization-runtime.ssi:233
#: en/user_customization-runtime.ssi:241 en/user_customization-runtime.ssi:249
#: en/user_customization-runtime.ssi:257 en/user_customization-runtime.ssi:265
#: en/user_customization-runtime.ssi:273 en/user_customization-runtime.ssi:281
#: en/user_customization-runtime.ssi:289 en/user_installation.ssi:26
#: en/user_installation.ssi:50 en/user_installation.ssi:60
#: en/user_installation.ssi:70 en/user_installation.ssi:78
#: en/user_installation.ssi:86 en/user_installation.ssi:94
#: en/user_installation.ssi:115 en/user_installation.ssi:132
#: en/user_installation.ssi:142 en/user_managing_a_configuration.ssi:28
#: en/user_managing_a_configuration.ssi:43
#: en/user_managing_a_configuration.ssi:61
#: en/user_managing_a_configuration.ssi:72
#: en/user_managing_a_configuration.ssi:80 en/user_overview.ssi:41
#: en/user_overview.ssi:51 en/user_overview.ssi:59
msgid "}code"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:2
msgid ":B~ Coding Style"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:4
msgid "1~coding-style Coding Style"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:6
msgid "This chapter documents the coding style used in live systems."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:8
msgid "2~ Compatibility"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:10
msgid ""
"_* Avoid \"bashisms\", the codebase must be POSIX compliant and thus "
"universally compatible."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:12
msgid ""
"_* Furthermore it must comply with the version of the POSIX specification "
"chosen by the current Debian Policy."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:14
msgid "_* You can check your scripts with 'sh -n' and 'checkbashisms'."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:16
msgid "_* Make sure all shell code runs with 'set -e'."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:18
msgid "2~ Indenting"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:20
msgid "_* Always use tabs over spaces."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:22
msgid ""
"_* Keep case branch terminators (\";;\") aligned with the \"content\" of the "
"branch, rather than the branch \"entry\"."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:24 en/project_coding-style.ssi:93
#: en/project_coding-style.ssi:151 en/project_coding-style.ssi:171
msgid "Good:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:31
#, no-wrap
msgid ""
" case \"${1}\" in\n"
"         foo)\n"
"                 foobar\n"
"                 ;;\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:36
#, no-wrap
msgid ""
"         bar)\n"
"                 foobar\n"
"                 ;;\n"
" esac\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:40
msgid "2~ Wrapping"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:42
msgid "_* Generally, lines should be 80 chars at maximum."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:44
msgid ""
"_* Placement of keywords like #{then}# and #{do}# should be chosen with good "
"judgement with respect to clutter and readability. For small bits of code in "
"particular it should be preferred to have them on the same line as the prior "
"keyword they relate to (#{if}#; #{for}#; etc). Only place on the next line "
"where it makes good sense to do so; typically this might only be to comply "
"with maximum line length restrictions. One situation where they should "
"always be placed on the next line is where what they follow is broken up "
"onto multiple lines, and thus it being on a new line creates clear "
"separation between that and the body of code following it. I.e. :"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:46
msgid "Preferred:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:52
#, no-wrap
msgid ""
" if foo; then\n"
"         bar\n"
" fi\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:56
#, no-wrap
msgid ""
" for FOO in $ITEMS; do\n"
"         bar\n"
" done\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:61
#, no-wrap
msgid ""
" if [ \"${MY_LOCATION_VARIABLE}\" = \"something\" ] && [ -e \"${MY_OUTPUT_FILE}\" ]\n"
" then\n"
"         MY_OTHER_VARIABLE=\"$(some_bin ${FOOBAR} | awk -F_ '{ print $1 }')\"\n"
" fi\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:67
#, no-wrap
msgid ""
" if [ \"${MY_FOO}\" = \"something\" ] && [ -e \"path/${FILE_1}\" ] ||\n"
"   [ \"${MY_BAR}\" = \"something_else\" ] && [ ${ALLOW} = \"true\" ]\n"
" then\n"
"         foobar\n"
" fi\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:71
msgid "Less ideal:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:77
#, no-wrap
msgid ""
" if [ \"${MY_LOCATION_VARIABLE}\" = \"something\" ] && [ -e \"${MY_OUTPUT_FILE}\" ]; then\n"
"         MY_OTHER_VARIABLE=\"$(some_bin ${FOOBAR} | awk -F_ '{ print $1 }')\"\n"
" fi\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:81
msgid "Horrible:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:87
#, no-wrap
msgid ""
" if [ \"${MY_LOCATION_VARIABLE}\" = \"something\" ] && [ -e \"${MY_OUTPUT_FILE}\" ] || [ \"${MY_LOCATION_VARIABLE}\" = \"something-else\" ] && [ -e \"${MY_OUTPUT_FILE_2}\" ]; then\n"
"         MY_OTHER_VARIABLE=\"$(some_bin ${FOOBAR} | awk -F_ '{ print $1 }')\"\n"
" fi\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:91
msgid ""
"_* Prefer placing the opening brace of a function on a new line (for "
"consistency with established style), and keep the braces aligned with the "
"function name:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:100
#, no-wrap
msgid ""
" Foo ()\n"
" {\n"
"         bar\n"
" }\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:104
msgid "Bad (inconsistent with existing style):"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:110
#, no-wrap
msgid ""
" Foo () {\n"
"         bar\n"
" }\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:114
msgid "Awful:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:121
#, no-wrap
msgid ""
" Foo ()\n"
"         {\n"
"         bar\n"
"         }\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:125
msgid "2~ Variables"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:127
msgid "_* Variables are always in capital letters."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:129
msgid ""
"_* Config variables used in live-build should start with an #{LB_}# prefix."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:131
msgid "_* Local function variables should be restricted to local scope."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:133
msgid ""
"_* Variables in connection to a boot parameter in live-config start with "
"#{LIVE_}#."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:135
msgid "_* All other variables in live-config start with #{_}# prefix."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:137
msgid ""
"_* Use braces around variables; e.g. write #{${FOO}}# instead of #{$FOO}#."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:139
msgid ""
"_* Always protect variables with quotes to respect potential whitespaces "
"(except where necessary to achieve correct word splitting): write "
"#{\"${FOO}\"}# not #{${FOO}}#."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:141
msgid ""
"_* For consistency reasons, always use quotes when assigning values to "
"variables:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:143
msgid "Bad:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:147
#, no-wrap
msgid " FOO=bar\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:155
#, no-wrap
msgid " FOO=\"bar\"\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:159
msgid "_* If multiple variables are used, prefer quoting the full expression:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:161
msgid "Typically bad:"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:167
#, no-wrap
msgid ""
" if [ -f \"${FOO}\"/foo/\"${BAR}\"/bar ]; then\n"
"         foobar\n"
" fi\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:177
#, no-wrap
msgid ""
" if [ -f \"${FOO}/foo/${BAR}/bar\" ]; then\n"
"         foobar\n"
" fi\n"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:181
msgid "2~ Miscellaneous"
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:183
msgid ""
"_* Prefer \"#{|}#\" (without the surround quotes) as a separator in calls to "
"sed, e.g. \"#{sed -e 's|foo|bar|'}#\" (without \"\")."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:185
msgid ""
"_* Don't use the #{test}# command for comparisons or tests, use \"#{[}#\" "
"and \"#{]}#\" (without \"\"); e.g. \"#{if [ -x /bin/foo ]; ...}#\" and not "
"\"#{if test -x /bin/foo; ...}#\"."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:187
msgid ""
"_* Use #{case}# wherever it makes code more readable than conditional checks "
"(#{if foo; ...}# and tests without the actual #{if}# keyword, e.g. #{[ -e "
"\"${FILE}\" ] || exit 0}#)."
msgstr ""

#. type: Plain text
#: en/project_coding-style.ssi:188
msgid ""
"_* Use \"Foo_bar\" style names for functions, i.e. a capital first letter, "
"then all lowercase, with sensible use of underscores for better readability."
msgstr ""
