|
Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
#######
#
# E-scripts on groff, troff, nroff, etc.
#
# Note 1: use the eev command (defined in eev.el) and the
# ee alias (in my .zshrc) to execute parts of this file.
# Executing this file as a whole makes no sense.
# An introduction to eev can be found here:
#
# (find-eev-quick-intro)
# http://angg.twu.net/eev-intros/find-eev-quick-intro.html
#
# Note 2: be VERY careful and make sure you understand what
# you're doing.
#
# Note 3: If you use a shell other than zsh things like |&
# and the for loops may not work.
#
# Note 4: I always run as root.
#
# Note 5: some parts are too old and don't work anymore. Some
# never worked.
#
# Note 6: the definitions for the find-xxxfile commands are on my
# .emacs.
#
# Note 7: if you see a strange command check my .zshrc -- it may
# be defined there as a function or an alias.
#
# Note 8: the sections without dates are always older than the
# sections with dates.
#
# This file is at <http://angg.twu.net/e/groff.e>
# or at <http://angg.twu.net/e/groff.e.html>.
# See also <http://angg.twu.net/emacs.html>,
# <http://angg.twu.net/.emacs[.html]>,
# <http://angg.twu.net/.zshrc[.html]>,
# <http://angg.twu.net/escripts.html>,
# and <http://angg.twu.net/>.
#
#######
# «.groff-debian» (to "groff-debian")
# «.groff-from-git» (to "groff-from-git")
# «.mom» (to "mom")
# «.manpage_via_groff» (to "manpage_via_groff")
# «.groff» (to "groff")
#####
#
# groff on debian
# 2019may11
#
#####
# «groff-debian» (to ".groff-debian")
# (find-zsh "installeddebs | sort | grep groff")
# (find-zsh "availabledebs | sort | grep groff")
# (find-status "groff")
# (find-vldifile "groff.list")
# (find-udfile "groff/")
# (find-status "groff-base")
# (find-vldifile "groff-base.list")
# (find-udfile "groff-base/")
# (find-node "(groff)Top")
# (find-man "1 man" "info groff")
#####
#
# groff-from-git
# 2019may11
#
#####
# «groff-from-git» (to ".groff-from-git")
# https://en.wikipedia.org/wiki/Groff_(software)
# https://git.savannah.gnu.org/git/groff.git/
# https://gnu.org/software/groff/
#####
#
# mom
# 2021jan22
#
#####
# «mom» (to ".mom")
# (find-man "mom")
# (find-status "groff-base")
# (find-vldifile "groff-base.list")
# (find-udfile "groff-base/")
# (find-status "groff")
# (find-vldifile "groff.list")
# (find-udfile "groff/")
# (find-udfile "groff-base/examples/mom/")
# (find-udfile "groff-base/examples/mom/README.txt")
# (find-udfile "groff-base/html/mom/")
# (find-man "1 pdfmom")
# (find-man "7 groff_mom")
;; (find-fline "/usr/share/doc/groff-base/examples/mom/")
;; (find-pdf-page "/usr/share/doc/groff-base/examples/mom/mom-pdf.pdf.gz")
#####
#
# Making a manpage (I gave up this in favor of pod, see below)
# 99sep??
#
#####
# «manpage_via_groff» (to ".manpage_via_groff")
# (find-es "debiandev" "writing_pods")
# (find-fline "~/.zshrc" "man2t")
# (find-vldifile "groff.list")
# (find-fline "/usr/doc/groff/")
# (eeman "groff_man")
# (eeman "colcrt")
# (eeman "col")
man --help
cd /tmp/
man -Tascii groff_man > groff_man
# col -b < groff_man > groff_man.txt
colcrt groff_man > groff_man.txt
man -Tascii troff | colcrt > /tmp/troff.txt
man -Tascii 7 man | colcrt > /tmp/7man.txt
# (find-fline "/tmp/groff_man.txt")
# (find-fline "/tmp/troff.txt")
# (find-fline "/tmp/7man.txt")
groff -Tps -man < /usr/lib/deb-make/debian/manpage.1.ex > /tmp/manpage.ps
gv /tmp/manpage.ps &
man -Tps 7 man > /tmp/7man.ps
gv /tmp/7man.ps &
# (find-fline "/usr/lib/deb-make/debian/manpage.1.ex")
# (find-fline "/tmp/manpage.ps")
# (find-fline "/usr/share/groff/tmac/tmac.an")
# (find-fline "/usr/share/groff/tmac/tmac.andoc")
apti manpages-dev
# (find-vldifile "manpages-dev.list")
# (find-fline "/usr/doc/manpages-dev/")
# (find-fline "/usr/doc/mktclapp/")
# (find-fline "/usr/doc/mktclapp/quickref.html")
# (find-fline "~/debian/mktclapp/m.1")
# (find-fline "/usr/man/man7/undocumented.7.gz")
# (find-fline "/usr/man/man1/gcc.1.gz")
# (find-fline "/usr/man/man7/man.7.gz")
lynx $LH/cgi-bin/man2html
#####
#
# groff
# 99oct??
#
#####
# «groff» (to ".groff")
pdsc /big/slinks2/dists/slink/main/source/text/groff_1.11a-7.dsc
cd /usr/src/groff-1.11a/
etags troff/{*.cc,*.h}
# (code-c-d "grof" "/usr/src/groff-1.11a/")
# (find-groffile "")
# (find-groffile "tmac/")
# (find-groffile "tmac/tmac.an")
# (find-groffile "tmac/tmac.e")
# (find-groffile "tmac/tmac.s")
# (find-groffile "tmac/tmac.safer")
# (find-groffile "tmac/tmac.trace")
# (find-groffile "tmac/tmac.tty")
# (find-groffile "tmac/tmac.tty-char")
#
# To understand tmac.an:
#
# (defun find-tcom (n &rest lixo) (eeman "troff" n))
# (defun find-tcom (n &rest lixo) (find-fline "/tmp/troff.txt" n))
# (defun find-trofs (f s) (find-groffile (format "troff/%s" f) (format "\"%s\"" s)))
man -Tascii troff | col -b > /tmp/troff.txt
cd /usr/src/groff-1.11a/troff/
# for i in *.cc *.h; do getstrings < $i; done | sort > ogss
for i in *.cc *.h; do echo "\n\n __ $i\n"; getstrings < $i; done > ogs
awk '/__/ { file = $2 }
NF==1 && /^\.?[A-Za-z]+$/ {
# printf "(find-groffile \"troff/%s\" \"\\\"%s\\\"\")\n", file, $1
printf "(find-trofs \"%s\" \"%s\")\n", file, $1
} ' \
< ogs > ogsa
# (find-groffile "troff/ogs")
# (find-groffile "troff/ogsa")
# (find-fline "/tmp/troff.txt")
# (find-groffile "tmac/tmac.an")
lynx $S/http/www.kohala.com/~rstevens/troff/troff.html
$S/http/plan9.bell-labs.com/7thEdMan/vol2/troff.bun
$S/http/plan9.bell-labs.com/7thEdMan/vol2/trofftut.bun
cd /tmp
rm -Rv troff
mkdir troff
cd /tmp/troff/
sh $S/http/plan9.bell-labs.com/7thEdMan/vol2/troff.bun
# (find-fline "/tmp/troff/")
# (find-fline "/tmp/troff/tprint")
groff -Tascii -me add
groff -Tascii -mm m0
groff -Tascii -me add
groff -Tascii -me add
groff -Tascii -me add
groff -Tascii -me add
groff -Tascii -me add
# (find-fline "~/.zshrc" "heredoc")
# (find-zshfile "")
# (find-zshfile "Src/builtin.c" "to start a new option parse")
strace-to ~/s man -Tascii troff
rm -v /tmp/grotty /tmp/o
cd /tmp/
heredoc grotty -m 0777 <<'---'
#!/bin/sh
tee /tmp/o | /usr/bin/grotty
---
laf
PATH=/tmp:$PATH man -Tascii 2 undocumented > u
strace -f -etrace=open,fork,execve,wait4 -o ~/s man -Tascii 2 undocumented
strace -f -etrace=fork,execve,wait4 -o ~/s man -Tascii 2 undocumented
# (find-fline "~/s")
grep -v '\-1 E' s | egrep -v 'wait4|resume|exited|fork'
# Local Variables:
# coding: utf-8-unix
# End: