MARKDOWN_FILES := $(wildcard $(SRC_DIR)/**/*.md)
HTML_FILES := $(patsubst $(SRC_DIR)/%.md, $(BUILD_DIR)/%, $(MARKDOWN_FILES))
-.PHONY: all clean
+.PHONY: all clean index
all: $(HTML_FILES)
+index:
+ scripts/index.sh > build/index.html
+
# Build HTML file from Markdown
$(BUILD_DIR)/%: $(SRC_DIR)/%.md
@mkdir -p $(dir $@)
########
# MAIN #
########
-FILES="$(find "$BUILD_DIR" -type 'f')"
+FILES="$(find "$BUILD_DIR" -type 'f' -not -name "*index.html" | sort)"
make_boilerplate "$(make_ul "$FILES")"
* ~~I only want files in the build directory.~~
* ~~I want a clickable link with a reference to the title.~~
* (Stretch) An automated description would be nice.
- * (Stretch) Alphabetize index.
- * Add index page to nav bar for every page.
+ * ~~(Stretch) Alphabetize index.~~
+ * ~~Add index page to nav bar for every page.~~
* (Defer) About - add acknowledgements
* (Defer) Summaries - index
* (Defer) Figure out other categories.
* Can I centralize config? A `make config` would be nice if it includes
static content (like `author="Kyle Bowman"`) and dynamic content like
`files=$(ls build)`.
+ * Index.html will eventually need to be renamed b/c it's an "index", not the landing page.
* _static should contain only things that are copied into the website
+ * How to handle site-specific assets, like images?
+ * Idea: public/_static and public/src. Can I leverage GNU stow or similar link farm?
* (Stretch) Reformulate my templates based on jgm's templates so I can
merge updates easily.
* Write the README