]> git.madduck.net Git - etc/vim.git/blobdiff - Makefile

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

Auto write option on following a link for edit
[etc/vim.git] / Makefile
index 9eb40e2b10be4f9f2724f0c10e2e99bff7d139bd..c9d11550789e3b477c74e1fc1d291427a8b8d46b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -47,14 +47,27 @@ build:
        mkdir build
 
 doc: build/html2vimdoc build/vim-tools
-       sed '/^\(\[!\[Build Status\]\|1. \[\)/d' README.md > doc/tmp.md
+       sed -e '/^\[!\[Build Status\]/d' \
+           -e '/^1\. \[/d' README.md > doc/tmp.md # remove table of contents
        build/html2vimdoc/bin/python build/vim-tools/html2vimdoc.py -f vim-markdown \
                doc/tmp.md | \
-               sed -e "s/\s*$$//; # remove trailing spaces" \
-                   -e "/^- '[^']*':\( \|$$\)/ { # match command lines" \
-                   -e "s/^- '\([^']*\)':\( \|$$\)/ \*\1\*\n\0/; # make command references" \
-                   -e ":a; s/^\(.\{1,78\}\n\)/ \1/; ta } # right align references" \
-               > doc/vim-markdown.txt && rm -f doc/tmp.md
+               sed -E -e "s/[[:space:]]*$$//" -e "# remove trailing spaces" \
+                   -e "/^.{79,}\|$$/ {" -e "# wrap table of contents over 79" \
+                   -e "h" -e "# save the matched line to the hold space" \
+                   -e "s/^(.*) (\|[^|]*\|)$$/\1/" -e "# make content title" \
+                   -e "p" -e "# print title" \
+                   -e "g" -e "# restore the matched line" \
+                   -e "s/^.* (\|[^|]*\|)$$/ \1/" -e "# make link" \
+                   -e ":c" -e "s/^(.{1,78})$$/ \1/" -e "tc" -e "# align right" \
+                   -e "}" \
+                   -e "/^- '[^']*':( |$$)/ {" \
+                   -e "h" -e "# save the matched line to the hold space" \
+                   -e "s/^- '([^']{3,})':.*/ \*\1\*/" -e "# make command reference" \
+                   -e "s/^- '([^']{1,2})':.*/ \*vim-markdown-\1\*/" -e "# short command" \
+                   -e ":a" -e "s/^(.{1,78})$$/ \1/" -e "ta" -e "# align right" \
+                   -e "G" -e "# append the matched line after the command reference" \
+                   -e "}" > doc/vim-markdown.txt && rm -f doc/tmp.md
+
 .PHONY: doc
 
 # Prerequire Python and virtualenv.