Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
####### # # E-scripts on texinfo. # # 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/a/e/texinfo.e> # or at <http://angg.twu.net/e/texinfo.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/>. # ####### # «.mailing-lists» (to "mailing-lists") # «.generating-html» (to "generating-html") # «.sample.info» (to "sample.info") # «.shortsample.texi» (to "shortsample.texi") # «.texinfo-mode» (to "texinfo-mode") # «.menus» (to "menus") # «.pinfo» (to "pinfo") # «.eev.texi» (to "eev.texi") # «.eetexi» (to "eetexi") # «.eetexi-prelim» (to "eetexi-prelim") # «.images» (to "images") # «.texinfoizing-eev-article» (to "texinfoizing-eev-article") # «.makeinfo» (to "makeinfo") # «.texinfo-6.8» (to "texinfo-6.8") # «.makeinfo-html» (to "makeinfo-html") # «.rmsessays» (to "rmsessays") # «.gendocs.sh» (to "gendocs.sh") # «.texinfo-template» (to "texinfo-template") # «.texi2html» (to "texi2html") # «.texi2html» (to "texi2html") # «.texinfo-deb-src» (to "texinfo-deb-src") # «.texinfo-doc-nonfree-deb-src» (to "texinfo-doc-nonfree-deb-src") # «.texinfo.lua» (to "texinfo.lua") # «.hyphenation» (to "hyphenation") # «.rcirc-manual» (to "rcirc-manual") # «.dir-file» (to "dir-file") # «.triggers» (to "triggers") # «.no-info-dir-entry» (to "no-info-dir-entry") # «.org-texinfo» (to "org-texinfo") # «.node-names» (to "node-names") # «.manual-name» (to "manual-name") # «.texinfo-to-epub» (to "texinfo-to-epub") # «.x-in-y-minutes» (to "x-in-y-minutes") # «.tag-table» (to "tag-table") # «.Info-directory-list» (to "Info-directory-list") # (find-es "dpkg" "install-info") # (find-es "lua" "lua.info") # (find-es "expect" "expect.info") # (find-status "texinfo") # (find-vldifile "texinfo.list") # (find-udfile "texinfo/") # (find-texinode "") # (find-status "texinfo-doc-nonfree") # (find-vldifile "texinfo-doc-nonfree.list") # (find-udfile "texinfo-doc-nonfree/") # (find-ecvsfile "") # (find-ecvsfile "omb" "makeinfo --force emacs.texi") # (find-ecvsfile "man/") # (find-ecvsfile "man/cl.texi") # (find-ecvsfile "lispintro/") # (find-ecvsfile "lispintro/emacs-lisp-intro.texi") # (find-texinode "exampleindent") @exampleindent 0 @exampleindent 5 ##### # # mailing-lists # 2021apr20 # ##### # «mailing-lists» (to ".mailing-lists") # https://lists.gnu.org/archive/html/bug-texinfo/ ##### # # Generating HTML # 2019mar02 # ##### # «generating-html» (to ".generating-html") # (find-texinode "Generating HTML") # (find-texinode "HTML Splitting") # (find-texinode "Invoking texi2any") # (find-texinode "Invoking texi2any" "--html") # (find-makenode "Top") # (find-node "(make)Top") # (find-sh "locate .texi") # (find-gitemacsfile "doc/emacs/Makefile") # (find-gitemacsfile "doc/emacs/Makefile" "emacs.html: ") ##### # # sample.info # 2000aep05 # ##### # «sample.info» (to ".sample.info") # (find-texinode "Short Sample") # (find-texinode "Short Sample Texinfo File") # (find-fline "~/TEXINFO/sample.texi") # (find-texinode "") # (find-texinode "Command List") # (find-texinode "Texinfo File Header") # (find-texinode "Command List" "`@setfilename INFO-FILE-NAME'") # (find-texinode "Command List" "`@settitle TITLE'") # (find-texinode "Command List" "`@node NAME, NEXT, PREVIOUS, UP'") # (find-texinode "Menus") # (find-texinode "Command List" "`@chapter TITLE'") # (find-texinode "Command List" "`@cindex ENTRY'") # (find-texinode "Command List" "`@unnumbered TITLE'") # (find-texinode "Command List" "`@printindex INDEX-NAME'") # (find-texinode "Command List" "`@contents'") # (find-texinode "Command List" "`@bye'") #* cd ~/TEXINFO/ cat > sample.texi <<'--%%--' \input texinfo @setfilename sample.info @settitle Sample Document @node Top, First Chapter, , (dir) @menu * First Chapter:: The first chapter is the only chapter in this sample. * Concept Index:: This index has two entries. @end menu @node First Chapter, Concept Index, Top, Top @chapter First Chapter @cindex Sample index entry @node Concept Index, , First Chapter, Top @unnumbered Concept Index @printindex cp @contents @bye --%%-- makeinfo sample.texi \ && less sample.info #* # A way to test the effect of small changes in the texinfo code above: # F3 it, then run "ee" in a vt; apply the small change, F3 it again, # and run "ee" in another vt. Switch vts many times by hand to # identify the differences visually. # Seems that makeinfo ignores blank lines in the source (possible # exception: the ones that indicate change of paragraph) but keeps the # line breaks, at least in menus. # (find-node "(~/TEXINFO/sample)Top") # (find-fline "~/TEXINFO/sample.texi") # (progn (find-fline "~/TEXINFO/sample.texi") (texinfo-show-structure)) # (find-texinode "Showing the Structure") # (find-texinode "Nodes") # (find-texinode "node" "one for each section,\nsubsection, and subsubsection") ##### # # shortsample.texi # 2022jun11 # ##### # «shortsample.texi» (to ".shortsample.texi") # (find-angg "TEXINFO/shortsample.texi") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) # (find-fline "/tmp/texinfo/") rm -Rv /tmp/texinfo/ mkdir /tmp/texinfo/ cd /tmp/texinfo/ cp -v ~/TEXINFO/shortsample.texi . texi2any shortsample.texi # (find-node "(/tmp/texinfo/shortsample)") ##### # # the texinfo mode for Emacs # 2000sep05 # ##### # «texinfo-mode» (to ".texinfo-mode") # (find-texinode "node") # (find-efile "textmodes/texinfo.el") # (find-efile "textmodes/texnfo-upd.el") # (find-efile "textmodes/texnfo-upd.el" "Buffer lacks ordinary `Top'") ##### # # Menus # 2000sep05 # ##### # «menus» (to ".menus") # (find-texinode "Menus" "have no effect in printed manuals") # (find-texinode "Less Cluttered Menu Entry") # (find-texinode "Other Info Files" "* FIRST-ENTRY-NAME:(FILENAME)NODENAME.") # (find-texinode "Other Info Files" "menu entries\nthat list only file names") # (find-texinode "Menu Example" "Here is an example") ##### # # pinfo # 2000sep06 # ##### # «pinfo» (to ".pinfo") # (find-status "pinfo") # (find-vldifile "pinfo.list") # (find-fline "/usr/doc/pinfo/") # (find-fline "/etc/pinforc") # (eeman "1 pinfo") pinfo "(texinfo)node" pinfo texinfo --node="node" #Initial errors/warnings: # Przemek's Info Viewer v0.5.9 # Security warning: Unable to get GID of group called: nobody # Warning: could not find tag table # Warning: tag table not found... # Trying to create alternate tag table... # (find-status "texinfo") # (find-vldifile "texinfo.list") # (find-fline "/usr/doc/texinfo/") # (find-node "(texinfo)Top") # (find-node "(texinfo)makeinfo options" "`--html'") # (find-man "1 makeinfo") # (find-man "1 texindex") # (find-man "1 texi2dvi") # (find-man "5 texinfo") # (code-c-d "texi" "..." "texinfo") # (find-texinode "") # (find-texinode "Texinfo Mode") # (find-texinode "Emacs Editing") # (find-texinode "Showing the Structure") # (find-hurdfile "doc/") # (find-hurdfile "doc/hurd.texi") # (find-texinode "Short Sample") # (find-fline "~/TEXINFO/eev.texi") @c The hyperlinks are seen as comments by all programming languages, @c and they can point to places in manpages, Info pages and text and @c HTML files; using them you can place pointers to all relevant @c online sources of information inside the code. @c (find-texinode "Sample Texinfo File") @c (find-texinode "Beginning a File") @c (find-texinode "Defining New Texinfo Commands") @c (find-texinode "Invoking Macros") @c (find-texinode "Creating an Info File") @c (find-texinode "Menu Location") @c (find-grubfile "docs/") @c (find-grubfile "docs/grub.texi" "@top") @c (find-texinode "makeinfo top") @c (find-fline "sample.texi") @c (find-es "texinfo") @c (find-efile "textmodes/texinfo.el") @c (find-efile "textmodes/texnfo-upd.el" "Buffer lacks ordinary `Top'") @c (find-texinode "Inserting") @c (find-texinode "Structuring" "of chapters, sections, subsections,") @c (find-texinode "Updating Requirements") @c (find-texinode "Updating Commands" "`M-x texinfo-master-menu'") @c (find-texinode "Updating Commands" "`M-x texinfo-update-node'") @c (find-texinode "Updating Commands" "`M-x texinfo-make-menu'") @c (find-texinode "Updating Commands" "`M-x texinfo-every-node-update'") @c (find-texinode "Updating Commands" "`M-x texinfo-all-menus-update'") ##### # # eev.texi # 2000sep16 # ##### # «eev.texi» (to ".eev.texi") # (find-fline "~/TEXINFO/eev.texi") ##### # # texinfo source # 2001mar03 # ##### # (find-status "texinfo") # (find-vldifile "texinfo.list") # (find-fline "/usr/doc/texinfo/") #* pdsc $SDEBIAN/dists/potato/main/source/doc/texinfo_4.0-4.dsc cd /usr/src/texinfo-4.0/ # debian/rules binary |& tee odrb cd /usr/src/texinfo-4.0/ texi2dvi texinfo.txi |& tee ot #* xdvi /usr/src/texinfo-4.0/doc/texinfo.dvi & ##### # # html2texi # 2001mar12 # ##### # (find-shttpw3 "www.texinfo.org/") #* rm -Rv /usr/src/html2texi-0.1.2/ cd /usr/src/ tar -xvzf $S/http/www.uncg.edu/~wlestes/software/html2texi/html2texi-0.1.2.tar.gz cd /usr/src/html2texi-0.1.2/ ./configure |& tee oc # Oops, make doesn't work! make |& tee om #* # (code-c-d "h2texi" "/usr/src/html2texi-0.1.2/" "/usr/src/html2texi-0.1.2/html2texi") # (find-h2texinode "") cd /tmp/ @c (find-texinode "Multitable Column Widths") @c @multitable {return} {break} {function} {while} {repeat} @c @item @code{and} @tab @code{break} @tab @code{do} @tab @code{else} @tab @code{elseif} @c @item @code{end} @tab @code{for} @tab @code{function} @tab @code{if} @tab @code{in} @c @item @code{local} @tab @code{nil} @tab @code{not} @tab @code{or} @tab @code{repeat} @c @item @code{return} @tab @code{then} @tab @code{until} @tab @code{while} @tab @code{foo} @c @end multitable # http://lists.debian.org/debian-mentors/2001/05/msg00253.html From: Josip Rodin <[email protected]> To: peter karlsson <[email protected]> Date: Sun, 20 May 2001 19:36:01 +0200 Cc: [email protected] Subject: Re: install-info On Sun, May 20, 2001 at 04:40:08PM +0200, peter karlsson wrote: > What does this error message mean? > > "No `START-INFO-DIR-ENTRY' and no `This file documents'. > install-info: unable to determine description for `dir' entry - giving up" Your info file should have something like this near the top: INFO-DIR-SECTION Texinfo documentation system START-INFO-DIR-ENTRY * Info: (info). Documentation browsing system. END-INFO-DIR-ENTRY In Texinfo sources, you'd write that like this: @dircategory Texinfo documentation system @direntry * Info: (info). Documentation browsing system. @end direntry It's either that or having to specify loads of command line options to install-info. ##### # # eetexi - preliminary tests # 2005jul26 # ##### # «eetexi-prelim» (to ".eetexi-prelim") # (find-es "texinfo" "sample.info" "cat > sample.texi") #* # (progn (eev-bounded) (find-sh ". $EE")) rm -Rv /tmp/texi/ mkdir /tmp/texi/ cd /tmp/texi/ cat > ee.texi <<'--%%--' \input texinfo @setfilename ee.info @settitle Temporary TeXinfo stuff @c* @c (eetexi-bounded) @node Top, First Chapter, , (dir) @menu * First Chapter:: The only chapter. @end menu @node First Chapter, , Top, Top @chapter First Chapter @c* @bye --%%-- makeinfo ee.texi \ && ls -l && cat ee.info #* ##### # # eetexi # 2005jul26 # ##### # «eetexi» (to ".eetexi") ;;* ;; (ee-once (eeb-eval)) (defun eetexi (s &optional e) (interactive "r") (find-sh0 "rm -Rv /tmp/texi/; mkdir /tmp/texi/") (ee-write s e "\\input texinfo @setfilename ee.info @settitle Temporary TeXinfo stuff\n" "\n@bye\n" "/tmp/texi/ee.texi") (find-sh "cd /tmp/texi/ && makeinfo ee.texi && ls -l") (find-fline "/tmp/texi/ee.info") (find-node "(/tmp/texi/ee)Top")) (eeb-define 'eetexi-bounded 'eetexi "\n@c*\n" nil t t) ;;* @c* @c (eetexi-bounded) @c (find-texinode "Top") @node Top, First Chapter, , (dir) @menu * First Chapter:: The only chapter. @end menu @node First Chapter, , Top, Top @chapter First Chapter @c* ##### # # images in .info files # 2005jul26 # ##### # «images» (to ".images") # (find-node "(texinfo)Image Syntax") # (find-sh "cd /usr/share/info/ && zgrep -a 'image src=' $(find *)") # (find-sh "locate lilypond | grep info") # (find-fline "/usr/share/info/lilypond/lilypond.info-1.gz") # (find-fline "/usr/share/info/lilypond/lilypond.info-1.gz" "image src=") # (find-node "(lilypond/lilypond-internals)Top") # (find-node "(lilypond/lilypond)Top") # (find-node "(lilypond/lilypond)Engraving") #* rm -Rv /tmp/foo/ mkdir /tmp/foo/ cd /tmp/foo/ cp -iv /usr/share/info/lilypond/* /tmp/foo/ cp -iv /usr/share/doc/lilypond/html/Documentation/user/out-www/*-flat-bw.png \ /tmp/foo/ #* # (find-node "(/tmp/foo/lilypond)Top") # (find-node "(/tmp/foo/lilypond)Engraving") # (find-efile "info.el" "defun Info-select-node") # (find-efile "info.el" "defun Info-select-node" "Info-display-images-node") # (find-efile "info.el" "[broken image]") ##### # # about TeXinfo-izing the article about eev # 2006jun28 # ##### # «texinfoizing-eev-article» (to ".texinfoizing-eev-article") # My message to the mailing list, and Karl's answer: # http://lists.gnu.org/archive/html/bug-texinfo/2006-06/msg00048.html # http://lists.gnu.org/archive/html/bug-texinfo/2006-06/msg00049.html # (find-eevafile "") # (find-node "(texinfo)Image Syntax") #* rm -Rv /tmp/eev-texi/ mkdir /tmp/eev-texi/ cd /tmp/eev-texi/ cat > eev.texi <<'--%%--' \input texinfo @setfilename eev.info @settitle Sample Document @node Top, First Chapter, , (dir) @menu * First Chapter:: The first chapter is the only chapter in this sample. * Concept Index:: This index has two entries. @end menu @node First Chapter, Concept Index, Top, Top @chapter First Chapter @cindex Sample index entry @node Concept Index, , First Chapter, Top @ifinfo @set redstarchar * @end ifinfo @iftex @c (find-eevfile "article/eev.tex" "\\myttbox{$\\bullet$}") @c @def@myttbox#1{{@setbox0=@hbox{@texttt{a}}@hbox to @wd0{@hss#1@hss}}} @c @catcode`*=13 @def*{@myttbox{$@bullet$}} @set redstarchar @bullet{} @end iftex A red star: @value{redstarchar}. Another one: * @unnumbered Concept Index @printindex cp @contents @bye --%%-- makeinfo eev.texi \ && texi2dvi eev.texi \ && xdvi eev.dvi # && less eev.info #* # (find-node "(texinfo)definfoenclose") # (find-node "(texinfo)bullet") # (find-eevfile "article/eev.tex" "\\myttbox{$\\bullet$}") # (find-fline "/tmp/eev-texi/eev.texi" 30) # (find-fline "/usr/bin/texi2dvi") # (find-fline "/usr/share/texmf/tex/texinfo/texinfo.tex") # (find-fline "/usr/share/texmf/tex/texinfo/texinfo.tex" "add-hook") ##### # # Free Software, Free Society (Selected Essays by RMS) # 2007oct23 # ##### # «rmsessays» (to ".rmsessays") # (find-angg ".emacs.papers" "rmsessays") # http://www.gnu.org/doc/book13.html #* rm -Rv ~/usrc/rms-essays/ cd ~/usrc/ tar -xvzf ~/tmp/rms-essays-cvs.tgz cvs -z3 -d:pserver:[email protected]:/sources/rms-essays co rms-essays cd ~/usrc/ tar -cvzf ~/tmp/rms-essays-cvs.tgz rms-essays/ cd ~/usrc/rms-essays/ #* rm -Rv ~/usrc/rms-essays/ tar -C ~/usrc/ -xvzf ~/tmp/rms-essays-cvs.tgz cd ~/usrc/rms-essays/ makeinfo rms-essays.texi |& tee omi # How do I make an info version of the essays? # (find-rmsessaysfile "") # (find-rmsessaysfile "omi") # (find-rmsessaysgrep "grep -nH -e 20th *.texi") # (find-rmsessaysgrep "grep -nH -e unnumbered *") dvipdf rms-essays.dvi #* # (find-rmsessaysfile "") # (find-rmsessayspage 1) ##### # # gendocs.sh # 2007nov11 # ##### # «gendocs.sh» (to ".gendocs.sh") # http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/texinfo/texinfo/util/gendocs.sh # Upstream: # http://www.gnu.org/software/texinfo/ # http://ftp.gnu.org/gnu/texinfo/ # http://ftp.gnu.org/gnu/texinfo/texinfo-4.11.tar.gz #* rm -Rv ~/usrc/texinfo-4.11/ tar -C ~/usrc/ -xvzf \ $S/http/ftp.gnu.org/gnu/texinfo/texinfo-4.11.tar.gz cd ~/usrc/texinfo-4.11/ #* # (code-c-d "texinfo" "~/usrc/texinfo-4.11/") # (find-texinfofile "") ##### # # a texinfo skeleton/template # 2008mar02 # ##### # «texinfo-template» (to ".texinfo-template") # (find-eonfile "eon.texinfo") ##### # # texi2html # 2007apr08 # ##### # «texi2html» (to ".texi2html") # (find-es "wget" "wget-flv-player") # (code-c-d "wget" "~/usrc/wget/wget-1.10.2/") # (find-wgetfile "") # (find-wgetfile "doc/") # (find-wgetfile "doc/Makefile") # (find-wgetfile "doc/Makefile" "texi2html -expandinfo -split_chapter") * (eepitch-shell) rm -Rv /tmp/wgetdoc/ mkdir /tmp/wgetdoc/ cd /tmp/wgetdoc/ cp -v ~/usrc/wget/wget-1.10.2/doc/* /tmp/wgetdoc/ texi2html -expandinfo -split_chapter wget.texi texi2html -expandinfo -split section wget.texi # (find-fline "/tmp/wgetdoc/") # (find-status "texi2html") # (find-vldifile "texi2html.list") # (find-udfile "texi2html/") # (find-node "(texi2html)") # (find-node "(texi2html)CustHTML") # (find-node "(texi2html)OptionSplit") # (find-node "(texi2html)OptionSubDir") # http://www.mathematik.uni-kl.de/~obachman/Texi2html/ # http://texinfo.org/texi2html/ # ^ That page says: "As of version 4.0, the Texinfo distribution # contains integrated support for HTML. That is, makeinfo will be able # to output in that format. But does not (yet) have all the bells and # whistles texi2html has accumulated over the years." # But texi2html is old (2000) and its (most obvious) splitting methods # create numbered pages, with names lik wget-nnn.html - and I want # named pages, sectionname.html ##### # # texi2html # 2008jun28 # ##### # «texi2html» (to ".texi2html") # (find-es "texinfo" "texi2html") # (find-bashsrcfile "") # (find-bashsrcfile "doc/") # (find-bashsrcfile "doc/Makefile.in") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) rm -Rv /tmp/bashref/ mkdir /tmp/bashref/ cd /tmp/bashref/ cp -v /home/edrx/usrc/bash-3.1/doc/*.texi . makeinfo --html bashref.texi texi2html --split --node-files bashref.texi # (find-fline "/tmp/bashref/") # (find-fline "/tmp/bashref/bashref/") # (find-bashnode "Copying This Manual") # (find-man "texi2html") # (find-man "texi2html") # (find-status "texi2html") # (find-vldifile "texi2html.list") # (find-udfile "texi2html/") # (find-node "(texi2html)Top") # (find-node "(texi2html)Invoking texi2html") # (find-node "(texi2html)Splitting output") # (find-node "(texi2html)Output files" "`--node-files'") # (find-node "(texi2html)Output files" "texi2html -split chapter") # (find-node "(texi2html)Output files" "file names") # (find-node "(texi2html)Indexop") # (find-status "texinfo") # (find-vldifile "texinfo.list") # (find-udfile "texinfo/") # (find-status "texinfo-doc-nonfree") # (find-vldifile "texinfo-doc-nonfree.list") # (find-udfile "texinfo-doc-nonfree/") # (find-fline "/usr/share/doc/texinfo/html/") ##### # # makeinfo # 2019jul12 # ##### # «makeinfo» (to ".makeinfo") # (find-texinode "Output Formats" "Info" "makeinfo") # (find-texinode "makeinfo Advantages") # (find-texinode "makeinfo in Emacs") # (find-texinode "makeinfo Preferred") # (find-man "1 makeinfo") # (find-texinode "Reference Implementation") # (find-texinode "Reference Implementation" "texi2any") ##### # # texinfo-6.8 # 2022aug18 # ##### # «texinfo-6.8» (to ".texinfo-6.8") # (find-es "apt" "install-from-sid") # https://en.wikipedia.org/wiki/Texinfo # https://git.savannah.gnu.org/cgit/texinfo.git # https://git.savannah.gnu.org/cgit/texinfo.git/snapshot/texinfo-6.8.tar.gz ##### # # makeinfo --html # 2007apr11 / 2021dec22 # ##### # «makeinfo-html» (to ".makeinfo-html") # (find-node "(texinfo)Generating HTML") # See above. * (eepitch-shell) rm -Rv /tmp/wgetdoc/ mkdir /tmp/wgetdoc/ cd /tmp/wgetdoc/ cp -v ~/usrc/wget/wget-1.10.2/doc/* /tmp/wgetdoc/ texi2html -expandinfo -split_chapter wget.texi texi2html -expandinfo -split section wget.texi makeinfo --html wget.texi # (find-fline "/tmp/wgetdoc/wget/") # (find-node "(texinfo)makeinfo options") # (find-node "(texinfo)makeinfo options" "\n`--html'") # (find-node "(texinfo)HTML Splitting") ##### # # texinfo (from the debian sources) # 2008jun28 # ##### # «texinfo-deb-src» (to ".texinfo-deb-src") # (find-angg ".emacs" "eepitch-makeinfo") # http://ftp.debian.org/debian/pool/main/t/texinfo/ # http://ftp.debian.org/debian/pool/main/t/texinfo/texinfo_4.11.dfsg.1-4.dsc # http://ftp.debian.org/debian/pool/main/t/texinfo/texinfo_4.11.dfsg.1-4.diff.gz # http://ftp.debian.org/debian/pool/main/t/texinfo/texinfo_4.11.dfsg.1.orig.tar.gz #* rm -Rv ~/usrc/texinfo/ mkdir ~/usrc/texinfo/ cd $S/http/ftp.debian.org/debian/pool/main/t/texinfo/ cp -v texinfo_4.11.dfsg.1* ~/usrc/texinfo/ cd ~/usrc/texinfo/ dpkg-source -sn -x texinfo_4.11.dfsg.1-4.dsc cd ~/usrc/texinfo/texinfo-4.11.dfsg.1/ dpkg-buildpackage -us -uc -b -rfakeroot |& tee odb #* # (find-fline "~/usrc/texinfo/") * (eepitch-shell) cd ~/usrc/texinfo/ sudo dpkg -i *.deb #* # (code-c-d "texinfo" "~/usrc/texinfo/texinfo-4.11.dfsg.1/" "texinfo") # (code-c-d "texi" "~/usrc/texinfo/texinfo-4.11.dfsg.1/" "texinfo") # (find-texinfofile "") # (find-texinfofile "makeinfo/") # (find-texinode "Top") * (eepitch-gdb-makeinfo) * (eepitch-gdb-makeinfo-kill) * (eepitch-gdb-makeinfo) tbr main run n ##### # # texinfo-doc-nonfree (from the debian sources) # 2008jun28 # ##### # «texinfo-doc-nonfree-deb-src» (to ".texinfo-doc-nonfree-deb-src") # (find-status "texinfo-doc-nonfree") # (find-vldifile "texinfo-doc-nonfree.list") # (find-udfile "texinfo-doc-nonfree/") # http://ftp.de.debian.org/debian/pool/non-free/t/texinfo-doc-nonfree/ # http://ftp.de.debian.org/debian/pool/non-free/t/texinfo-doc-nonfree/texinfo-doc-nonfree_4.11-1.dsc # http://ftp.de.debian.org/debian/pool/non-free/t/texinfo-doc-nonfree/texinfo-doc-nonfree_4.11-1.diff.gz # http://ftp.de.debian.org/debian/pool/non-free/t/texinfo-doc-nonfree/texinfo-doc-nonfree_4.11.orig.tar.gz #* rm -Rv ~/usrc/texinfo-doc-nonfree/ mkdir ~/usrc/texinfo-doc-nonfree/ cd $S/http/ftp.de.debian.org/debian/pool/non-free/t/texinfo-doc-nonfree/ cp -v texinfo-doc-nonfree_4.11* ~/usrc/texinfo-doc-nonfree/ cd ~/usrc/texinfo-doc-nonfree/ dpkg-source -sn -x texinfo-doc-nonfree_4.11-1.dsc cd ~/usrc/texinfo-doc-nonfree/texinfo-doc-nonfree-4.11/ dpkg-buildpackage -us -uc -b -rfakeroot |& tee odb #* # (eev "apti texinfo-doc-nonfree") # (find-fline "~/usrc/texinfo-doc-nonfree/") * (eepitch-shell) cd ~/usrc/texinfo-doc-nonfree/ sudo dpkg -i *.deb #* # (code-c-d "texinfodocnonfree" "~/usrc/texinfo-doc-nonfree/texinfo-doc-nonfree-4.11/") # (find-texinfodocnonfreefile "") # (find-texinfodocnonfreefile "texinfo.html/") # (find-texinfodocnonfreefile "odb") # (find-texinfodocnonfreefile "odb" "makeinfo --html texinfo.txi") ##### # # texinfo.lua # 2008aug27 # ##### # «texinfo.lua» (to ".texinfo.lua") # (find-angg "LUA/texinfo.lua") # (find-angg "TEXINFO/eev.texi") # (find-angg "LUA/lua50init.lua" "ee_dofile") # (find-texinode "Top") # (find-texinode "Texinfo Mode") # (find-texinode "Node Menu Illustration") # (find-texinode "makeinfo Pointer Creation") # (find-texinode "makeinfo Pointer Creation" "@chapter" "following" "@node") # (find-texinode "Inserting" "C-c C-c n" "texinfo-insert-@node") # (find-texinode "Command and Variable Index") # (find-texinode "chapter") # (find-fline "/tmp/tmp.texi") * (eepitch-lua51) * (eepitch-kill) * (eepitch-lua51) ee_dofile "~/LUA/texinfo.lua" -- (find-angg "LUA/texinfo.lua") pa() sa() * (eepitch-lua51) * (eepitch-kill) * (eepitch-lua51) ee_dofile "~/LUA/texinfo.lua" -- (find-angg "LUA/texinfo.lua") depth = {} TOP("", "", "This is the top node.") CHAPTER("c1", "C1", "Chapter one.") CHAPTER("c2", "C2", "Chapter two.") SECTION("s21", "s21", "A section.") SECTION("s22", "s22", "Another section.") pa() -- (find-es "lua5" "lpeg.Cmt") loadlpeg() Open = lpeg.S "{" Close = lpeg.S "}" Middlechar = 1 - lpeg.S "{}" Middlechars = Middlechar^1 Middle = lpeg.P { (Middlechars + Open * lpeg.V(1) * Close)^0 } Block = Open * Middle * Close CBlock = Open * Middle:C() * Close OptSpaces = lpeg.S " \t" ^0 SCBlock = OptSpaces * CBlock SCBlock1 = SCBlock SCBlock2 = SCBlock * SCBlock SCBlock3 = SCBlock * SCBlock * SCBlock SCBlock4 = SCBlock * SCBlock * SCBlock * SCBlock OneArg = SCBlock * lpeg.Cp() TwoArgs = SCBlock * SCBlock * lpeg.Cp() ThreeArgs = SCBlock * SCBlock * SCBlock * lpeg.Cp() FourArgs = SCBlock * SCBlock * SCBlock * SCBlock * lpeg.Cp() argthing = function (ArgPat, subj, pos, f, default) local T = { ArgPat:match(subj, pos) } local newpos = T[#T] assert(newpos, "No args!") T[#T] = nil if #T == 0 and default then return newpos, default end return newpos, f(unpack(T)) end g = function (a, b) return "<"..a.."><"..b..">" end -- for tests --[[ = argthing(TwoArgs, " { bli }{ blo } ploc", 1, print) = argthing(TwoArgs, "_ { bli }{ blo } ploc", 1, print) = argthing(TwoArgs, " { bli }{ blo } ploc", 1, g) --]] ALPHA = lpeg.R"AZ" + "_" ALPHANUM = lpeg.R"AZ" + "_" + lpeg.R"09" CmdName_ = ALPHA * ALPHANUM^0 CmdName = lpeg.P"@" * CmdName_:C() Cmd = lpeg.P"@" * CmdName_:Cmt(function(subj, pos, cmdname) print("hello") if cmdname == "FOO" then return argthing(TwoArgs, subj, pos, g, "oo") end if cmdname == "BAR" then return argthing(TwoArgs, subj, pos, print, "oo") end end) lpeg.testt = function (pat, str) PP(pat:Ct():match(str)) end Cmd:test "@FOO { bii } { aaa } mm ppp" Cmd:test "@BAR { bii } { aaa } mm ppp" PP(Cmd:test "@BAR { bii } { aaa } mm ppp") PP(Cmd:testt "@BAR { bii } { aaa } mm ppp") -- (find-angg "LUA/lua50init.lua" "lpeg_gsub") -- (find-angg "LUA/lua50init.lua" "lpeg_gsub" "Example:") lpeg.togsub = lpeg_togsub lpeg.gsub = lpeg_gsub = Cmd:gsub("foo @FOO{a}{b} ccc", print) -- Word = lpeg.R("AZ")^1 / function (s) return "<"..s..">" end -- = Word:gsub("abFOOcdBAR", function (s) return "_"..s.."_" end) -- --> "_ab_<FOO>_cd_<BAR>__" -- (find-lpegw3m "lpeg.html#matchtime") -- (find-lpegw3m "lpeg.html#func") _TAP = {} -- texinfo: argparsing pattern _TF = {} -- texinfo: function to run with the args (lpeg.R"AZ" + lpeg.R"09" = lpeg.R"AZ09" local a, b, c, d, newpos = :match(subj, pos) local T = { ArgPat:match(subj, pos) } local newpos = T[#T] if newpos == nil then error("No args Cmd = lpeg.P "@" * Cmdname:Cmt(function(subj, pos, cmdname) if cmdname == "one" then local a, newpos = Onearg:match(subj, pos) if newpos then return newpos, "<"..a..">" end elseif cmdname == "two" then local a, b, newpos = Twoargs:match(subj, pos) if newpos then return newpos, "<"..a..">", "<"..b..">" end end end) tofunction_ = function (sorf, where) if type(sorf) == "function" then return f end if type(sorf) == "string" then return (where or _G)[sorf] end end tofunction = function (sorf, where) local f = tofunction_(sorf, where) if not f then print("Not a function: ", sorf); error() end return f end * (find-fline "/tmp/tmp.texi") ##### # # hyphenation for other languages # 2008oct18 # ##### # «hyphenation» (to ".hyphenation") # http://lists.gnu.org/archive/html/bug-texinfo/2008-10/msg00000.html # http://lists.gnu.org/archive/html/bug-texinfo/2008-10/msg00007.html The basic trick is to process the texinfo file with `eplain' instead of `tex'. With TeXLive, this gives access to all configured hyphenation patterns. `bplain' would do the same, but there is (currently) no soft link to the `tex' binary. In txi-de.tex, add the following lines at the very beginning: \makeatletter \global\lefthyphenmin 2 \global\righthyphenmin 2 \global\language\l@ngerman \makeatother That's it. Add, for example, the following at the beginning of your texinfo file: @documentlanguage de @documentencoding UTF-8 (...) Sorry, my mistake. It works with etex too if you use this snippet instead of the previous one: \catcode`\@11\relax \global\lefthyphenmin 2 \global\righthyphenmin 2 \global\language\lang@ngerman \catcode`\@12\relax ##### # # rcirc manual # 2008nov19 # ##### # «rcirc-manual» (to ".rcirc-manual") # (find-fline "~/bigsrc/emacs/doc/misc/rcirc.texi") #* rm -Rv /tmp/rcirc/ mkdir /tmp/rcirc/ cd ~/bigsrc/emacs/doc/misc/ cp -v rcirc.texi doclicense.texi /tmp/rcirc/ cd /tmp/rcirc/ mkdir html/ makeinfo -o html/ --html rcirc.texi #* # (find-node "(texinfo)makeinfo options") # (find-node "(texinfo)makeinfo options" "\n`--html'") # (find-node "(texinfo)makeinfo options" "\n`-o FILE'") # (find-fline "/tmp/rcirc/") # (find-w3m "/tmp/rcirc/html/index.html") ##### # # where is the dir file? # 2011oct13 # ##### # «dir-file» (to ".dir-file") # (find-ecvsfile "") # (find-ecvsfile "info/") # (find-ecvsfile "info/dir") # (find-ecvssh "find | sort | grep -i dir") # (find-efile "" "info") ##### # # Processing triggers... # 2011dec26 # ##### # «triggers» (to ".triggers") # (find-es "anatocc" "objdump") # (find-vldifile "" "binutils-doc.list") Processing triggers for install-info ... install-info: warning: no info dir entry in `/usr/share/info/python2.5-lib.info.gz' install-info: warning: no info dir entry in `/usr/share/info/python2.5-api.info.gz' install-info: warning: no info dir entry in `/usr/share/info/latex2rtf.info.gz' install-info: warning: no info dir entry in `/usr/share/info/ocaml.info.gz' install-info: warning: no info dir entry in `/usr/share/info/python2.5-ref.info.gz' Setting up binutils-doc (2.20.1-16) ... ##### # # install-info: warning: no info dir entry in... # 2012may10 # ##### # «no-info-dir-entry» (to ".no-info-dir-entry") # "install-info: warning: no info dir entry in"... # https://bugs.launchpad.net/ubuntu/+source/menu/+bug/391466 # http://wiki.debian.org/Transitions/DpkgToGnuInstallInfo # http://us.generation-nt.com/answer/bug-609884-no-info-dir-entry-menu-info-help-201750032.html ##### # # org-texinfo # 2012jul19 # ##### # «org-texinfo» (to ".org-texinfo") # (find-es "org" "org-texinfo") # http://lists.gnu.org/archive/html/emacs-orgmode/2012-07/msg00572.html ##### # # Node names # 2019jul12 # ##### # «node-names» (to ".node-names") # (find-node "(texinfo)Writing a Node") # (find-texinode "Writing a Node") # (find-texinode "Node Menu Illustration") # (find-texinode "Referring to a Manual as a Whole") ##### # # The names - long, short, etc - of a manual # 2019jul12 # ##### # «manual-name» (to ".manual-name") # (find-texinode "@settitle") # (find-texinode "@setfilename") # (find-gitemacsfile "doc/lispref/elisp.texi") # (find-gitemacsfile "doc/lispref/elisp.texi" "@settitle GNU Emacs Lisp Reference Manual") # (find-gitemacsfile "doc/lispref/elisp.texi" "This is the @cite{GNU Emacs Lisp Reference Manual}") # (find-gitemacsfile "doc/lispref/elisp.texi" "@top Emacs Lisp") # (find-elnode "Top") # (find-elnode "Top" "Emacs Lisp") ##### # # texinfo-to-epub # 2019dec24 # ##### # «texinfo-to-epub» (to ".texinfo-to-epub") # https://lists.gnu.org/archive/html/emacs-devel/2019-12/msg00614.html # https://per.bothner.com/blog/2016/texinfo-roadmap/ # https://github.com/jlhg/texinfo2epub # https://github.com/ikrukov/epub # https://lists.gnu.org/archive/html/bug-texinfo/2018-07/msg00009.html ##### # # x-in-y-minutes # 2022jun11 # ##### # «x-in-y-minutes» (to ".x-in-y-minutes") # https://learnxinyminutes.com/docs/texinfo/ # https://learnxinyminutes.com/docs/files/learntexinfo.texi # (find-texinode "Reference Implementation") # (find-man "texi2any") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) # (find-fline "/tmp/texinfo/") # (find-fline "/tmp/texinfo/learntexinfo.texi") rm -Rv /tmp/texinfo/ mkdir /tmp/texinfo/ cd /tmp/texinfo/ cp -v $S/https/learnxinyminutes.com/docs/files/learntexinfo.texi . cat > version.texi <<'%%%' %%% texi2any learntexinfo.texi texi2any sample.texi # (find-fline "/tmp/texinfo/simple-document.texi") # wget https://learnxinyminutes.com/docs/files/learntexinfo.texi # mv -v learntexinfo.texi simple-document.texi texi2any simple-document.texi ##### # # tag-table # 2022jun22 # ##### # «tag-table» (to ".tag-table") # (find-es "maxima" "tag-table") # (find-texinode "Info Format Tag Table") # (find-texinode "@anchor") # (find-maximagitfile "doc/info/Differentiation.texi" "@anchor{gradef}") # (find-maximanode "intanalysis") # (code-c-d "ulsi" "/usr/local/share/info/") # (find-ulsifile "") # (find-ulsigrep "grep --color=auto -nH --null -e intanalysis maxima*") # (find-ulsifile "maxima.info" "Tag Table:") # (find-efunctiondescr 'Info-find-in-tag-table) # (find-efunction 'Info-find-in-tag-table) # (find-efunctiondescr 'Info-find-node-2) # (find-efunction 'Info-find-node-2) # (find-egrep "grep --color=auto -nH --null -e 'tag table' info.el") # (find-efile "info.el" " *info tag table*") (let ((default-directory "/usr/share/info/")) (grep "zgrep --color=auto -niH -e 'tag table' *") ) (progn (find-maximanode "intanalysis") (find-ebuffer " *info tag table*") ) (widen) (goto-char Info-tag-table-marker) ##### # # Info-directory-list # 2022oct01 # ##### # «Info-directory-list» (to ".Info-directory-list") # (find-fline "~/LOGS/2022oct01.emacs" "<bpalmer> ,infopath") makeinfo --html bashref.texi # 2007jun22: # http://www.emacswiki.org/cgi-bin/wiki/JorgenSchaefersEmacsConfig unhtml < $S/http/www.emacswiki.org/cgi-bin/wiki/JorgenSchaefersEmacsConfig > /tmp/.emacs-forcer.el # (find-fline "/tmp/.emacs-forcer.el") # (find-fline "/tmp/.emacs-forcer.el" "defun fc-insert-texinfo-skeleton") # http://savannah.gnu.org/mail/?group=texinfo # http://lists.gnu.org/archive/html/bug-texinfo/2007-08/msg00007.html > And no one is going to read 'info info' until they find the > reference to info-stnd in "Advanced Info Commands". I don't know about "nobody". I think it's reasonable to have the reference to info-stnd after explaining the basic commands and features of the Info system. Of course, if someone is in a hurry, they might not be patient enough to get there, but impatient people in a hurry cannot be helped with documentation anyway, in my experience. # Good CSS: http://common-lisp.net/~loliveira/tmp/iterate-manual/html_node/Introduction.html Single key navigation for texinfos HTML http://lists.gnu.org/archive/html/bug-texinfo/2009-01/index.html http://orgmode.org/worg/code/org-info-js/ 2009jan20 https://lwn.net/Articles/625072/ Emacs and changing documentation formats # Local Variables: # coding: utf-8-unix # End: