update man page in markdown support (currently unused)

This commit is contained in:
Renzo Davoli 2023-07-02 11:43:38 +02:00
parent 4be60595bb
commit 70744d6390
2 changed files with 22 additions and 21 deletions

View File

@ -1,21 +1,20 @@
cmake_minimum_required(VERSION 3.13) cmake_minimum_required(VERSION 3.7)
set(RONN_ORGANIZATION "VirtualSquare") set(PANDOC_ORG "VirtualSquare")
set(RONN_ARGS --organization=${RONN_ORGANIZATION})
# #ronn pages # ### pandoc pages
file(GLOB VU_RONN_PAGES ${CMAKE_CURRENT_SOURCE_DIR}/*.[1-8].ronn) file(GLOB VU_PANDOC_PAGES ${CMAKE_CURRENT_SOURCE_DIR}/*.[1-8].md)
set(VU_MAN_FILES) set(VU_MAN_FILES)
foreach(VU_RONN_PATH IN LISTS VU_RONN_PAGES) foreach(VU_PANDOC_PATH IN LISTS VU_PANDOC_PAGES)
# VU_RONNPAGE: basename of VU_RONN_PATH # VU_PANDOCPAGE: basename of VU_PANDOC_PATH
get_filename_component(VU_RONNPAGE ${VU_RONN_PATH} NAME) get_filename_component(VU_PANDOCPAGE ${VU_PANDOC_PATH} NAME)
# VU_MANPAGE: VU_RONNPAGE without the suffix # VU_MANPAGE: VU_PANDOCPAGE without the suffix
string(REGEX REPLACE "\.ronn$" "" VU_MANPAGE ${VU_RONNPAGE}) string(REGEX REPLACE "\.md$" "" VU_MANPAGE ${VU_PANDOCPAGE})
list(APPEND VU_MAN_FILES ${VU_MANPAGE}) list(APPEND VU_MAN_FILES ${VU_MANPAGE})
endforeach(VU_RONN_PATH) endforeach(VU_PANDOC_PATH)
add_custom_target(${PROJECT_NAME}_manpages ALL make RONN_ARGS="${RONN_ARGS}" ${VU_MAN_FILES} add_custom_target(${PROJECT_NAME}_manpages ALL make PANDOC_ORG="${PANDOC_ORG}" ${VU_MAN_FILES}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
### man pages ### man pages

View File

@ -1,16 +1,18 @@
RONN=ronn PANDOC=pandoc
RONNOK := $(shell command -v ${RONN} 2> /dev/null) PANDOCOK := $(shell command -v ${PANDOC} 2> /dev/null)
none: none:
% : %.ronn % : %.md
ifdef RONNOK ifdef PANDOCOK
# copy copyright notice # copy copyright notice
grep "^\.\\\\\"" $< > $@ || true grep "^\.\\\\\"" $< > $@ || true
# run ronn # run pandoc
$(RONN) -r ${RONN_ARGS} --pipe $< >> $@ $(eval SECTION := $(subst .,,$(suffix $@)))
# delete useless trailing "" in .TH $(eval BASENAME := $(basename $@))
sed -i '/^\.TH /s/ ""$$//' $@ $(eval TITLE := $(shell echo "${BASENAME}\(${SECTION}\)" | tr [:lower:] [:upper:]))
$(eval HEADER := "$(shell man ${SECTION} intro | head -1 | sed -e 's/^[^[:blank:]]*[[:blank:]]*//' -e 's/[[:blank:]]*[^[:blank:]]*$$//' )")
$(PANDOC) -standalone -M title=${TITLE} -M section=${SECTION} -M header=${HEADER} -M footer=${PANDOC_ORG} -M "date=`date +\"%B %Y\"`" --to man $< >> $@
else else
echo "${RONN} is not available. Manpage $@ cannot be updated" >/dev/stderr >&2 echo "${PANDOC} is not available. Manpage $@ cannot be updated" >/dev/stderr >&2
endif endif