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 |