diff options
author | Louie S <louie@example.com> | 2023-10-18 18:08:59 -0400 |
---|---|---|
committer | Louie S <louie@example.com> | 2023-10-18 18:08:59 -0400 |
commit | b21d0424ad6bf3cec141abe7e1bb624744c12fc6 (patch) | |
tree | 82e2fd408075ba531431a183d9b3435b1699d170 /src/index_pages.sh | |
parent | 857c316881e6fede7dfe12daf2eecec539e0179c (diff) |
Rewrite to base off template; index more terms
Diffstat (limited to 'src/index_pages.sh')
-rwxr-xr-x | src/index_pages.sh | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/index_pages.sh b/src/index_pages.sh new file mode 100755 index 0000000..030bda5 --- /dev/null +++ b/src/index_pages.sh @@ -0,0 +1,42 @@ +#!/usr/bin/env sh + +# shellcheck source=./lib/create_table +. "$(dirname "$0")"/lib/create_table +# shellcheck source=./lib/insert +. "$(dirname "$0")"/lib/insert +# shellcheck source=./lib/get_type +. "$(dirname "$0")"/lib/get_type + +DB_PATH="$1" +shift + +get_title() { + FILE="$1" + + pup -p -f "$FILE" 'title text{}' | \ + tr -d \\n | \ + #Remove trailing man categories + sed 's/ [0-9][mx]\?$//g' | \ + sed 's/\"/\"\"/g' +} + +insert_pages() { + # Get title and insert into table for each html file + while [ -n "$1" ]; do + unset PAGE_NAME + unset PAGE_TYPE + + PAGE_NAME="$(get_title "$1")" + if [ -n "$PAGE_NAME" ]; then + PAGE_TYPE="$(get_type "$1")" + if [ -z "$PAGE_TYPE" ]; then + PAGE_TYPE="Guide" + fi + insert "$DB_PATH" "$PAGE_NAME" "$PAGE_TYPE" "$(echo "$1" | sed 's/^ncurses.docset\/Contents\/Resources\/Documents\///')" + fi + shift + done +} + +create_table "$DB_PATH" +insert_pages "$@" |