Browse Source

Added the org-detangler

Sam Flint 11 years ago
parent
commit
373faed312
1 changed files with 63 additions and 0 deletions
  1. 63 0
      org-detangle.org

+ 63 - 0
org-detangle.org

@@ -0,0 +1,63 @@
+#+Title: Org Detangle Shell Script
+#+Author: Sam Flint
+#+PROPERTY: noweb tangle
+
+* Copyright Statement
+#+Name: CopyrightStatement
+#+CAPTION: use-name-as-caption
+#+BEGIN_SRC text
+  Copyright FlintFam Systems Management, 2013.
+  
+  This program is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
+  
+  This program is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+  
+  You should have received a copy of the GNU General Public License
+  along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#+END_SRC
+* Variable Definitions
+#+Name: VarSetup
+#+CAPTION: use-name-as-caption
+#+BEGIN_SRC sh
+  DIR=`pwd`
+  FILES=""
+  
+  for i in $@; do
+      FILES="$FILES \"$i\""
+  done
+  
+  ORGBASEDIR=''
+  ORGLDIR="${ORGBASEDIR}/lisp/"
+  ORGCONTRIB="${ORGBASEDIR}/contrib/"
+  
+#+END_SRC
+* Process
+#+Name: ProcessFiles
+#+CAPTION: use-name-as-caption
+#+BEGIN_SRC sh
+  emacs -Q --batch \
+      --eval "(progn
+       (add-to-list 'load-path (expand-file-name \"$ORGLDIR\"))
+       (add-to-list 'load-path (expand-file-name \"$ORGCONTRIB\" t))
+       (require 'org)(require 'org-exp)(require 'ob)(require 'ob-tangle)
+       (mapc (lambda (file)
+              (find-file (expand-file-name file \"$DIR\"))
+              (org-babel-tangle)
+              (kill-buffer)) '($FILES)))" 2>&1 |grep tangled
+#+END_SRC
+* Final Code
+#+Name: MainCode
+#+CAPTION: use-name-as-caption
+#+BEGIN_SRC sh :tangle "detangle.sh" :shebang "#!/usr/bin/zsh"
+  # <<CopyrightStatement>>
+  
+  <<VarSetup>>
+  
+  <<ProcessFiles>>
+#+END_SRC