Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # project stuff
- project(){
- export PROJECT="$1";
- mkdir -pv /home/$USER/projects/$1/documentation/commands;
- export PROJECTDIR="/home/$USER/projects/$1";
- }
- document(){
- # Determine cmdline values
- echo -n $(pwd) > /tmp/_document_cmdline1;
- echo "\$ $@" > /tmp/_document_cmdline2;
- # Create output file
- OUTFILE=$PROJECTDIR/documentation/commands/$(date)_$(echo $@ | tr ' ' '_' | tr '/' '-').html;
- touch $OUTFILE;
- if [ ! -f $OUTFILE ]; then
- echo "ERROR: Failed to create output file. Aborting.";
- exit(1);
- fi
- echo "This command will be documented: ${OUTFILE}";
- cat /tmp/_document_cmdline* | aha --no-header --black > $OUTFILE;
- eval $@ | {
- while IFS= read -r line
- do
- echo $line;
- OUTPUT="${OUTPUT}\n${line}";
- # Build output file line-by-line while we're running
- echo $line | aha --no-header --black >> $OUTFILE;
- echo "<br/>" >> $OUTFILE;
- done
- # Rebuild output file to correct formatting
- cat /tmp/_document_cmdline* > $OUTFILE.tmp;
- echo "\n${OUTPUT}" >> $OUTFILE.tmp;
- cat $OUTFILE.tmp | aha --line-fix --black > $OUTFILE;
- };
- # Cleanup
- rm /tmp/_document_cmdline* $OUTFILE.tmp;
- unset OUTFILE;
- unset OUTPUT;
- };
- project DEFAULT
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement