Added dir2org.zsh to contrib
This commit is contained in:
parent
e2540171c6
commit
4ec4e01a1a
|
@ -1,3 +1,7 @@
|
||||||
|
2008-02-08 Phil Jackson <phil@shellarchive.co.uk>
|
||||||
|
|
||||||
|
* scripts/dir2org.zsh: New file.
|
||||||
|
|
||||||
2008-02-07 Phil Jackson <phil@shellarchive.co.uk>
|
2008-02-07 Phil Jackson <phil@shellarchive.co.uk>
|
||||||
|
|
||||||
* lisp/org-annotate-file.el: New file.
|
* lisp/org-annotate-file.el: New file.
|
||||||
|
|
|
@ -34,3 +34,4 @@ org-export-freemind --- exporting utilities from org-mode to freemind
|
||||||
SCRIPTS (shell, bash, etc.)
|
SCRIPTS (shell, bash, etc.)
|
||||||
===========================
|
===========================
|
||||||
|
|
||||||
|
dir2org.zsh --- Org compatible fs structure output
|
||||||
|
|
|
@ -0,0 +1,53 @@
|
||||||
|
#!/usr/bin/env zsh
|
||||||
|
|
||||||
|
# desc:
|
||||||
|
#
|
||||||
|
# Output an org compatible structure representing the filesystem from
|
||||||
|
# the point passed on the command line (or . by default).
|
||||||
|
#
|
||||||
|
# options:
|
||||||
|
# none
|
||||||
|
#
|
||||||
|
# usage:
|
||||||
|
# dir2org.bash [DIR]...
|
||||||
|
#
|
||||||
|
# author:
|
||||||
|
# Phil Jackson (phil@shellarchive.co.uk)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
function headline {
|
||||||
|
local depth="${1}"
|
||||||
|
local text="${2}"
|
||||||
|
|
||||||
|
printf "%${depth}s %s" "" | tr ' ' '*'
|
||||||
|
echo " ${text}"
|
||||||
|
}
|
||||||
|
|
||||||
|
function scan_and_populate {
|
||||||
|
local depth="${1}"
|
||||||
|
local dir="${2}"
|
||||||
|
|
||||||
|
headline ${depth} "${dir}"
|
||||||
|
|
||||||
|
(( depth += 1 ))
|
||||||
|
|
||||||
|
for f in $(ls -d "${dir}"/* 2>/dev/null); do
|
||||||
|
if [ -d "${f}" ]; then
|
||||||
|
scan_and_populate ${depth} "${f}"
|
||||||
|
else
|
||||||
|
headline ${depth} "[[file://${f}][${${f##*/}%.*}]]"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
let "depth -= 1"
|
||||||
|
}
|
||||||
|
|
||||||
|
function main {
|
||||||
|
local scan_dir="${1:-$(pwd)}"
|
||||||
|
local depth=0
|
||||||
|
|
||||||
|
scan_and_populate ${depth} "${scan_dir}"
|
||||||
|
}
|
||||||
|
|
||||||
|
main "${@}"
|
Loading…
Reference in New Issue