diff options
Diffstat (limited to 'STYLE')
| -rw-r--r-- | STYLE | 53 | 
1 files changed, 53 insertions, 0 deletions
| @@ -0,0 +1,53 @@ +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 Shell 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, you should +    not need quotes. However, you do when assigning from a subshell. +      e.g. foo=${bar} +      e.g. foo="$(uname -a)" + +######### +# TESTS # +######### +- Brackets - +    Always use the [ ... ] form instead of [[ ... ]] as the later only really +    works in bash, and we should support as many shells as we can. +- Quoting - +    When dealing with strings, you should quote both sides. + +############### +# 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 | 
