Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
####### # # E-scripts on generating and reading html. # # 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/html.e> # or at <http://angg.twu.net/e/html.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/>. # ####### # «.html2.0-rfc» (to "html2.0-rfc") # «.aswedit_debian» (to "aswedit_debian") # «.wdg-html-reference-etch» (to "wdg-html-reference-etch") # «.wdg-html-reference-lenny» (to "wdg-html-reference-lenny") # «.wdg» (to "wdg") # «.wdg-upstream» (to "wdg-upstream") # «.line-numbers» (to "line-numbers") # «.selectors» (to "selectors") # «.font-fallbacks» (to "font-fallbacks") # «.target-trick» (to "target-trick") # «.tidy» (to "tidy") # «.validate» (to "validate") # «.princexml» (to "princexml") # «.princexml-video» (to "princexml-video") # «.prince-pre» (to "prince-pre") # «.prince-browser» (to "prince-browser") # «.prince-page-numbers» (to "prince-page-numbers") # «.prince-page-size» (to "prince-page-size") # «.prince-twb-rwh» (to "prince-twb-rwh") # «.prince-font-size» (to "prince-font-size") # «.prince-twb-toc» (to "prince-twb-toc") # «.wkhtmltopdf» (to "wkhtmltopdf") # «.onload» (to "onload") # «.swf-objects» (to "swf-objects") # «.scaled-images» (to "scaled-images") # «.css-fonts» (to "css-fonts") # «.cssed» (to "cssed") # «.oficina-PC» (to "oficina-PC") # «.google-fonts» (to "google-fonts") # «.html5-audio» (to "html5-audio") # «.html5-audio-old» (to "html5-audio-old") # «.title-attribute» (to "title-attribute") # «.charset» (to "charset") # «.popups» (to "popups") # «.layers» (to "layers") # «.parsers» (to "parsers") # «.gumbo-parser» (to "gumbo-parser") # «.gumbo-parser-deb-src» (to "gumbo-parser-deb-src") # «.tables-with-divs» (to "tables-with-divs") # «.chords» (to "chords") # «.web-mode» (to "web-mode") # «.font-in-pre» (to "font-in-pre") # «.favicon» (to "favicon") # «.ul-and-li» (to "ul-and-li") # «.html5-tables» (to "html5-tables") # «.htmz» (to "htmz") ##### # # RFC 1866: Hypertext Markup Language - 2.0 # 2001jan18 # ##### # «html2.0-rfc» (to ".html2.0-rfc") # (find-rfcfile "rfc1866.txt") # (find-rfcfile "rfc1866.txt") # (find-rfcfile "rfc1866.txt" " [SGML]") # (find-rfcfile "rfc1866.txt" "9.7.2. ISO Latin 1 Character Entity Set") # (find-lynxfile "WWW/Library/Implementation/HTMLDTD.c") # (find-lynxfile "src/LYCharSets.c") # (find-lynxfile "src/chrtrans/entities.h") # (find-lynxfile "src/chrtrans/entities.h" "BOX DRAWINGS") # but the names of the box-drawing chars are for unicode... ##### #"rfc1866.txt" " [SGML]") # (find-rfcfile "rfc1866.txt" "9.7.2. ISO Latin 1 Character Entity Set") # (find-lynxfile "WWW/Library/Implementation/HTMLDTD.c") # (find-lynxfile "src/LYCharSets.c") # (find-lynxfile "src/chrtrans/entities.h") # (find-lynxfile "src/chrtrans/entities.h" "BOX DRAWINGS") # but the names of the box-drawing chars are for unicode... ##### # # html 4.0 # 2004nov07 # ##### # http://www.w3.org/MarkUp/ # http://www.w3.org/TR/html4/ # http://www.w3.org/TR/1999/REC-html401-19991224/ # http://www.w3.org/TR/1999/REC-html401-19991224/html40.txt # http://www.w3.org/TR/html401/struct/tables.html # (find-available "w3-recs") # (code-c-d "html40" "$S/http/www.w3.org/TR/1999/REC-html401-19991224/") # (find-html40file "html40.txt") # (find-html40file "html40.txt" "\nQuick Table of Contents") # (find-html40file "html40.txt" "\nFull Table of Contents") # (find-html40file "html40.txt" "\nFull Table of Contents" "11. Tables") # (find-html40file "html40.txt" "\n11.1 Introduction to tables") # (find-html40file "html40.txt" "13.7.1" "expressed as percentages") psne http://www.w3.org/TR/1999/REC-html401-19991224/html40.txt # (code-c-d "html40" "$S/http/www.w3.org/TR/1999/REC-html401-19991224/") # (find-html40file "html40.txt" "A. Soria" "rowspan") # (eeb-define eeb-html eehtml ee-delimiter-hash) #* <!-- (eeb-html) (eev "firefox /tmp/ee.html &") --> <TABLE border="1"> <TR><TD>1 <TD rowspan="2">2 <TD>3 <TR><TD>4 <TD>6 <TR><TD>7 <TD>8 <TD>9 </TABLE> #* ##### # # wml-1.6.7 # ##### rm -Rv /usr/src/wml-1.6.7/ cd /usr/src/ tar -xvzf /snarf/ftp/ftp.engelschall.com/sw/wml/wml-1.6.7.tar.gz cd /usr/src/wml-1.6.7/ # (find-fline "/usr/src/wml-1.6.7/INSTALL") rm -Rv /usr/local/wml/ mkdir /usr/local/wml/ ./configure --prefix=/usr/local/wml |& tee oc make |& tee om make test |& tee omt ##### # # asWedit-4.0 # ##### # (find-fline "/snarf/http/www.advasoft.com/asWedit/asWedit-4.0-i386.linux.tar.gz") rm -Rv /usr/src/asWedit-4.0 rm -v /usr/local/bin/asWedit rm -v /usr/local/lib/asWedit.hlp cd /usr/src/ tar -xvzf /snarf/http/www.advasoft.com/asWedit/asWedit-4.0-i386.linux.tar.gz ln -s /usr/src/asWedit-4.0/asWedit /usr/local/bin/asWedit ln -s /usr/src/asWedit-4.0/asWedit.hlp /usr/local/lib/asWedit.hlp # (find-fline "/usr/src/asWedit-4.0/") # (find-fline "/usr/src/asWedit-4.0/INSTALL" "app-defaults") # (find-fline "/usr/src/asWedit-4.0/AsWedit") # (find-fline "/usr/src/asWedit-4.0/AsWedit" "shortcuts for") # (find-fline "/usr/src/asWedit-4.0/asWedit.hlp") # (find-fline "/usr/src/asWedit-4.0/asWedit.hlp" "netscapeCmd") asWedit -html3 /var/www/showquery.html edrxnetscape http://www.advasoft.com/asWedit/ cd /snarf/ftp/sunsite.doc.ic.ac.uk/packages/www/asWedit/ ##### # # asWedit-4.0 (.deb) # ##### cd /snarf/ftp/sunsite.doc.ic.ac.uk/packages/www/asWedit/ dpkg -i /snarf/ftp/sunsite.doc.ic.ac.uk/packages/www/asWedit/asWedit-i386.linux_4.0-0.deb rm -Rv /usr/src/asWedit-4.0 cd /usr/src/ tar -xvzf /snarf/ftp/sunsite.doc.ic.ac.uk/packages/www/asWedit/emacs-mode-asWedit-4.0.tar.gz ln -s /usr/src/asWedit-4.0/asWedit_em.hlp /usr/local/lib/asWedit_em.hlp ln -s /usr/src/asWedit-4.0/AsWedit_em /usr/X11R6/lib/X11/app-defaults/AsWedit_em # (find-fline "/usr/src/asWedit-4.0/") # (find-fline "/usr/src/asWedit-4.0/AsWedit_em" "and Emacs bindings") # (find-fline "/usr/src/asWedit-4.0/asWedit_em.hlp") # (find-vldifile "aswedit.list") # (find-fline "/usr/doc/asWedit/") # (find-fline "/usr/X11R6/lib/X11/app-defaults/AsWedit") # (find-fline "/usr/X11R6/lib/asWedit.hlp") asWedit -html3 -emacs /var/www/showquery.html edrxnetscape http://localhost/showquery.html cd /usr/X11R6/lib/ cat asWedit.hlp \ | perl -e 'undef $/; $_ = <>; while (m/\n(\~.*\n.*\n)/g) { print $1; }' ##### # # asWedit (slink) # 99oct13 # ##### # «aswedit_debian» (to ".aswedit_debian") apti libc5 xlib6 cd /snarf/ftp/sunsite.doc.ic.ac.uk/packages/www/asWedit/ # (find-fline "/snarf/ftp/sunsite.doc.ic.ac.uk/packages/www/asWedit/") dpkg -i asWedit-i386.linux_4.0-0.deb # (find-vldifile "aswedit.list") # (find-fline "/usr/doc/asWedit/") # (find-fline "/usr/X11R6/lib/asWedit.hlp") # (find-fline "/usr/X11R6/lib/asWedit.hlp" "ISINDEX") # (find-fline "/usr/X11R6/lib/asWedit.hlp" "<ISINDEX> is deprecated") ##### # # php3 # ##### Pgrep m/php3/i |& tee ~/o # (find-fline "~/o") pdsc /debian/dists/slink/main/source/web/php3_3.0.5-3.dsc # (find-php3file "") # (find-php3file "debian/") # (find-php3file "debian/postinst" "manually") apti php3 php3-doc php3-dev # (find-fline "/etc/apache/httpd.conf" "# LoadModule") # LoadModule php3_module /usr/lib/apache/1.3/libphp3.so # (find-vldifile "php3-doc.list") # (find-vldifile "php3.list") edrxnetscape /usr/doc/php3-doc/html/manual.html # What is the center of the docs? # cd /usr/doc/php3-doc/html/ ls > ~/o # rm -Rv /tmp/w mkdir /tmp/w/ cd /tmp/w/ wget -r -nc -np -l 60 http://127.0.0.1/doc/php3-doc/html/manual.html cd /tmp/w/127.0.0.1/doc/php3-doc/html/ ls > ~/o2 # diff ~/o ~/o2 lynx /usr/doc/php3-doc/html/manual.html ##### # # bluefish # ##### rm -Rv /usr/src/bluefish-0.3.2/ cd /usr/src/ tar -xvzf $S/http/bluefish.linuxbox.com/download/bluefish-0.3.2.tar.gz cd /usr/src/bluefish-0.3.2/ ./configure |& tee oc make |& tee om # (find-fline "/usr/src/bluefish-0.3.2/") ##### # # weblint # ##### # (find-slink "weblint") # (find-fline "/usr/doc/weblint/") # (find-fline "$S/http/www.yahoo.com/Computers_and_Internet/Information_and_Documentation/Data_Formats/HTML/") ##### # # css # 2001oct20 # ##### <php4> <style type=text/css> <php4> A:link { text-decoration:none} <php4> A:visited { text-decoration:none} <php4> </style> # (find-shttpfile "www.inf.puc-rio.br/nd/ndeduction.css") # (find-shttpfile "www.inf.puc-rio.br/nd/program_i.html") ##### # # wdg-html-reference: installing it (and the validator) on etch # 2005mar09 # ##### # «wdg-html-reference-etch» (to ".wdg-html-reference-etch") # The package is not at etch, download the deb and install it by hand... # http://www.debian.org/News/weekly/2005/47/ # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=337035 # http://ftp.debian.org/debian/pool/main/w/wdg-html-reference/ # http://ftp.debian.org/debian/pool/main/w/wdg-html-reference/wdg-html-reference_4.0-2_all.deb sudo dpkg -i \ $S/http/ftp.debian.org/debian/pool/main/w/wdg-html-reference/wdg-html-reference_4.0-2_all.deb apti wdg-html-validator wdg-html-reference "debian weekly news" # 2009aug24: # «wdg-html-reference-lenny» (to ".wdg-html-reference-lenny") # http://www.guadalinex.org/debian/pool/main/w/wdg-html-reference/ # http://www.guadalinex.org/debian/pool/main/w/wdg-html-reference/wdg-html-reference_4.0-2_all.deb sudo dpkg -i \ $S/http/www.guadalinex.org/debian/pool/main/w/wdg-html-reference/wdg-html-reference_4.0-2_all.deb ##### # # html 4.01: validators and reference # 2005mar09 # ##### # «wdg» (to ".wdg") # (find-status "wdg-html-reference") # (find-vldifile "wdg-html-reference.list") # (find-udfile "wdg-html-reference/") # (find-status "wdg-html-validator") # (find-vldifile "wdg-html-validator.list") # (find-udfile "wdg-html-validator/") # (find-man "1 validate") # (code-c-d "wdgref" "/usr/share/doc/wdg-html-reference/reference/") # (code-c-d "wdg40" "/usr/share/doc/wdg-html-reference/reference/html40/") # (code-c-d "wdgcss" "/usr/share/doc/wdg-html-reference/reference/css/") # (find-wdg40w3m "structure.html#doc") # (find-wdg40w3m "alist.html") # (find-wdg40w3m "special/span.html") # (find-wdgreffile "html40/") # (find-wdgrefw3m "html40/structure.html#doc") # (find-wdgrefw3m "html40/alist.html") # (find-wdgrefw3m "html40/special/span.html") # (find-wdgrefw3m "css/index.html") # (find-wdgrefw3m "css/structure.html") # (find-w3m "/usr/share/doc/wdg-html-reference/reference/css/properties.html") # (find-udw3m "wdg-html-reference/reference/css/properties.html") # (find-udw3m "wdg-html-reference/reference/html40/structure.html#doc") file:///usr/share/doc/wdg-html-reference/reference/html40/structure.html#doc #* cat > /tmp/foo.html <<'%%%' <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <HTML> <HEAD> <TITLE>The document title</TITLE> </HEAD> <BODY> <H1>Main heading</H1> <P>A paragraph.</P> <P>Another paragraph.</P> <P><span style="background-color: purple; color: yellow;">text</span></P> <P><span style="background-color: #FF3300; color: yellow;">text</span></P> <P><span style="background-color: #FF3300;">text</span></P> <P><span style="background-color: red;">text</span></P> <UL> <LI>A list item.</LI> <LI>Another list item.</LI> </UL> </BODY> </HTML> %%% #* # (find-wdgrefw3m "html40/alist.html") # (find-wdgreffile "html40/lists/li.html") # (find-wdgrefw3m "html40/lists/li.html") # (find-wdgrefw3m "css/classification/list-style.html") http://www.ilovejackdaniels.com/css_cheat_sheet.pdf http://www.lesliefranke.com/files/reference/csscheatsheet.html (Broken:) http://home.tampabay.rr.com/bmerkey/cheatsheet.htm (use this instead:) http://www.engineeringdegree.net/resources/css-tutorials/ <table border="0" style="background: #ffda99; border: 1px solid black; padding: 0; margin: 0" cellpadding=0 cellspacing=0><tr><td> <pre style="background: #dfda99; padding: 4px">[HLIST2 Items: [HREF http://foo/bar a link] [HREF http://another/link] [IT Italic text] [BF Boldface] ]</pre> </td></tr></table> ##### # # WDG HTML reference: dowloading from upstream # 2010sep09 # ##### # «wdg-upstream» (to ".wdg-upstream") # (find-angg ".emacs" "wdg") # http://htmlhelp.com/distribution/ # http://htmlhelp.com/distribution/wdghtml40.tar.gz # http://htmlhelp.com/distribution/wdgcss.tar.gz # http://htmlhelp.com/distribution/wilbur.zip # (find-man "1 tar") # (find-man "1 tar" "--strip") #* rm -Rv ~/usrc/wdg/ mkdir ~/usrc/wdg/ mkdir ~/usrc/wdg/html40/ tar -C ~/usrc/wdg/html40/ --strip 1 -xvzf $S/http/htmlhelp.com/distribution/wdghtml40.tar.gz mkdir ~/usrc/wdg/css/ tar -C ~/usrc/wdg/css/ --strip 1 -xvzf $S/http/htmlhelp.com/distribution/wdgcss.tar.gz cd ~/usrc/wdg/ #* # (find-fline "~/usrc/wdg/") # (code-c-d "wdgref" "~/usrc/wdg/") # (code-c-d "wdg40" "~/usrc/wdg/html40/") # (code-c-d "wdgcss" "~/usrc/wdg/css/") # (find-wdg40file "") # (find-wdg40w3m "index.html") # (find-wdgrefw3m "css/index.html") # (find-wdgrefw3m "css/structure.html") # (find-wdgcssfile "") # (find-wdgcssw3m "font/index.html") # (find-wdgcssw3m "font/index.html" "backup") # (find-wdgcssgrep "grep -niH -e font *") ##### # # line numbers (from an idea by Marc Simpson) # 2008sep11 # ##### # «line-numbers» (to ".line-numbers") # (find-blogme3grep "grep -nH -e red *.lua") # (find-THLgrep "grep -nH -e red *.html") # (find-THfile "blogme3.blogme" ".red { color: red; }") # (find-THLfile "blogme3.html" ".red { color: red; }") # (find-THLfile "eev-article.html" "div style=" "background-color: ") # (find-wdgcssw3m "text/text-decoration.html") # (find-wdgcssw3m "structure.html#pseudo" "A:link") # (find-wdgcssw3m "structure.html" "Class Selectors") # (find-wdgcssw3m "structure.html" "<P CLASS=warning>") # (find-wdgcssw3m "structure.html" "Anchor Pseudo-classes") # (find-wdgcssw3m "structure.html" "assigned to the A element") # (find-eevfile "eev-all.el.html" "a:hover") # http://www.engineeringdegree.net/resources/css-tutorials/ # Broken: http://home.tampabay.rr.com/bmerkey/cheatsheet.htm # (find-w3m "$S/http/home.tampabay.rr.com/bmerkey/cheatsheet.htm" "A:link") # use this instead: http://www.engineeringdegree.net/resources/css-tutorials/ # Pseudo-classes can be used in contextual selectors and can be combined # with normal classes. # A:link {color: #900} # A:link IMG { border: solid blue } # A:hover { background:#ffff00; } # A:visited {} # A:active {} /* style visible only at moment of click */ # Combining pseudos: Normal class names precede pseudos in the selector. # A.external:link { color: magenta } # <A CLASS="external" HREF="http://out.side/">external link</A> A:link, A:visited, A:active { text-decoration: none } #ffda99 /* .n { color: #ffda99; text-decoration: none; } */ .n:link, .n:visited { color: red; text-decoration: none; } /* .n:visited { color: green; text-decoration: none; } */ .n:hover { color: blue; text-decoration: underline; } .comment { color: #ff7f24; } /* .ln { background-color: red; } */ /* .ln:hover { background-color: green; } */ #* [# (eeblogme-now-bounded) #] [SETHEADSTYLE /* .ln { background-color: yellow; } */ /* a.ln { background-color: blue; } */ a.ln:link { background-color: yellow; } a.ln:visited { background-color: yellow; } ] <pre> <span class="ln"><a name="24"><a href="#24">24</a>:</a></span>Contents of line 24 <span><a name="24"><a class="ln" href="#24">24</a>:</a></span>Contents of line 24 </pre> [PRE Foo <a class="comment" name="1">..<a href="#1">1</a>: </a>bar <a class="n" name="202"><a href="#202">202</a>: </a>plic <a name="202"><a class="n" href="#202">202</a>: </a>plic Bletch <span class="comment">Komment</span>foo ] #* I am trying to define a style for line numbers in listings (in <PRE>___</PRE> blocks). Ideally, I would invoke it as this: <pre> <span class="ln"><a name="24"><a href="#24">24</a>:</a></span>Contents of line 24 </pre> but I can't find the right syntax for specifying properties for the links in the <span class="ln">___<span> block... maybe the "a" class interferes with it? any hints? here's what I am trying: <style type="text/css"><!-- /* .ln { background-color: yellow; } */ .ln:link { background-color: yellow; } .ln:visited { background-color: yellow; } --> </style> style type="text/css"><!-- /* .n { color: #ffda99; text-decoration: none; } */ .n:link, .n:visited { color: red; text-decoration: none; } /* .n:visited { color: green; text-decoration: none; } */ .n:hover { color: blue; text-decoration: underline; } .comment { color: #ff7f24; } --> </style> # http://dev.alt.textdrive.com/browser/HTTP/IPMnemonic.lua # (find-es "html" "wdg") # (find-status "iceweasel-webdeveloper") # (find-vldifile "iceweasel-webdeveloper.list") # (find-udfile "iceweasel-webdeveloper/") apti iceweasel-webdeveloper C-S-s no firefox toggla o CSS # (find-anggfile "TH/blogme.blogme" "-- 2007apr17, guilherme") ##### # # Selectors (with thanks to Vinicius Toledo Nunes) # 2009sep09 # ##### # «selectors» (to ".selectors") # http://www.w3.org/TR/CSS21/selector.html # (find-wdgcssw3m "structure.html") # (find-wdgcssw3m "structure.html" "ID Selectors") # (find-wdgcssw3m "structure.html" "Class Selectors") # (find-wdgcssw3m "structure.html" "Contextual Selectors") # (find-wdgcssw3m "structure.html" "Comments") # (find-TH "tourism") #* [# (eeblogme-now-bounded) # (find-fline "/tmp/ee.blogme") # (find-fline "/tmp/ee.html") # file:///tmp/ee.html #] [SETHEADSTYLE /* "#texto" para <div id="texto"> </div> ".texto" para <span class="texto"> </span> ".texto i" para <i> </i> dentro de class="texto" */ .texto { color: red } .texto i { color: green } ] [lua: def [[ `` 1 body "``$body''" ]] def [[ `` 1 body "“$body”" ]] ] [_TARGETS bey-tourism => http://www.hermetic.com/bey/tourism.html stallman-kth => http://www.gnu.org/philosophy/stallman-kth.html ] [P I need to start by quoting some paragraphs from the transcription of a [__ stallman-kth speech] that Richard Stallman gave at the KTH (Royal Institute of Technology) in Stockholm, Sweden, at the 30th of October of 1986. They'll probably make clear enough how we are far nowadays from being in a perfect world.] [NARROW [SPANCLASS texto [P In the old days on ITS it was considered desirable that everyone could look at any file, change any file, because we had reasons to. I remember one interesting scandal where somebody sent a request for help in using Macsyma. Macsyma is a symbolic algebra program that was developed at MIT. [IT He sent to one of] the people working on it a request for some help, and he got an answer a few hours later from somebody else. He was horrified, he sent a message [`` so-and-so must be reading your mail, can it be that mail files aren't properly protected on your system?] [`` Of course, no file is protected on our system. What's the problem? You got your answer sooner; why are you unhappy? Of course we read each other's mail so we can find people like you and help them.] Some people just don't know when they're well off.] ] [P (...)] [P But gradually things got worse and worse, it's just the nature of the way the system had been constructed forced people to demand more and more security. Until eventually I was forced to stop using the machine, because I refused to have a password that was secret. Ever since passwords first appeared at the MIT-AI lab I had come to the conclusion that to stand up for my belief, to follow my belief that there should be no passwords, I should always make sure to have a password that is as obvious as possible and I should tell everyone what it is. Because I don't believe that it's really desirable to have security on a computer, I shouldn't be willing to help uphold the security regime. On the systems that permit it I use the [`` empty password], and on systems where that isn't allowed, or where that means you can't log in at all from other places, things like that, I use my login name as my password. It's about as obvious as you can get. And when people point out that this way people might be able to log in as me, i say [`` yes that's the idea, somebody might have a need to get some data from this machine. I want to make sure that they aren't screwed by security].] ] #* <pre> <span class="ln"><a name="24"><a href="#24">24</a>:</a></span>Contents of line 24 <span><a name="24"><a class="ln" href="#24">24</a>:</a></span>Contents of line 24 </pre> [PRE Foo <a class="comment" name="1">..<a href="#1">1</a>: </a>bar <a class="n" name="202"><a href="#202">202</a>: </a>plic <a name="202"><a class="n" href="#202">202</a>: </a>plic Bletch <span class="comment">Komment</span>foo ] #* ##### # # prince-page-numbers # 2021jun26 # ##### # «prince-page-numbers» (to ".prince-page-numbers") # https://www.princexml.com/doc/13/cookbook/#page-numbering # https://newbedev.com/print-page-numbers-on-pages-when-printing-html # https://docraptor.com/documentation/tutorial/page-numbers # (find-efunction 'find-telegram-save-log-links) # (find-efunction 'find-telegram-save-log-links "content: counter(page)") ##### # # prince-page-size # 2022mar17 # ##### # «prince-page-size» (to ".prince-page-size") # https://www.princexml.com/doc/paged/#page-size @page { size: A4 } ##### # # prince-twb-rwh # 2022mar17 # ##### # «prince-twb-rwh» (to ".prince-twb-rwh") # (find-fline "~/LOGS/2022mar17.emacs") # https://cyber.com.au/~twb/.bin/rwh # https://cyber.com.au/~twb/.bin/twb-pdf # https://cyber.com.au/~twb/prince/prince.css # (find-status "librsvg2-bin") # (find-vldifile "librsvg2-bin.list") # (find-udfile "librsvg2-bin/") # (find-status "xmlstarlet") # (find-vldifile "xmlstarlet.list") # (find-udfile "xmlstarlet/") # (find-status "html2ps") # (find-vldifile "html2ps.list") # (find-udfile "html2ps/") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) * (eepitch-bash) * (eepitch-kill) * (eepitch-bash) for i in curl wget rsvg-convert tidy xmlstarlet html2ps do type $i done cd /tmp/ base="http://book.realworldhaskell.org/read/" rm -rf rwh mkdir rwh cd rwh wget -O- $base | egrep -o "[^\"'[:space:]]+\\.html" | sed \$d >chapter.list # BUG: callouts/{1..10}.png 404 at rwh, which makes wget error out. wget -nv -nH -nd -k -p --base $base -i chapter.list -R js,css$(printf ,%s.png {1..10}) wget -nv http://docbook.sf.net/release/xsl/current/images/callouts/{1..10}.{png,svg} wget -nv http://docbook.sf.net/release/xsl/current/images/{caution,note,tip,warning}.svg # Prepare HTML for xmlstarlet. tidy -m -q --show-warnings no -n -asxml -utf8 --indent auto --wrap 8192 *.html || test $? -eq 1 # ignore warnings from tidy sed -rsi *.html \ -e 's|xmlns="http://www.w3.org/1999/xhtml"||' \ -e '/<head>/a<meta name="author" content="Bryan O’Sullivan, Don Stewart, and John Goerzen" />' for i in *.html do # This # 1. removes the inline toc and navigation; # 2. changes the page title from <h2> to <h1>; and # 3. works around an <li><p x=y> bug in html2ps. # 4. use vector images for standard docbook icons. <$i >$i~ xmlstarlet ed -P -S \ -d "//p/@id" -d "//pre/@id" -d "//a/@id" \ -d "//div[@class='navheader' or @class='navfooter' or @class='rwhfooter']" \ -r "//div[@class='preface' or @class='chapter' or @class='appendix']/div/div/div/h2[1]" -v h1 \ -u "//img[@src='caution.png']/@src" -v caution.svg \ -u "//img[@src='note.png']/@src" -v note.svg \ -u "//img[@src='tip.png']/@src" -v tip.svg \ -u "//img[@src='warning.png']/@src" -v warning.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/1.png']/@src" -v 1.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/2.png']/@src" -v 2.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/3.png']/@src" -v 3.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/4.png']/@src" -v 4.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/5.png']/@src" -v 5.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/6.png']/@src" -v 6.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/7.png']/@src" -v 7.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/8.png']/@src" -v 8.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/9.png']/@src" -v 9.svg \ -u "//img[@src='http://book.realworldhaskell.org/read/images/callouts/10.png']/@src" -v 10.svg mv $i~ $i done # FIXME: ~/.prince.css here. # https://cyber.com.au/~twb/.bin/twb-pdf # (find-fline "$S/https/cyber.com.au/~twb/.bin/twb-pdf") * (eepitch-bash) * (eepitch-kill) * (eepitch-bash) cd /tmp/rwh/ wget -nc https://cyber.com.au/~twb/prince/prince.css cat > ./twb-pdf <<'%%%' #!/bin/bash set -eEu set -o pipefail trap 'echo >&2 "${0##*/}:${LINENO}: ${FUNCNAME[0]:+${FUNCNAME[0]}(): } unknown error"' ERR (($#)) || set -- - # Without arguments, have prince read from stdin. export BROWSER='/tmp/rwh/twb-pdf --media=screen' # prince --no-author-style -s /tmp/rwh/prince.css "$@" -o/dev/stdout | prince --no-author-style \ -s https://cyber.com.au/~twb/prince/prince.css \ "$@" -o/dev/stdout | if [[ -t 1 && -e /proc/self/fd/1 && -n "${DISPLAY:-}" ]] then with-temp-file xpdf.real -title "$*" -fullscreen -rv 2>/dev/null else cat fi %%% chmod 755 twb-pdf chrt --idle 0 nice ionice -c3 ./twb-pdf $(<chapter.list) >rwh.pdf # (find-sh "prince --help") PDF twb-pdf and twb-pdf-new are a huge mess, though. # (find-man "chrt") ##### # # prince-font-size # 2022mar17 # ##### # «prince-font-size» (to ".prince-font-size") # (find-fline "~/LOGS/2022mar17.emacs" ":root{font-size:12pt}") ##### # # prince: adding page numbers to the Table of Contents # 2022mar17 # ##### # «prince-twb-toc» (to ".prince-twb-toc") /* Example adding page numbers to the Table of Contents of https://de.wikipedia.org/wiki/Kultur */ #toc a::after { content: leader(" . ") target-counter(attr(href), page) } #toc li { list-style-type: none } #toc > ul { columns: 40ex; column-gap: 1em; float: top; margin: 0; padding: 0; margin-bottom: 1ex; padding-bottom: 1ex; border-borrom: thin black solid } #toctitle, .tocnumber { display: none } ##### # # wkhtmltopdf # 2022mar17 # ##### # «wkhtmltopdf» (to ".wkhtmltopdf") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) apti wkhtmltopdf # (find-status "wkhtmltopdf") # (find-vldifile "wkhtmltopdf.list") # (find-udfile "wkhtmltopdf/") # https://wkhtmltopdf.org/ # (find-man "1 wkhtmltopdf") # (find-sh "wkhtmltopdf --help") # (find-sh "wkhtmltopdf --htmldoc") # (brprinceurl "http://angg.twu.net/index.html") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) cd /tmp/ wkhtmltopdf http://angg.twu.net/index.html index-w.pdf prince -s /tmp/print.css \ -o /tmp/index-p.pdf \ http://angg.twu.net/index.html prince -s /tmp/print.css \ -o /tmp/listp.pdf \ http://angg.twu.net/2020-list-packages-eev-nav.html # (find-pdf-page "/tmp/index-w.pdf") # (find-pdf-page "/tmp/index-p.pdf") # (find-pdf-page "/tmp/listp.pdf") # (find-pdf-text "/tmp/index.pdf") ##### # # Font fallbacks # 2009sep21 # ##### # «font-fallbacks» (to ".font-fallbacks") # (find-wdgcssw3m "font/index.html" "backup") ##### # # target trick # 2009dec06 # ##### # «target-trick» (to ".target-trick") # http://www.twisty.com/misc/tests/css/target-trick.html#a # http://www.twisty.com/misc/tests/css/target-trick.html#b ##### # # tidy # 2011jun20 # ##### # «tidy» (to ".tidy") # (find-status "tidy") # (find-vldifile "tidy.list") # (find-udfile "tidy/") # (find-status "tidy-doc") # (find-vldifile "tidy-doc.list") # (find-udfile "tidy-doc/") ##### # # HTML validators # 2011jun20 # ##### # «validate» (to ".validate") # (find-zsh "availabledebs | sort | grep validator") apti w3c-markup-validator wdg-html-validator # (find-status "w3c-markup-validator") # (find-vldifile "w3c-markup-validator.list") # (find-udfile "w3c-markup-validator/") # (find-status "wdg-html-validator") # (find-vldifile "wdg-html-validator.list") # (find-udfile "wdg-html-validator/") # http://validator.w3.org/ # (find-man "1 validate") # (find-sh "validate -h") # (find-sh "validate --emacs ~/TH/L/monep.html") # (find-sh "validate ~/TH/L/monep.html") ##### # # PrinceXML: an HTML to PDF converter (written in Mercury) # 2011jun20 # ##### # «princexml» (to ".princexml") # http://www.princexml.com/overview/ # http://www.princexml.com/download/ # http://www.princexml.com/download/prince_7.2-4ubuntu10.04_i386.deb # http://www.princexml.com/download/prince_9.0-5_debian7.4_i386.deb # http://www.princexml.com/download/prince_11.1-1_debian7.4_amd64.deb # https://www.princexml.com/download/prince_12.5-1_debian9.1_amd64.deb # https://www.princexml.com/download/prince_13.4-1_debian10_amd64.deb # https://www.princexml.com/download/prince_14.2-1_debian10_amd64.deb sudo dpkg -i $S/http/www.princexml.com/download/prince_7.2-4ubuntu10.04_i386.deb sudo dpkg -i $S/http/www.princexml.com/download/prince_9.0-5_debian7.4_i386.deb sudo dpkg -i $S/http/www.princexml.com/download/prince_11.1-1_debian7.4_amd64.deb sudo dpkg -i $S/https/www.princexml.com/download/prince_12.5-1_debian9.1_amd64.deb sudo dpkg -i $S/https/www.princexml.com/download/prince_13.4-1_debian10_amd64.deb sudo dpkg -i $S/https/www.princexml.com/download/prince_14.2-1_debian10_amd64.deb # 2019jun19: https://www.princexml.com/download/prince_12.5-1_ubuntu18.04_amd64.deb sudo dpkg -i $S/https/www.princexml.com/download/prince_12.5-1_ubuntu18.04_amd64.deb apti libjpeg8 https://www.princexml.com/download/prince-12.5-linux-generic-x86_64.tar.gz tar -C ~/usrc/ -xvzf $S/https/www.princexml.com/download/prince-12.5-linux-generic-x86_64.tar.gz sudo ~/usrc/prince-12.5-linux-generic-x86_64/install.sh # (find-status "prince") # (find-vldifile "prince.list") # (find-udfile "prince/") # (find-man "1 prince") # (find-fline "/usr/lib/prince/style/") # http://www.princexml.com/doc/7.0/properties/ # http://www.princexml.com/doc/7.0/properties/font-size/ # http://www.princexml.com/doc/7.0/properties/content/ # http://www.princexml.com/doc/7.0/selectors/ # http://www.princexml.com/doc/7.0/command-line/ # http://www.princexml.com/doc/7.0/page-breaks/ # http://www.princexml.com/doc/7.0/page-headers-footers/ # http://www.princexml.com/samples/ # http://www.princexml.com/samples/mygut.css # http://www.alistapart.com/articles/boom # http://news.ycombinator.com/item?id=501897 # http://tomayko.com/writings/princexml # http://www.youtube.com/watch?v=vcXUrNSvjhU # ^ Prince XML: Generating High Quality PDFs from HTML + CSS # http://www.lua.org/lua.css * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) # http://tomayko.com/writings/princexml cat > /tmp/print.css <<'%%%' body { margin:0 !important } #footer, #nav, .pages { display:none } %%% prince -o /tmp/tomayko-print.pdf -s /tmp/print.css http://tomayko.com # (find-xpdfpage "/tmp/tomayko-print.pdf") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) # http://tomayko.com/writings/princexml cat > /tmp/print.css <<'%%%' body { font-size: 8pt !important } %%% prince -o /tmp/monep-8.pdf -s /tmp/print.css ~/TH/L/monep.html # (find-xpdfpage "/tmp/monep-8.pdf") ##### # # PrinceXML: the Google TechTalks video # 2012mar12 # ##### ;; «princexml-video» (to ".princexml-video") ;; (find-angg ".emacs.templates" "find-youtubedl-links") ;; (find-youtubedl-links "/sda5/videos/" "Prince_XML_Generating_High_Quality_PDFs_from_HTML_CSS" "vcXUrNSvjhU" ".flv" "princexml") (code-video "princexmlvideo" "/sda5/videos/Prince_XML_Generating_High_Quality_PDFs_from_HTML_CSS-vcXUrNSvjhU.flv") ;; (find-princexmlvideo) ;; (find-princexmlvideo "0:23" "(beginning)") ;; (find-princexmlvideo "1:04" "CSS") ;; (find-princexmlvideo "1:13" "a proposal") ;; (find-princexmlvideo "2:03" "CSS") ;; (find-princexmlvideo "2:50" "book") ;; (find-princexmlvideo "5:17" "pdf newspapers") ;; (find-princexmlvideo "7:20" "thesis") ;; (find-princexmlvideo "7:56" "CSS") ;; (find-princexmlvideo "8:40" "quick introduction to CSS") ;; (find-princexmlvideo "9:46" "CSS for paged media") ;; (find-princexmlvideo "10:24" "page-break-before") ;; (find-princexmlvideo "13:13" "@page") ;; (find-princexmlvideo "14:20" "headers and footers") ;; (find-princexmlvideo "17:40" "page:left") ;; (find-princexmlvideo "18:54" "multi-column layout") ;; (find-princexmlvideo "23:50" "http support") ;; (find-princexmlvideo "26:21" "bookmarks") ;; (find-princexmlvideo "27:40" "footnotes") ;; (find-princexmlvideo "27:56" "mathml") ;; (find-princexmlvideo "32:40" "cropmarks") ;; (find-princexmlvideo "35:06" "rounded borders") ;; (find-princexmlvideo "35:36" "prince in applications") ;; (find-princexmlvideo "40:00" "menu") ;; (find-princexmlvideo "40:53" "meny") ;; (find-princexmlvideo "41:55" "web fonts") ;; (find-princexmlvideo "42:14" "microsoft core fonts") ;; (find-princexmlvideo "43:02" "font families available for browsers") ;; (find-princexmlvideo "43:40" "web fonts") ;; (find-princexmlvideo "43:56" "giant tigers") ;; (find-princexmlvideo "44:23" "prince:") ;; (find-princexmlvideo "45:40" "gyparody") ;; (find-princexmlvideo "46:06" "the road to enlightenment") # http://en.wikipedia.org/wiki/H%C3%A5kon_Wium_Lie # http://people.opera.com/howcome/2006/phd/#ch-preweb ##### # # Using prince to print an UTF-8 file using <pre>...</pre> # 2019jun20 # ##### # «prince-pre» (to ".prince-pre") # (find-angg "LATEX/2018-2-C2-P1.tex") # (find-THfile "2014-xs.blogme" "find-prince-links") # (find-fline "/home/edrx/TH/L/2014-xs.html") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) cat > /tmp/o.html <<'%%%' <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>2018-2-C2-P1.tex </title> </head> <body> <pre> </pre> </body> </html> %%% (find-2a ' (find-angg "LATEX/2018-2-C2-P1.tex") ' (find-fline "/tmp/o.html") ) * (eepitch-lua51) * (eepitch-kill) * (eepitch-lua51) allhtml = function (title, body) return [[ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>]] .. title ..[[ </title> </head> <body> <pre> ]] .. body .. "\n" .. [[ </pre> </body> </html> ]] end = allhtml("foo", "bar") -- (find-fline "~/usrc/agda-categories/src/Categories/") -- (find-fline "~/usrc/agda-categories/src/Categories/Category.agda") -- (find-fline "~/usrc/agda-categories/src/Categories/Functor.agda") -- (find-fline "~/usrc/agda-categories/src/Categories/Functor/Core.agda") -- (find-fline "~/usrc/agda-categories/src/Categories/Adjoint.agda") bod = ee_readfile "~/usrc/agda-categories/src/Categories/Adjoint.agda" htm = allhtml("Adjoint.agda", bod) ee_writefile("/tmp/o.html", htm) preize = function (stem) local fnamend = fnamenondirectory(stem) local srcfname = "~/usrc/agda-categories/src/Categories/" .. stem local fname_ = stem:gsub("/", "_") local fname = "/tmp/" .. fname_ .. ".html" local bod = ee_readfile(srcfname) local htm = allhtml(stem, bod) ee_writefile(fname, htm) printf('# (find-fline "%s")\n', fname) printf('prince -s /tmp/print.css -o /tmp/%s.pdf /tmp/%s.html\n', fname_, fname_) end preize("Category.agda") preize("Functor.agda") preize("Functor/Core.agda") preize("Adjoint.agda") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) cat > /tmp/print.css <<'%%%' body { font-size: 8pt !important } %%% cat > /tmp/print.css <<'%%%' body { font-size: 7pt !important } %%% prince -s /tmp/print.css \ -o /tmp/o.pdf \ /tmp/o.html ;; (find-pdf-page "/tmp/o.pdf") ;; (find-pdf-text "/tmp/o.pdf") cd /tmp/ prince -s /tmp/print.css -o /tmp/Adjoint.agda.pdf /tmp/Adjoint.agda.html prince -s /tmp/print.css -o /tmp/Category.agda.pdf /tmp/Category.agda.html prince -s /tmp/print.css -o /tmp/Functor.agda.pdf /tmp/Functor.agda.html prince -s /tmp/print.css -o /tmp/Functor_Core.agda.pdf /tmp/Functor_Core.agda.html ##### # # twb's prince-browser script # 2020dec30 # ##### # «prince-browser» (to ".prince-browser") # http://cyber.com.au/~twb/.bin/prince-browser <twb> edrx: http://cyber.com.au/~twb/.bin/twb-pdf-new <twb> Those aren't really suitable for other people tho <twb> Also for open-source (Japanese only) http://cyber.com.au/~twb/.html2psrc ##### # # OnLoad # 2011nov17 # ##### # «onload» (to ".onload") # (find-wdg40w3m "html/body.html" "ONLOAD=") # (find-wdg40file "") # (find-wdgreffile "html40/") # (find-wdg40w3m "special/script.html") ##### # # SWF objects # 2011dec22 # ##### # «swf-objects» (to ".swf-objects") # (find-es "vnc" "swf-objects") # (find-wdg40w3m "special/object.html") ##### # # Images and scaled images # 2012feb03 # ##### # «scaled-images» (to ".scaled-images") # (find-blogme3 "anggdefs.lua" "images") # (find-wdg40w3m "special/img.html") # (find-wdg40w3m "special/img.html" "WIDTH=Length") # (find-wdg40w3m "special/img.html" "HEIGHT=Length") # (find-wdg40w3m "values.html#length") ##### # # CSS fonts # 2012mar19 # ##### # «css-fonts» (to ".css-fonts") # (find-es "javascript" "font-selector") # http://www.w3.org/TR/CSS21/cover.html#minitoc # http://www.w3.org/TR/CSS21/fonts.html # http://www.somacon.com/p334.php # http://www.webdesigndev.com/web-development/16-gorgeous-web-safe-fonts-to-use-with-css # How to point to a font file? # http://www.w3.org/TR/CSS21/selector.html # http://webdesign.about.com/cs/css/ht/htchangefontcss.htm ##### # # cssed # 2013feb02 # ##### # «cssed» (to ".cssed") # (find-available "cssed") # (find-status "cssed") # (find-vldifile "cssed.list") # (find-udfile "cssed/") Edit -> Preferences -> Other -> google-chrome -> Apply Changes http://cssed.sourceforge.net/ http://cssed.sourceforge.net/manual/usage.html http://cssed.sourceforge.net/extras.php ##### # # Oficina (PC) # 2012dec15 # ##### # «oficina-PC» (to ".oficina-PC") Links pra oficina de JavaScript do PC: http://js.stamsoft.com.br/ http://js.stamsoft.com.br/0.html <- meu ;; (find-file "/ftp:js\\@stamsoft.com.br@stamsoft.com.br:") (code-c-d "PC" "/ftp:js\\@stamsoft.com.br@stamsoft.com.br:") # (find-PCfile "") # (find-PCfile "hello.txt") # (find-PCfile "0.html") # (find-PCfile "0.css") # (find-PCfile "pc/") # (find-PCfile "pc/index.html") # (find-PCfile "pc/estilos.css") # http://www.stamsoft.com.br/ http://js.stamsoft.com.br/hello.txt <link href="estilos.css" rel="stylesheet" type="text/css"> width: 300px; height: 100px; border: 1px solid black; ##### # # Google Fonts # 2013jun01 # ##### # «google-fonts» (to ".google-fonts") # (find-es "javascript" "google-fonts") http://www.fontsquirrel.com/fonts/pacifico http://www.google.com/fonts/specimen/Pacifico http://stackoverflow.com/questions/12812441/how-do-i-use-woff-fonts-for-my-website ##### # # html5-audio # 2013aug08 # ##### # «html5-audio» (to ".html5-audio") # (find-es "javascript" "audio-api") # (find-es "blogme" "angg-audios") # (find-TH "html5-audio") # (find-THLfile "html5-audio.html") # # http://angg.twu.net/html5-audio.html # file:///home/edrx/TH/L/html5-audio.html # (find-THLfile "" "html5-audio") # (find-TH "html5-audio") # * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) cd ~/TH/L/ wget http://angg.twu.net/html5-audio.mp3 ##### # # html5-audio: old code (backup) # 2014mar20 # ##### # «html5-audio-old» (to ".html5-audio-old") # (find-blogme3 "html5-audio-mini.js") # (find-blogme3 "html5-audio.js") toseconds = function (t) { if (typeof(t) == "number") { return t; } var a = "0:00:00"; var b = a.substr(0, a.length - t.length) + t; var h = b.substr(0, 1); var mm = b.substr(2, 2); var ss = b.substr(5, 2); return h*3600+mm*60+ss*1; } function audios () { return document.getElementsByTagName("audio"); } function audio (n) { return audios()[n|0]; } function playat (n, t) { audio(n).currentTime = toseconds(t); audio(n).play(); } function naudios () { return audios().length; } function audiosdo (f) { for (var i=0; i < naudios(); i++) f(audio(i)); } function pauseall () { audiosdo(function (a) { a.pause(); }); } function pl_ (n, t) { pauseall(); playat(n, t); } function kpl_(n, e) { if (!e) e = window.event; if (e.keyCode == 13) pl_(n, e.target.value); if (e.keyCode == 32) { pauseall(); e.preventDefault(); } } function pla(t) { pl_(0, t); } function plb(t) { pl_(1, t); } function plc(t) { pl_(2, t); } function kpla(t) { kpl_(0, t); } function kplb(t) { kpl_(1, t); } function kplc(t) { kpl_(2, t); } href0 = function (tgt, text) { return '<a href="'+tgt+'">'+text+'</a>'; } href = function (tgt, text) { return tgt ? href0(tgt, text) : text; } jref = function (code, text) { return href('javascript:'+code, text); } time_re = /[0-9]?[0-9]:[0-9][0-9](:[0-9][0-9])?/g; seekbox = function (F, T) { return '<input size=8 value="'+T+'" onkeydown="'+F+'()">'; } ptime0 = function (G, T) { return jref(G+"('"+T+"')", T); } ptime = function (G, T) { return "("+jref(G+"('"+T+"')", T)+")"; } seekboxptime = function (F, G, T) { return seekbox(F, T)+" "+ptime(G, T); } my_activate = function (elt, f) { elt.origtext = elt.origtext || elt.innerText; elt.innerHTML = f(elt.origtext); } my_activate_id = function (id, f) { my_activate(document.getElementById(id), f); } function boxptimepla (t) { return seekboxptime("kpla", "pla", t); } function boxptimeplb (t) { return seekboxptime("kplb", "plb", t); } function boxptimeplc (t) { return seekboxptime("kplc", "plc", t); } function rboxptimepla (str) { return str.replace(time_re, boxptimepla); } function rboxptimeplb (str) { return str.replace(time_re, boxptimeplb); } function rboxptimeplc (str) { return str.replace(time_re, boxptimeplc); } function activate_audio_links_a (id) { my_activate_id(id, rboxptimepla); } function activate_audio_links_b (id) { my_activate_id(id, rboxptimeplb); } function activate_audio_links_c (id) { my_activate_id(id, rboxptimeplc); } // new, unused: eltbyid = function (id) { return document.getElementById(id); } from_textarea = function (id) { return eltbyid(id).value; } from_pre = function (id) { return eltbyid(id).innerHTML; } to_textarea = function (id, txt) { eltbyid(id).innerHTML = txt; } to_pre = function (id, txt) { eltbyid(id).innerHTML = txt; } location_t = function () { var A = window.location.href.match(/[?&]t=([^&]+)/); if (A) { return A[1]; } } ##### # # The "title" attribute # 2013sep17 # ##### # «title-attribute» (to ".title-attribute") # http://www.w3.org/TR/html4/struct/global.html#adef-title ##### # # Charset # 2014mar22 # ##### # «charset» (to ".charset") # (find-wdg40w3m "head/meta.html") # (find-wdg40w3m "values.html#charset") # (find-wdg40file "values.html" "charset=ISO-8859-1") # (find-blogme3grep "grep --color -niH -e charset *") # (find-blogme3file "local-videos.blogme" "charset=ISO-8859-1") # https://www.w3schools.com/tags/ # https://www.w3schools.com/tags/tag_head.asp # https://www.w3schools.com/tags/tag_meta.asp # https://www.w3schools.com/html/html_charset.asp # https://www.w3schools.com/charsets/default.asp ##### # # Layers # 2014jun18 # ##### # «layers» (to ".layers") # «popups» (to ".popups") # http://www.pat-burt.com/csspopup.html # http://www.pat-burt.com/csspopup.js # http://www.javascripttoolbox.com/lib/popup/example.php # http://www.tutorialized.com/tutorial/Creating-JavaScript-popup-window-with-layers/33052 http://html.net/tutorials/css/lesson15.php ##### # # Parsers # 2014nov12 # ##### # «parsers» (to ".parsers") # (find-es "lua5" "html-parsers") # (find-es "lua5" "gumbo-parser") # (find-es "netsurf" "lua-hubbub") ##### # # gumbo-parser # 2015nov21 # ##### # «gumbo-parser» (to ".gumbo-parser") # https://github.com/google/gumbo-parser # https://github.com/craigbarnes/lua-gumbo # (find-git-links "https://github.com/google/gumbo-parser" "gumboparser") # (find-git-links "https://github.com/craigbarnes/lua-gumbo" "luagumbo") # (code-c-d "gumboparser" "~/usrc/gumbo-parser/") # (find-gumboparserfile "") * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) rm -Rfv ~/usrc/gumbo-parser/ cd ~/usrc/ git clone --depth 1 https://github.com/google/gumbo-parser cd ~/usrc/gumbo-parser/ # (find-fline "~/usrc/gumbo-parser/") git checkout git clean -f sh ./autogen.sh |& tee oa # ./configure |& tee oc ./configure --prefix=/usr |& tee oc make |& tee om sudo make install |& tee omi tar -cvzf /tmp/gumbo-parser-logs.tgz o* # (find-fline "/tmp/gumbo-parser-logs.tgz") # (find-man "ldconfig") ##### # # gumbo-parser (from the debian sources) # 2015nov21 # ##### # «gumbo-parser-deb-src» (to ".gumbo-parser-deb-src") # Used by: (find-es "lua5" "lua-gumbo") # https://packages.debian.org/stretch/libgumbo1 # http://http.debian.net/debian/pool/main/g/gumbo-parser/ # http://http.debian.net/debian/pool/main/g/gumbo-parser/gumbo-parser_0.10.1+dfsg-2.dsc # http://http.debian.net/debian/pool/main/g/gumbo-parser/gumbo-parser_0.10.1+dfsg.orig.tar.gz # http://http.debian.net/debian/pool/main/g/gumbo-parser/gumbo-parser_0.10.1+dfsg-2.debian.tar.xz #* apti dh-autoreconf libgtest-dev python-all-dev python3-all-dev python-setuptools python3-setuptools #* rm -Rfv ~/usrc/gumbo-parser/ mkdir ~/usrc/gumbo-parser/ cd $S/http/http.debian.net/debian/pool/main/g/gumbo-parser/ cp -v gumbo-parser_0.10.1+dfsg* ~/usrc/gumbo-parser/ cd ~/usrc/gumbo-parser/ dpkg-source -sn -x gumbo-parser_0.10.1+dfsg-2.dsc cd ~/usrc/gumbo-parser/gumbo-parser-0.10.1+dfsg/ dpkg-buildpackage -us -uc -b -rfakeroot |& tee odb #* # (find-fline "~/usrc/gumbo-parser/") * (eepitch-shell) cd ~/usrc/gumbo-parser/ sudo dpkg -i *.deb #* # (code-c-d "gumbo-parser" "~/usrc/gumbo-parser/gumbo-parser-0.10.1+dfsg/") # (find-gumbo-parserfile "") # (find-status "libgumbo-dev") # (find-vldifile "libgumbo-dev:amd64.list") # (find-udfile "libgumbo-dev/") # (find-status "libgumbo1") # (find-vldifile "libgumbo1:amd64.list") # (find-udfile "libgumbo1/") # (find-status "python-gumbo") # (find-vldifile "python-gumbo.list") # (find-udfile "python-gumbo/") # (find-status "python3-gumbo") # (find-vldifile "python3-gumbo.list") # (find-udfile "python3-gumbo/") # (find-zsh "installeddebs | sort | grep gumbo") aptrm libgumbo-dev libgumbo1 python-gumbo python3-gumbo ##### # # Creating tables with divs # 2015aug29 # ##### # «tables-with-divs» (to ".tables-with-divs") # (find-wdg40w3m "block/div.html") # (find-wdg40w3m "head/style.html") # http://www.dummies.com/how-to/content/using-the-div-tag-to-create-tables.html # http://programmers.stackexchange.com/questions/277778/why-are-people-making-tables-with-divs # http://www.html-cleaner.com/features/replace-html-table-tags-with-divs/ # http://www.html-5-tutorial.com/div-tag-cont.htm # (find-TH "dednat6" "intro") <style type="text/css"> .table { display: table; } .row { display: table-row; } .cell { display: table-cell; } </style> <div class="table"> <div class="row"> <div class="cell"></div> <div class="cell"></div> <div class="cell"></div> </div> </div> <style type="text/css"> .Table { display: table; } .Title { display: table-caption; text-align: center; font-weight: bold; font-size: larger; } .Heading { display: table-row; font-weight: bold; text-align: center; } .Row { display: table-row; } .Cell { display: table-cell; border: solid; border-width: thin; padding-left: 5px; padding-right: 5px; } </style> <div class="Table"> <div class="Title"> <p>This is a Table</p> </div> <div class="Heading"> <div class="Cell"> <p>Heading 1</p> </div> <div class="Cell"> <p>Heading 2</p> </div> <div class="Cell"> <p>Heading 3</p> </div> </div> <div class="Row"> <div class="Cell"> <p>Row 1 Column 1</p> </div> <div class="Cell"> <p>Row 1 Column 2</p> </div> <div class="Cell"> <p>Row 1 Column 3</p> </div> </div> <div class="Row"> <div class="Cell"> <p>Row 2 Column 1</p> </div> <div class="Cell"> <p>Row 2 Column 2</p> </div> <div class="Cell"> <p>Row 2 Column 3</p> </div> </div> </div> ##### # # Chords # 2017mar15 # ##### # «chords» (to ".chords") # http://stackoverflow.com/questions/4154014/styling-text-to-make-it-appear-above-the-line-for-chords-above-the-lyrics ##### # # web-mode # 2019nov09 # ##### # «web-mode» (to ".web-mode") # (find-es "emacs" "web-mode") ##### # # font-in-pre # 2021may10 # ##### # «font-in-pre» (to ".font-in-pre") # https://css-tricks.com/considerations-styling-pre-tag/ # https://mail.google.com/mail/ca/u/0/#inbox/FFNDWMQQNlPzhrwlcPDCJVvfhBmVqXvb <edrx> hey all, slightly OT... in my pages I use <pre></pre> to format code blocks, but in some browsers - e.g. chrome on android - the font in the pre blocks are much smaller than in the rest of the page... any suggestions on how to fix that? <edrx> screenshot: https://i.ibb.co/1LFN7D3/Screenshot.jpg <edrx> page: http://angg.twu.net/ font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace; https://codepen.io/features/embeds ##### # # favicon # 2021oct20 # ##### # «favicon» (to ".favicon") # https://en.wikipedia.org/wiki/Favicon # https://iconmap.io/blog # (find-eev ".favicon.el") # (find-fline "~/IMAGES/rrj.png") # (find-THsh "cat *.blogme | grep SETFAVICON") # (find-THsh "cat *.blogme | grep SETFAVICON | sort | uniq") ##### # # ul-and-li # 2021nov29 # ##### # «ul-and-li» (to ".ul-and-li") # (find-blogme3 "anggdefs.lua" "basic-words-for-html") # (find-books "__comp/__comp.el" "html-1998") # (find-musciano98page 262 "Chapter 8: Formatted Lists") -- (find-wdgrefw3m "html40/lists/li.html") -- (find-wdgrefw3m "css/classification/list-style.html") ##### # # html5-tables # 2023apr07 # ##### # «html5-tables» (to ".html5-tables") # https://blog.udemy.com/html5-tables/ ##### # # htmz # 2024feb20 # ##### # «htmz» (to ".htmz") https://leanrada.com/htmz/ XML is like violence. If it doesn't solve your problem, you're not using enough of it. http://www.codinghorror.com/blog/2008/05/xml-the-angle-bracket-tax.html http://thedailywtf.com/Comments/Oh,-XML.aspx http://tr.im/validate http://www.favicon.cc/ http://spyrestudios.com/demos/sliding-panel-fixed/ http://www.disqueoleo.com.br/RECICLAGEM.html Mouseover sound http://www.wra1th.plus.com/str_ed_ex/a.html http://code.google.com/p/wkhtmltopdf/ http://pypi.python.org/pypi/xhtml2pdf/ http://www.winnovative-software.com/download.aspx http://www.html2pdf.fr/en http://www.calibre-ebook.com/ http://math.chapman.edu/~jipsen/blast2013/schedule.html http://lineup.nojazzfest.com/events/2016/04/23 https://www.webdesignmuseum.org/gallery https://www.webdesignmuseum.org/gallery/icq-2001 https://news.ycombinator.com/item?id=33085976 Templating in HTML (kittygiraudel.com) Why/how does this page use google translate? https://jochen-ziegenbalg.github.io/materialien/ https://news.ycombinator.com/item?id=37104742 A Blog Post with Every HTML Element (patrickweaver.net) https://stackoverflow.com/questions/427102/what-is-a-slug-in-django # Local Variables: # coding: utf-8-unix # End: