summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config.mk76
-rwxr-xr-xsrc/index-pages.sh (renamed from src/index-page.sh)18
-rwxr-xr-xsrc/index-terms.sh33
-rw-r--r--src/lib/create_table7
-rw-r--r--src/lib/insert8
5 files changed, 12 insertions, 130 deletions
diff --git a/config.mk b/config.mk
index 3e45c93..cabae85 100644
--- a/config.mk
+++ b/config.mk
@@ -1,82 +1,18 @@
-DOCSET_NAME = GNU_Automake
-
-DOCSET_DIR = $(DOCSET_NAME).docset
-CONTENTS_DIR = $(DOCSET_DIR)/Contents
-RESOURCES_DIR = $(CONTENTS_DIR)/Resources
-DOCUMENTS_DIR = $(RESOURCES_DIR)/Documents
-
-INFO_PLIST_FILE = $(CONTENTS_DIR)/Info.plist
-INDEX_FILE = $(RESOURCES_DIR)/docSet.dsidx
-ICON_FILE = $(DOCSET_DIR)/icon.png
-ARCHIVE_FILE = $(DOCSET_NAME).tgz
-
-SRC_ICON = src/icon.png
+SRC_ICON_FILE = $(SOURCE_DIR)/icon.png
MANUAL_URL = https://www.gnu.org/software/automake/manual/automake.html_node.tar.gz
MANUAL_FILE = tmp/automake.html_node.tar.gz
-ERROR_DOCSET_NAME = $(error DOCSET_NAME is unset)
-WARNING_MANUAL_URL = $(warning MANUAL_URL is unset)
-ERROR_MANUAL_FILE = $(error MANUAL_FILE is unset)
-.phony: err warn
-
-ifndef DOCSET_NAME
-err: ; $(ERROR_DOCSET_NAME)
-endif
-
-ifndef MANUAL_FILE
-err: ; $(ERROR_MANUAL_FILE)
-endif
-
-ifndef MANUAL_URL
-warn:
- $(WARNING_MANUAL_URL)
- $(MAKE) all
-endif
-
-DOCSET = $(INFO_PLIST_FILE) $(INDEX_FILE)
-ifdef SRC_ICON
-DOCSET += $(ICON_FILE)
-endif
-
-all: $(DOCSET)
-
-archive: $(ARCHIVE_FILE)
-
-clean:
- rm -rf $(DOCSET_DIR) $(ARCHIVE_FILE)
-
-tmp:
- mkdir -p $@
-
-$(ARCHIVE_FILE): $(DOCSET)
- tar --exclude='.DS_Store' -czf $@ $(DOCSET_DIR)
-
$(MANUAL_FILE): tmp
curl -o $@ $(MANUAL_URL)
-$(DOCSET_DIR):
- mkdir -p $@
-
-$(CONTENTS_DIR): $(DOCSET_DIR)
- mkdir -p $@
-
-$(RESOURCES_DIR): $(CONTENTS_DIR)
- mkdir -p $@
-
$(DOCUMENTS_DIR): $(RESOURCES_DIR) $(MANUAL_FILE)
mkdir -p $@
tar -x -z -f $(MANUAL_FILE) -C $@
-$(INFO_PLIST_FILE): src/Info.plist $(CONTENTS_DIR)
- cp src/Info.plist $@
-
-$(INDEX_FILE): src/index-page.sh src/index-terms.sh $(DOCUMENTS_DIR)
+$(INDEX_FILE): $(SOURCE_DIR)/src/index-pages.sh $(SCRIPTS_DIR)/gnu/index-terms.sh $(DOCUMENTS_DIR)
rm -f $@
- src/index-page.sh $@ $(DOCUMENTS_DIR)/*.html
- src/index-terms.sh "Macro" $@ $(DOCUMENTS_DIR)/Macro-Index.html
- src/index-terms.sh "Variable" $@ $(DOCUMENTS_DIR)/Variable-Index.html
- src/index-terms.sh "Entry" $@ $(DOCUMENTS_DIR)/General-Index.html
-
-$(ICON_FILE): src/icon.png $(DOCSET_DIR)
- cp $(SRC_ICON) $@
+ $(SOURCE_DIR)/src/index-pages.sh $@ $(DOCUMENTS_DIR)/*.html
+ $(SCRIPTS_DIR)/gnu/index-terms.sh "Macro" $@ $(DOCUMENTS_DIR)/Macro-Index.html
+ $(SCRIPTS_DIR)/gnu/index-terms.sh "Variable" $@ $(DOCUMENTS_DIR)/Variable-Index.html
+ $(SCRIPTS_DIR)/gnu/index-terms.sh "Entry" $@ $(DOCUMENTS_DIR)/General-Index.html
diff --git a/src/index-page.sh b/src/index-pages.sh
index 0b6e693..cf837e7 100755
--- a/src/index-page.sh
+++ b/src/index-pages.sh
@@ -1,21 +1,15 @@
#!/usr/bin/env sh
-# shellcheck source=./lib/create_table
-. "$(dirname "$0")"/lib/create_table
-# shellcheck source=./lib/insert
-. "$(dirname "$0")"/lib/insert
+# shellcheck source=../../../scripts/create_table.sh
+. "$(dirname "$0")"/../../../scripts/create_table.sh
+# shellcheck source=../../../scripts/get_title.sh
+. "$(dirname "$0")"/../../../scripts/get_title.sh
+# shellcheck source=../../../scripts/insert.sh
+. "$(dirname "$0")"/../../../scripts/insert.sh
DB_PATH="$1"
shift
-get_title() {
- FILE="$1"
-
- pup -p -f "$FILE" 'title text{}' | \
- tr -d \\n | \
- sed 's/\"/\"\"/g'
-}
-
insert_pages() {
# Get title and insert into table for each html file
while [ -n "$1" ]; do
diff --git a/src/index-terms.sh b/src/index-terms.sh
deleted file mode 100755
index f74af03..0000000
--- a/src/index-terms.sh
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/usr/bin/env sh
-
-# shellcheck source=./lib/create_table
-. "$(dirname "$0")"/lib/create_table
-# shellcheck source=./lib/insert
-. "$(dirname "$0")"/lib/insert
-
-TYPE="$1"
-shift
-DB_PATH="$1"
-shift
-
-insert_index_terms() {
- # Get each term from an index page and insert
- while [ -n "$1" ]; do
- grep -Eo "<a href.*</a>:" "$1" | while read -r line; do
- insert_term "$line"
- done
-
- shift
- done
-}
-
-insert_term() {
- LINK="$1"
- NAME="$(echo "$LINK" | pup -p 'a text{}' | sed 's/\"\"//g' | tr -d \\n)"
- PAGE_PATH="$(echo "$LINK" | pup -p 'a attr{href}')"
-
- insert "$DB_PATH" "$NAME" "$TYPE" "$PAGE_PATH"
-}
-
-create_table "$DB_PATH"
-insert_index_terms "$@"
diff --git a/src/lib/create_table b/src/lib/create_table
deleted file mode 100644
index a783c50..0000000
--- a/src/lib/create_table
+++ /dev/null
@@ -1,7 +0,0 @@
-create_table() {
- DB_PATH="$1"
-
- sqlite3 "$DB_PATH" "CREATE TABLE IF NOT EXISTS searchIndex(id INTEGER PRIMARY KEY, name TEXT, type TEXT, path TEXT);"
- sqlite3 "$DB_PATH" "CREATE UNIQUE INDEX IF NOT EXISTS anchor ON searchIndex (name, type, path);"
-}
-
diff --git a/src/lib/insert b/src/lib/insert
deleted file mode 100644
index 31c1b4c..0000000
--- a/src/lib/insert
+++ /dev/null
@@ -1,8 +0,0 @@
-insert() {
- DB_PATH="$1"
- NAME="$2"
- TYPE="$3"
- PAGE_PATH="$4"
-
- sqlite3 "$DB_PATH" "INSERT INTO searchIndex(name, type, path) VALUES (\"$NAME\",\"$TYPE\",\"$PAGE_PATH\");"
-}