simplify list output
For lists, plain old indented paragraphs are the perfect tool. To not
have vertical space between list items, we use .PD 0.
Should the many needless .PP be removed, will the .PD 0 have to be moved
after the first list item, such that that introduces vertical space
after the last paragraph.
scdoc(1), scdoc(5): follow conventions more closely
The man page title must be all caps.
Always traditionally and usually today, man page references using -man
set the name in italic type:
See
.IR man (1).
use .PP for paragraph breaks
.P is an extension not in v7 -man. This makes the man pages work with
v7 -man.
scdoc.5: fix formatting in the preamble
In a manpage, bold indicates literal text which should be entered
verbatim by the user. That makes no sense for the preamble: the
user should change "name" to the name of their manpage.
scdoc.5: fix capitalization of subsection headers
In most manpages, section headers (.SH) are set in all caps while
subsection headers (.SS) are simply capitalized. For example, on my
system:
$ zgrep -lE '^\.SS [A-Z][a-z ]+$' /usr/share/man/man1/*.1.gz | wc -l
154
$ zgrep -lE '^\.SS [A-Z ]+$' /usr/share/man/man1/*.1.gz | wc -l
31
(Also, from my perspective, the less SCREAMING CASE the better. It's
fine when the text is outdented by 8 spaces (.SH), but becomes more
irritating when it's outdented by 4.)
Disallows differing row lengths in table
scdoc will now fail if the rows in a table don't all have the same
length. A test has also been added to check this behavior, and scdoc(5)
has been updated to clarify the behavior.
Signed-off-by: Sebastian <sebastian@sebsite.pw>
Check for and abort on failed memory allocations
This commit adds checks for memory allocation failures (i.e. malloc or
calloc returns NULL), and cleanly exits the program in such a scenario.
This removes several null-deference bugs.
Signed-off-by: Sebastian <sebastian@sebsite.pw>
Escape ' at the beginning of lines
Clean up the installation process
This commit fixes the use of DESTDIR and places pc files in
/usr/share/pkgconfig, as there aren't any libraries shipped in the
resulting package, so no need for an arch-specific pc file. Also allows
to set CFLAGS without disabling the warnings.
Cast ctype.h inputs to unsigned char
Fuckings to glibc, jesus christ that code was a nightmare
Read glibc's ctype.h and then compare it to musl's src/ctype/isalpha.c
string.c: swap calloc arguments
Drop flex/bison from .build.yml
These were necessary for annotatec, which has been removed.
.build.yml: remove unused secret
.build.yml: drop annotations
Fix parsing of line breaks followed by underlined text