md2point.sh - pointtools - Simple point utilities to hold text presentations.
HTML git clone git://bitreich.org/pointtools/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/pointtools/
DIR Log
DIR Files
DIR Refs
DIR Tags
DIR README
DIR LICENSE
---
md2point.sh (772B)
---
1 #!/bin/sh
2
3 mkfilename() {
4 printf "%.4d-%s" "$1" "$2" | tr '# :.()/' '_'
5 printf ".txt"
6 }
7
8 mkunderline() {
9 i=$1
10 while [ $i -gt 1 ];
11 do
12 printf "%s" "$2"
13 i=$(($i - 1))
14 done
15 }
16
17 fname=""
18 snum=0
19
20 while IFS='
21 ' read -r line;
22 do
23 case $line in
24 \#\#*)
25 titlelen="$(utf8expr length "$line")"
26 title="$(utf8expr substr "$line" 3 $titlelen)"
27 fname="$(mkfilename "$snum" "$title")"
28 snum=$((snum + 1))
29 printf "\n %s\n %s\n\n" \
30 "$title" "$(mkunderline $titlelen "=")" > $fname
31 ;;
32 \#pause)
33 fname="$(mkfilename "$snum" "$title")"
34 cat "$(mkfilename "$((snum - 1))" "$title")" >> $fname
35 snum=$((snum + 1))
36 ;;
37 *)
38 [ -n "$fname" ] && \
39 printf " %s\n" "$line" \
40 | sed 's, , ,' \
41 | sed 's,^\([[:blank:]]*\)\*,\1o,' >> $fname
42 ;;
43 esac
44 done
45