From 70ff29e3d5e7d4f9f3edbe416d8718c7bafc674d Mon Sep 17 00:00:00 2001 From: Přemysl Eric Janouch
Date: Mon, 26 Oct 2020 13:24:46 +0100
Subject: Add a real manual page
Closes #3
---
 CMakeLists.txt | 16 ++++++-----
 README.adoc    | 42 ++++++----------------------
 nncmpp.adoc    | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 104 insertions(+), 41 deletions(-)
 create mode 100644 nncmpp.adoc
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c52334d..1eaac55 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -70,19 +70,21 @@ install (TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})
 install (FILES LICENSE DESTINATION ${CMAKE_INSTALL_DOCDIR})
 install (DIRECTORY contrib DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME})
 
-# Generate documentation from program help
-find_program (HELP2MAN_EXECUTABLE help2man)
-if (NOT HELP2MAN_EXECUTABLE)
-	message (FATAL_ERROR "help2man not found")
+# Generate documentation from text markup
+find_program (ASCIIDOCTOR_EXECUTABLE asciidoctor)
+if (NOT ASCIIDOCTOR_EXECUTABLE)
+	message (FATAL_ERROR "asciidoctor not found")
 endif ()
 
 foreach (page ${PROJECT_NAME})
 	set (page_output "${PROJECT_BINARY_DIR}/${page}.1")
 	list (APPEND project_MAN_PAGES "${page_output}")
 	add_custom_command (OUTPUT ${page_output}
-		COMMAND ${HELP2MAN_EXECUTABLE} -N
-			"${PROJECT_BINARY_DIR}/${page}" -o ${page_output}
-		DEPENDS ${page}
+		COMMAND ${ASCIIDOCTOR_EXECUTABLE} -b manpage
+			-a release-version=${PROJECT_VERSION}
+			"${PROJECT_SOURCE_DIR}/${page}.adoc"
+			-o "${page_output}"
+		DEPENDS ${page}.adoc
 		COMMENT "Generating man page for ${page}" VERBATIM)
 endforeach ()
 
diff --git a/README.adoc b/README.adoc
index 9b588d0..ce6e8b3 100644
--- a/README.adoc
+++ b/README.adoc
@@ -22,9 +22,14 @@ Packages
 Regular releases are sporadic.  git master should be stable enough.  You can get
 a package with the latest development version from Archlinux's AUR.
 
-Building and Running
---------------------
-Build dependencies: CMake, pkg-config, help2man, liberty (included),
+Documentation
+-------------
+See the link:nncmpp.adoc[man page] for information about usage.
+The rest of this README will concern itself with externalities.
+
+Building
+--------
+Build dependencies: CMake, pkg-config, asciidoctor, liberty (included),
                     termo (included) +
 Runtime dependencies: ncursesw, libunistring, cURL
 
@@ -43,37 +48,6 @@ Or you can try telling CMake to make a package for you.  For Debian it is:
  $ cpack -G DEB
  # dpkg -i nncmpp-*.deb
 
-Having the program installed, create a configuration file and run it.
-
-Configuration
--------------
-Create _~/.config/nncmpp/nncmpp.conf_ with contents like the following:
-
-....
-settings = {
-	address    = "localhost:6600"
-	password   = "