diff options
author | Benedikt Boehm <hollow@gentoo.org> | 2005-10-09 09:38:44 +0000 |
---|---|---|
committer | Benedikt Boehm <hollow@gentoo.org> | 2005-10-09 09:38:44 +0000 |
commit | c44034d4ca22d66e442424dbadf7b125ca75bc79 (patch) | |
tree | c7fa74661901281891b7bc41a38927089fd3aea5 /STYLE | |
parent | fix net services (diff) | |
download | baselayout-vserver-c44034d4ca22d66e442424dbadf7b125ca75bc79.tar.gz baselayout-vserver-c44034d4ca22d66e442424dbadf7b125ca75bc79.tar.bz2 baselayout-vserver-c44034d4ca22d66e442424dbadf7b125ca75bc79.zip |
add release helper
svn path=/baselayout-vserver/trunk/; revision=54
Diffstat (limited to 'STYLE')
-rw-r--r-- | STYLE | 64 |
1 files changed, 64 insertions, 0 deletions
@@ -0,0 +1,64 @@ +This is the rc-scripts style manual. It governs the coding style +of rc-scripts. Everything here might as well have been spoken by +God. If you find any issues, please talk to base-system@gentoo.org +or #gentoo-base on irc.freenode.net. + +############# +# VARIABLES # +############# +- User Variables - + Variables must always be enclosed by {} + e.g. ${foo} ${bar} +- Internal Bash Variables - + Do not use {} with internal variables unless appropriate + e.g. case $1 in + e.g. foo=$IFS + e.g. echo "blah${1}123" +- Assigning with Quotes - + When assigning to a variable from another variable or + a subshell, you do not need quotes, bash handles it + e.g. foo=${bar} + e.g. foo=$(uname -a) + +######### +# TESTS # +######### +- Brackets - + Always use the [[ ... ]] form instead of [ ... ] +- Equality - + Always use == form instead of = when testing equality. Makes + for saner looking code (we all love C, don't lie). +- Quoting - + When dealing with strings, do not quote the LHS variable. + The [[ ... ]] handles spaces properly in variables. You + should always quote strings though. + e.g. [[ ${foo} = "bar" ]] + e.g. [[ "foo" != "bar" ]] + The RHS variable needs to be quoted to prevent against accidental + pattern matching (unless you want to match, of course). + e.g. [[ ${foo} = "${bar}" ]] + If foo=a-b and bar=a-* and ${bar} was not quoted, you would + get a match! + +############### +# CODE BLOCKS # +############### +- Structure - + Use the more compact form + e.g. if ... ; then + e.g. while ... ; do + Do not use the older form + e.g. if ... + then +- Functions - + Use the more compact form + e.g. foo() { + Do not lead with 'function ' + e.g. function foo() { + +############ +# COMMENTS # +############ +- General - + Try to include a comment block before sections + of code to explain what you're attempting |