History

initial weewiki structure

Paul Batchelor committed 6 years ago

Commit 76e67e11 parent 5f348384 files · +155 −0Browse files

Unified · Split

4 files
  1. Makefile +32 −0
  2. mkdb.janet +25 −0
  3. update_db.sh +16 −0
  4. weewiki.janet +82 −0
Makefile+32−0
@@ -0,0 +1,32 @@
1+PORT?=8080
2+
3+default: update
4+
5+sync:
6+ weewiki sync
7+
8+update:
9+ $(MAKE) db
10+ $(MAKE) sync
11+ $(MAKE) dump
12+
13+export: db
14+ $(RM) -r _site/wiki
15+ mkdir -p _site/wiki
16+ weewiki sync
17+ weewiki export
18+ mv mkdb.janet mkdb.janet.old
19+ weewiki dump mkdb.janet
20+
21+db:
22+ @sh update_db.sh
23+
24+dump:
25+ weewiki dump mkdb.janet
26+
27+transfer:
28+ mkdir -p _live/wiki
29+ cp -r _site/wiki/* _live/wiki
30+
31+server:
32+ weewiki server - $(PORT)
mkdb.janet+25−0
@@ -0,0 +1,25 @@
1+# open and clear wiki db
2+
3+(ww-open "a.db")
4+(ww-clear)
5+
6+# unlinked pages
7+
8+
9+# linked pages
10+
11+(ww-add-link "index" "index.org")
12+(ww-add-link "bigverb" "bigverb.org")
13+(ww-add-link "osc" "osc.org")
14+(ww-add-link "dcblocker" "dcblocker.org")
15+(ww-add-link "fmpair" "fmpair.org")
16+(ww-add-link "vardelay" "vardelay.org")
17+(ww-add-link "rline" "rline.org")
18+(ww-add-link "peakeq" "peakeq.org")
19+(ww-add-link "modalres" "modalres.org")
20+(ww-add-link "phasewarp" "phasewarp.org")
21+
22+# sync and close
23+
24+(ww-sync)
25+(ww-close)
update_db.sh+16−0
@@ -0,0 +1,16 @@
1+if [ ! -f a.db ]
2+then
3+ echo "No db found. Generating."
4+ weewiki janet mkdb.janet
5+ exit
6+fi
7+
8+if [ a.db -nt mkdb.janet ]
9+then
10+ echo "Nothing needed to be done."
11+else
12+ cmp mkdb.janet mkdb.janet.old ||\
13+ weewiki janet mkdb.janet
14+ cp mkdb.janet mkdb.janet.old
15+
16+fi
weewiki.janet+82−0
@@ -0,0 +1,82 @@
1+(def ww-dir "_site/wiki")
2+(def webroot "/wiki")
3+
4+(defn pgexists? (name)
5+ (var db (ww-db))
6+ (var x
7+ (sqlite3/eval
8+ db (string
9+ "SELECT EXISTS(SELECT key from wiki "
10+ "where key is \""name"\") as doiexist;")))
11+ (= ((x 0) "doiexist") 1))
12+
13+(defn pglink (link)
14+ (cond
15+ (= link "index")
16+ (string webroot "/")
17+ (pgexists? link)
18+ (string webroot "/" link) "#"))
19+
20+(defn refstr (link &opt name)
21+ (if (nil? name)
22+ (string "[[" (pglink link) "][" link "]]")
23+ (string
24+ "[["
25+ (pglink link)
26+ "]["
27+ name
28+ "]]")))
29+
30+(defn ref (link &opt name)
31+ (if (nil? name)
32+ (org (string "[[" (pglink link) "][" link "]]"))
33+ (org
34+ (string
35+ "[["
36+ (pglink link)
37+ "]["
38+ name
39+ "]]"))))
40+
41+(defn img [path &opt alt]
42+ (print
43+ (string
44+ "<img src=\""
45+ path "\""
46+ (if-not (nil? alt) (string " alt=\"" alt "\""))
47+ ">")))
48+
49+(defn img-link [path link &opt alt]
50+ (print
51+ (string
52+ "<a href=\"" link "\">"
53+ "<img src=\""
54+ path "\""
55+ (if-not (nil? alt) (string " alt=\"" alt "\""))
56+ "></a>")))
57+
58+(defn html-header
59+ []
60+(print
61+``<!DOCTYPE html>
62+<html lang="en">
63+<head>
64+
65+<meta charset="utf-8">
66+<link rel="stylesheet" href="/css/style.css">
67+
68+</head>
69+<body>
70+<div id="main">
71+``)
72+)
73+
74+(defn html-footer
75+ []
76+ (print
77+``
78+</div>
79+</body>
80+</html>
81+``
82+))

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t