diff --git a/lib/builder.sh b/lib/builder.sh index ac44162..907e8fb 100644 --- a/lib/builder.sh +++ b/lib/builder.sh @@ -589,7 +589,6 @@ if [ "$generate_search" = "true" ] || [ "$generate_tags" = "true" ]; then parse_frontmatter "$md_file" [ "$fm_draft" = "true" ] && continue - [ -n "$fm_content_warning" ] && continue md_heading="$fm_title" if [ -z "$md_heading" ]; then @@ -606,16 +605,17 @@ if [ "$generate_search" = "true" ] || [ "$generate_tags" = "true" ]; then md_heading="$title - Page" fi fi - + if [ "$generate_search" = "true" ]; then - md_content=$(awk '{ - if (NR == 1 && $0 == "---") { in_fm = 1; next } - if (in_fm && $0 == "---") { in_fm = 0; next } - if (in_fm) next - if ($0 ~ /^```/) { in_code = !in_code; next } - if (in_code) next - print - }' "$md_file" | sed \ + if [ -z "$fm_content_warning" ] || [ "$include_cw_pages_in_search" = "true" ]; then + md_content=$(awk '{ + if (NR == 1 && $0 == "---") { in_fm = 1; next } + if (in_fm && $0 == "---") { in_fm = 0; next } + if (in_fm) next + if ($0 ~ /^```/) { in_code = !in_code; next } + if (in_code) next + print + }' "$md_file" | sed \ -e 's/^#\{1,6\} //' \ -e 's/\*\*\([^*]*\)\*\*/\1/g' \ -e 's/\*\([^*]*\)\*/\1/g' \ @@ -637,6 +637,7 @@ if [ "$generate_search" = "true" ] || [ "$generate_tags" = "true" ]; then fi printf ' {"url": "%s", "title": "%s", "content": "%s"}' "$md_url" "$md_heading" "$md_content" >> "$out/search.json" first_search_item="false" + fi fi if [ "$generate_tags" = "true" ] && [ -n "$fm_tags" ]; then diff --git a/lib/config.sh b/lib/config.sh index 2b1a83a..a8a33db 100644 --- a/lib/config.sh +++ b/lib/config.sh @@ -31,7 +31,8 @@ generate_tags = false tags_dir = "tags" generate_search = false search_in_footer = false -search_in_header = false' +search_in_header = false +include_cw_pages_in_search = false' DEFAULT_TMPL=' @@ -93,6 +94,7 @@ tags_dir="tags" generate_search="false" search_in_footer="false" search_in_header="false" +include_cw_pages_in_search="false" load_config() { [ -f "$1" ] || return @@ -154,6 +156,7 @@ load_config() { generate_search) generate_search="$val" ;; search_in_footer) search_in_footer="$val" ;; search_in_header) search_in_header="$val" ;; + include_cw_pages_in_search) include_cw_pages_in_search="$val" ;; esac done < "$1" } diff --git a/site/site.conf b/site/site.conf index 047411b..baa4697 100644 --- a/site/site.conf +++ b/site/site.conf @@ -26,4 +26,5 @@ posts_dir = "" generate_tags = false generate_search = true search_in_footer = true -search_in_header = true \ No newline at end of file +search_in_header = true +include_cw_pages_in_search = false \ No newline at end of file