Warning: this is an htmlized version!
The original is here, and
the conversion rules are here.
#######
#
# E-scripts on printing.
#
# 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/print.e>
#           or at <http://angg.twu.net/e/print.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/>.
#
#######





# «.a2ps-cp850»			(to "a2ps-cp850")
# «.cups-sweetjane»		(to "cups-sweetjane")
# «.hp-laserjet-1300»		(to "hp-laserjet-1300")
# «.hplip»			(to "hplip")
# «.hplip-upstream»		(to "hplip-upstream")
# «.enscript»			(to "enscript")
# «.print-tmp.dvi-dvired»	(to "print-tmp.dvi-dvired")
# «.cups-at-omnisys»		(to "cups-at-omnisys")
# «.lpr-and-lpr-orig»		(to "lpr-and-lpr-orig")
# «.lpq-and-lprm»		(to "lpq-and-lprm")
# «.lpr-for-cups»		(to "lpr-for-cups")
# «.cups-at-puro»		(to "cups-at-puro")
# «.default-printer»		(to "default-printer")
# «.cups-pdf»			(to "cups-pdf")
# «.prescript»			(to "prescript")
# «.task-print-server»		(to "task-print-server")




#####
#
# foomatic
# 2003mar19
#
#####

# (find-status "foomatic-bin")
# (find-vldifile "foomatic-bin.list")
# (find-fline "/usr/doc/foomatic-bin/")
# (find-fline "/usr/doc/foomatic-bin/README.gz" "directomatic")
# (find-fline "/usr/doc/foomatic-bin/USAGE.gz")

foomatic-configure

foomatic-configure
foomatic-configure -s direct
foomatic-configure -h
foomatic-configure -O
# (find-progoutput "foomatic-configure -O" "HP-DeskJet_640C")
# (find-progoutput "foomatic-configure -h")

#*
# (find-progoutput "foomatic-configure -h")
# (find-fline "/etc/foomatic/")
echo -n > /tmp/o.pdj
foomatic-configure -n dj640		\
	-s direct -c file:/tmp/o.pdj	\
	-o Quality=0			\
	-d hpijs -p HP-DeskJet_640C
#*
# (find-fline "/usr/doc/foomatic-bin/README.gz" "directomatic")
# (find-fline "/usr/doc/foomatic-bin/USAGE.gz")
# (find-fline "/usr/doc/foomatic-bin/USAGE.gz" "\nAdding a queue")
# (find-fline "/usr/doc/foomatic-bin/USAGE.gz" "foomatic-printjob")
# (find-fline "/usr/doc/foomatic-bin/USAGE.gz" "\n- Direct, spooler-less")
echo -n > /tmp/o.pdj
directomatic -P dj640 -o docs /tmp/tmp.red.ps
laf /tmp/
echo -n > /tmp/o.pdj
directomatic -P dj640 /tmp/tmp.red.ps
laf /tmp/

#*
rm -fv {~/LATEX,/tmp}/tmp{,.red}{.ps,.pdj}
cd ~/LATEX/
make tmp.red.pdj
# make /tmp/tmp.red.ps
#*
# (find-man "1 foomatic-printjob")
# (find-progoutput "foomatic-printjob -h")
foomatic-printjob -i -sdirect /tmp/tmp.red.ps
laf /tmp
sleep 1; laf /tmp
#*
# (find-man "1 lpq")
# (find-man "1 lprm")
lpq -a
lprm
lpq -a
#*

# (find-status "foomatic-db")
# (find-vldifile "foomatic-db.list")
# (find-vldifile "foomatic-db.list" "printer/HP-DeskJet_640C.xml")
# (find-fline "/usr/share/foomatic/db/source/printer/HP-DeskJet_640C.xml")
# (find-fline "/usr/share/foomatic/db/source/driver/hpijs.xml")

# (find-man "1 foomatic-compiledb")
# (find-man "1 foomatic-configure")
# (find-man "1 foomatic-datafile")
# (find-man "1 foomatic-gswrapper")
# (find-man "1 foomatic-perl-data")
# (find-man "1 foomatic-printjob")
# (find-man "1 directomatic")
# (find-man "1 foomatic-combo-xml")
# (find-man "8 foomatic-fix-xml")
# (find-man "8 foomatic-kitload")
# (find-man "8 foomatic-ppdload")
# (find-man "8 foomatic-preferred-driver")
# (find-man "8 lpdomatic")
# (find-man "8 foomatic-addpjloptions")
# (find-man "8 foomatic-getpjloptions")
# (find-fline "/usr/bin/foomatic-gswrapper")
# (find-fline "/usr/bin/foomatic-printjob")
# (find-fline "/usr/bin/foomatic-configure")
# (find-fline "/usr/bin/foomatic-combo-xml")
# (find-fline "/usr/bin/foomatic-perl-data")
# (find-fline "/usr/bin/directomatic")
# (find-fline "/usr/bin/foomatic-datafile")
# (find-fline "/usr/bin/foomatic-compiledb")
# (find-fline "/usr/sbin/foomatic-kitload")
# (find-fline "/usr/sbin/foomatic-ppdload")
# (find-fline "/usr/sbin/foomatic-getpjloptions")
# (find-fline "/usr/sbin/foomatic-addpjloptions")
# (find-fline "/usr/sbin/foomatic-preferred-driver")
# (find-fline "/usr/sbin/foomatic-fix-xml")
# (find-fline "/usr/sbin/lpdomatic")
# (find-fline "/etc/foomatic/")






#####
#
# something for a2ps (I forgot what)
#
#####

# (find-node "(a2ps)Top")
# (find-node "(a2ps)Some Encodings")
# (find-fline "/usr/share/a2ps/encoding/")
# (find-node "(a2ps)Sheets Options")

# (find-lynxfile "src/LYCharSets.c")
# (find-lynxfile "src/chrtrans/dmcs_uni.tbl")
# (find-lynxfile "src/LYCharSets.c")
# (find-lynxfile "test/iso8859-1.html")
# (find-lynxfile "test/ISO_LATIN1_test.html")
# (find-lynxfile "test/sgml.html")

agrep atilde \
src/LYCharSets.c	\
src/chrtrans/dmcs_uni.tbl	\
src/LYCharSets.c	\
test/iso8859-1.html	\
test/ISO_LATIN1_test.html	\
test/sgml.html

export A=(src/LYCharSets.c
src/chrtrans/dmcs_uni.tbl
src/LYCharSets.c
test/iso8859-1.html
test/ISO_LATIN1_test.html
test/sgml.html)

agrep 198 $A

a2ps -o ~/o.ps -X ibmpc ~/AGENDA/telefones
a2ps -o ~/o.ps -X ibmpc \
  --columns=2 --rows=1 --major=columns --portrait --medium=A4dj \
  ~/AGENDA/telefones

cd
rm o.p[0-9][0-9]
gs -sDEVICE=djet500 -r300 -sOutputFile=o.p%02d -dNOPAUSE -dBATCH o.ps
rm o.zip; zip o.zip o.p0?
laf o.zip




#####
#
# Expect papers
#
#####

cd /snarf/http/expect.nist.gov/doc/
A=(tcl-debug.ps seminal.ps scripts.ps bgpasswd.ps kibitz.ps regress.ps
   sysadm.ps expectk.ps seven-years.ps)
for i in $A; do gv $i &; done

gv /snarf/http/www.cica.indiana.edu/cica/faq/tcl/p1.ps &

function pspack {
  S=0.55; H0=-16; H1=257; V0=434; V2=50
  S=0.47; H0=-16; H1=257; V0=434; V2=50
# pstops -d 4:0@$S($H0,$V0)+1@$S($H1,$V0)+2@$S($H0,$V2)+3@$S($H1,$V2)
#   psresize -Pletter -pA4
  cat
}

rm -Rv ~/ps
mkdir ~/ps
cd ~/ps
A=(tcl-debug.ps seminal.ps scripts.ps bgpasswd.ps kibitz.ps regress.ps
   sysadm.ps expectk.ps seven-years.ps)
for i in $A; do pspack < /snarf/http/expect.nist.gov/doc/$i >$i; done
gv bgpasswd.ps

cd /snarf/http/www.cica.indiana.edu/cica/faq/tcl/
# S=0.5; H0=24; H1=297; V0=434; V2=50
S=0.55; H0=-16; H1=257; V0=434; V2=50
cat book.p1.ps |
  pstops -d 4:0@$S($H0,$V0)+1@$S($H1,$V0)+2@$S($H0,$V2)+3@$S($H1,$V2) > p1.ps
cat book.p2.ps |
  pstops -d 4:0@$S($H0,$V0)+1@$S($H1,$V0)+2@$S($H0,$V2)+3@$S($H1,$V2) > p2.ps
cat book.p3.ps |
  pstops -d 4:0@$S($H0,$V0)+1@$S($H1,$V0)+2@$S($H0,$V2)+3@$S($H1,$V2) > p3.ps
cat book.p4.ps |
  pstops -d 4:0@$S($H0,$V0)+1@$S($H1,$V0)+2@$S($H0,$V2)+3@$S($H1,$V2) > p4.ps

cd /snarf/http/www.cica.indiana.edu/cica/faq/tcl/
gv -media a4 -scale -2 p1.ps
gv -media a4 -scale -2 p2.ps
gv -media a4 -scale -2 p3.ps
gv -media a4 -scale -2 p4.ps

cd /snarf/http/www.cica.indiana.edu/cica/faq/tcl/
tar -cvzf ~/tb.tgz p?.ps
zip ~/tb.zip p?.ps





#####
#
# printer irq
#
#####

# (eeman "perlfunc" "  ioctl")
# (eeman "perlfaq8" "include files to do ioctl")
# (find-k2file "include/linux/lp.h" "LPSETIRQ")

perl -e '
  open LP, "/dev/lp1" or die "Cant open lp1\n";
  $a = ioctl LP, 0x605, 7;
  print "$a\n";
'

# (find-zshnode "Variables Index")
# (find-zshnode "Parameters Set By The Shell" "`!'")

cat > /dev/lp1 &
cat /proc/interrupts
kill -9 $!




#####
#
# Impressora da sala dos anões da PUC
#
#####

# (find-vldifile "libpaperg.list")
# (find-vldifile "ppd-gs.list")
# (find-fline "/usr/share/ppd/en/")

# (find-knuthfile "tex/texbook.tex" "{units of measure, table}")
# pt point (baselines in this manual are 12 pt apart)
# pc pica             1 pc = 12 pt
# in inch             1 in = 72.27 pt
# bp big point       72 bp = 1 in
# cm centimeter    2.54 cm = 1 in
# mm millimeter      10 mm = 1 cm
# dd didot point   1157 dd = 1238 pt
# cc cicero           1 cc = 12 dd
# sp scaled point 65536 sp = 1 pt

# As unidades do PostScript são big points (cf. blue book, p. 18).

# (find-fline "/usr/lib/ghostscript/5.10/gs_statd.ps" "/a4 {")
# a4 = 595bp x 842bp 
# letter = 612bp x 792bp

# (defun bp2in (nbp) (/ nbp 72.0))
# (defun bp2cm (nbp) (* 2.54 (/ nbp 72.0)))
# (mapcar 'bp2in '(595 842))
# (mapcar 'bp2in '(612 792))

# 1bp =~ 0.35mm.
# a4 =~ 21cm x 29.704cm.
# letter =~ 21.59cm x 27.94cm

# a4 =~ 8.264in x 11.695in
# letter =~ 8.5in x 11.0in

# (bp2cm (- 842 792)) -> 1.764 (cm)
# (- 29.5 8.2) -> 21.3 (mm)

# Nos Tcl papers o topo do "T" nas páginas pares (de trás) está a
# 29.5mm do topo da página, e nas páginas ímpares (da frente) a 8.2mm.

8.2mm 29.5mm


# (find-fline "/usr/bin/paperconf")
# (find-fline "/usr/sbin/paperconfig")


# (find-vldifile "psutils.list")
# (find-fline "/usr/bin/fixfmps")

man pstops
man epsffit
man psnup
man psresize
man psmerge
man fixscribeps
man getafm
man fixfmps
man fixmacps
man fixpsditps
man fixpspps
man fixtpps
man fixwfwps
man fixwpps
man fixwwps
man extractres
man showchar
man psbook
man psselect
man fixdlsrps
man includeres



dvips -o /tmp/o.ps $S/http/www.sato.kuis.kyoto-u.ac.jp/~takeuti/art/param.dvi
cat /tmp/o.ps |
  pstops 2:0(0,0),1(0,-1in) > /tmp/o2.ps

function moveps () {
  echo '
  puts $argv
  foreach {xl xr yl yr} {0 0 0 0} {}
  foreach {tag val} "in 1 cm [expr 1/2.54] raise {y 1} lower {y -1}
    moveright {x 1} moveleft {x -1}" {
      set T($tag) $val
  }
  proc add {xory sign sides n unit} {
    global T
    set d [expr $sign*$n*$T($unit)]
    if {$sides!="right"} {upvar #0 ${xory}l v; set v [expr $v+$d]}
    if {$sides!="left"}  {upvar #0 ${xory}r v; set v [expr $v+$d]}
  }
  set r {^(raise|lower|move(right|left))_?(left|right)?_?([0-9.-]+)(cm|in)$}
  foreach command $argv {
    if [regexp $r $command {} com {} side n unit] {
      # puts "$ok:$com:$side:$n:$unit"
      eval add $T($com) [list $side] $n $unit
    } else {
      puts "Bad command: $command"
      # exit 1
    }
  }
  puts "2:0(${xl}in,${yl}in),1(${xr}in,${yr}in)"' | \
  tclsh -f - $*
}


function moveps () {
  pstops $(~/TCL/pstopsargs $*)
}

dvips -o /tmp/o.ps $S/http/www.sato.kuis.kyoto-u.ac.jp/~takeuti/art/param.dvi
moveps raise_left_1in moveright_right_1in < /tmp/o.ps > /tmp/o2.ps
laf /tmp

gv /tmp/o.ps &
gv /tmp/o2.ps &




#####
#
# psutils at boto
#
#####

pdsc /debian/dists/slink/main/source/text/psutils_1.17-6.dsc
cd /usr/src/
tar -cvzf /tmp/p.tgz psutils-1.17/
cd /tmp/
laf
ftpboto 'put p.tgz' 'lcd ~' 'put .zshrc' 'mkdir TCL' 'put TCL/pstopsargs' 'chmod 755 TCL/pstopsargs' 'quit'

# On boto:
cd
rm -Rv ~/psutils-1.17/
tar -xvzf ~/p.tgz
cd ~/psutils-1.17/
make pstops |& tee omp
make pstops.1 |& tee omm
cp -v pstops pstops.1 ~/bin/



# (find-fline "/debian/dists/slink/main/source/text/")
# (find-fline "/debian/dists/slink/main/source/text/psutils_1.17-6.diff.gz")



moveps raise_left_1in moveright_right_1in


cat /tmp/o.ps |
  pstops 2:0(0,0),1(0,-1in) > /tmp/o2.ps
moveps raise_left_5.08cm moveright_-0.4in

# (find-fline "~/TCL/pstopsargs")





| tclsh -f - raise_left_5.08cm moveright_-0.4in


 raise_left_2.5cm moveright_-0.4in



  forach {odd_dn even_dn} $argv {}
  proc cm2in {nbp} {expr 
  puts 2:0(0,[expr -

function lower_safo () {
  RAISE_ODD=

cd /snarf/http/www.cica.indiana.edu/cica/faq/tcl/
# S=0.5; H0=24; H1=297; V0=434; V2=50
S=0.55; H0=-16; H1=257; V0=434; V2=50
cat book.p1.ps |
  pstops -d 4:0@$S($H0,$V0)+1@$S($H1,$V0)+2@$S($H0,$V2)+3@$S($H1,$V2) > p1.ps




man paperconf
man papersize
man paperconfig

man systempapersizefile
man defaultpapersizefile
man paperinfo
man paperwithsize
man paperfirst
man papernext
man paperprev
man paperlast
man paperinit
man paperdone
man systempapername
man defaultpapername

# (find-fline "/usr/share/a2ps/ppd/")




#####
#
# ghostscript at a new HP printer
# 2000apr12
#
#####

# (find-vldifile "gs.list")
# (find-fline "/usr/doc/gs/")
# (find-fline "/usr/doc/gs/devices.txt.gz")
# (find-fline "/usr/doc/gs/devices.txt.gz" "cdj550")
# (find-fline "/usr/doc/gs/unix-lpr.txt.gz")

/usr/doc/HOWTO/Hardware-HOWTO.gz")

# (find-vldifile "doc-linux-text.list")
# (find-fline "/usr/doc/doc-linux-text/")

# (find-fline "/usr/doc/HOWTO/en-txt/Hardware-HOWTO.txt.gz" "HP DeskJet")

# I guessed that cdj550 would work with my father's HP DJ610C...
# and it worked.





#####
#
# cp850 encoding for a2ps
# 2000jul07
#
#####

# «a2ps-cp850»  (to ".a2ps-cp850")
# (find-es "charsets")

# (find-fline "/usr/share/a2ps/encoding/ibm-cp850.edf")
# (find-fline "/usr/share/a2ps/encoding/ibm-cp437.edf")
# (find-node "(a2ps)Top")
# (find-node "(a2ps)Encoding Files")
# (find-node "(a2ps)Concept Index")

# (find-status   "a2ps")
# (find-vldifile "a2ps.list")
# (find-udfile   "a2ps/")

# (find-node "(a2ps)Encoding Description Files" "`#'")
# (find-node "(gawk)Regexp Usage")
#*

rm -Rv ~/.a2ps/
mkdir ~/.a2ps/
awk '{print; if ($0 ~ /tilde/) exit}' \
  < /usr/share/a2ps/encoding/ibm-cp850.edf > ~/.a2ps/ibm-cp850.edf

cat >> ~/.a2ps/ibm-cp850.edf <<'---'
Ccedilla udieresis eacute acircumflex adieresis agrave aring ccedilla
ecircumflex edieresis egrave idieresis icircumflex igrave Adieresis Aring
Eacute ae AE ocircumflex odieresis ograve ucircumflex ugrave
ydieresis Odieresis Udieresis cent sterling yen .notdef florin
aacute iacute oacute uacute ntilde Ntilde ordfeminine degree
questiondown .notdef logicalnot onehalf onequarter exclamdown guillemotleft guillemotright
.notdef .notdef .notdef .notdef .notdef Aacute Acircumflex Agrave
.notdef .notdef .notdef .notdef .notdef .notdef .notdef .notdef
.notdef .notdef .notdef .notdef .notdef .notdef atilde Atilde
.notdef .notdef .notdef .notdef .notdef .notdef .notdef .notdef
.notdef .notdef Ecircumflex .notdef Egrave .notdef Iacute .notdef
.notdef .notdef .notdef .notdef .notdef .notdef .notdef .notdef
alpha germandbls Gamma pi Sigma sigma mu tau
phi theta Omega delta infinity oslash epsilon intersection
equivalence plusminus greaterequal lessequal integraltp integralbt divide approxequal
degree dotaccent dotaccent radical .notdef twosuperior .notdef .notdef
---

#*

# (find-fline "~/.a2ps/ibm-cp850.edf" "ordfem")
# (ascstr 160 255)
# (find-node "(a2ps)Input Options" "--encoding=KEY")
# (find-node "(a2ps)Some Encodings")

# (find-fline "~/.a2ps/")





#####
#
# cp850 encoding for a2ps via ogonkify
# 2000jul07
#
#####

# (find-fline "/usr/share/ogonkify/ibmpc.enc")
# (find-fline "/usr/share/ogonkify/allchars.ps")
# (find-fline "/usr/share/ogonkify/compose.ps")
# (find-fline "/usr/share/ogonkify/helper.ps")
# (find-fline "/usr/share/ogonkify/printenc.ps")
# (find-fline "/usr/share/ogonkify/README")
# (eeman "1 ogonkify")
# (find-node "(ogonkify)Top")
# (find-node "(ogonkify)Ghostscript")
# (find-node "(ogonkify)genscript")
# (find-node "(ogonkify)Composite background")
# (find-node "(ogonkify)Generated fonts")
# (find-node "(ogonkify)Composite usage")
# (find-node "(ogonkify)Composite example")





#####
#
# a2ps source
# 2000jul20
#
#####

# (code-c-d "a2ps" "/usr/src/a2ps-4.13/")
# (find-a2psfile "")
# (find-a2psfile "etc/a2ps_cfg.in" "netscape")

# (find-status "a2ps")
# (find-vldifile "a2ps.list")
# (find-fline "/usr/doc/a2ps/")

pdsc $SDEBIAN/dists/potato/main/source/text/a2ps_4.13-2.dsc
cd /usr/src/a2ps-4.13/

# (find-fline "/etc/a2ps.cfg" "netscape")
# The commands resulting from a netscape delegation are like these:

netscape -noraise -remote 'openfile(/home/root/TH/L/files.html)'
netscape -noraise -remote 'saveas(/tmp/a2_SOvH7a,postscript)'
cat /tmp/a2_SOvH7a | psnup -2 -q -d -w595 -h842

# But they're just beeping on my machine!
# (find-fline "/usr/X11R6/bin/netscape")

sh -x /usr/X11R6/bin/netscape \
    -noraise -remote 'openfile(/home/root/TH/L/files.html)' |& tee ~/o

# Beep!
# (find-fline "~edrx/o")



#####
#
# cups
# 2004sep27
#
#####

# (find-sh "dpkg -l")
# (find-status   "cupsys")
# (find-vldifile "cupsys.list")
# (find-udfile   "cupsys/")
# (find-sh "sudo cat /etc/cups/cupsd.conf")
# (find-sh "sudo cat /etc/cups/cupsd.conf" "LogLevel")

hp deskjet 640c:
<OPTION VALUE="deskjet2.ppd" SELECTED>
HP New DeskJet Series CUPS v1.1 (en)

# (find-fline "/usr/share/cups/model/deskjet2.ppd")
# (find-fline "/var/log/cups/")


# (find-status   "cupsys-client")
# (find-vldifile "cupsys-client.list")
# (find-udfile   "cupsys-client/")




#####
#
# cups at sweetjane
# 2006aug14
#
#####

# «cups-sweetjane»  (to ".cups-sweetjane")
# (find-org "2006-06-09.org" "cups-sweetjane")
# (find-org "2006-08-14.org" "cups-sweetjane")
# (to "cups-at-omnisys")
# http://localhost:631

Name:        (eekill "lexc")
Location:    (eekill "Do lado do Suporte")
Description: (eekill "lexc752-1")
Device:      Windows printer via SAMBA
Device URI:  (eekill "smb://raphaelg:p455w07d2@redecorp/rjw2kfs01/redes-lexc752-1")
Device URI:  (eekill "smb://REDECORP/heliofr:p455w07d2@rjw2kfs01/redes-lexc752-1")
Make:        Raw
Model:       Raw Queue (en)

Name:        (eekill "lext")
Location:    (eekill "Um pouco mais longe")
Description: (eekill "lexmark t 632-3")
Device:      Windows printer via SAMBA
Device URI:  (eekill "smb://REDECORP/heliofr:p455w07d@rjw2kfs01/redes-lext632-3")
Make:        Raw
Model:       Raw Queue (en)

sudo /etc/init.d/cupsys restart

# (find-fline "/var/log/cups/error_log")




#####
#
# cups and the Xerox DocuPrint C7
# 2006sep15
#
#####

# (find-zsh "acse cups | sort")
apti cupsys cupsys-client foomatic-db printconf

# (find-status   "cupsys")
# (find-vldifile "cupsys.list")
# (find-udfile   "cupsys/")
# (find-status   "cupsys-client")
# (find-vldifile "cupsys-client.list")
# (find-udfile   "cupsys-client/")
# (find-status   "foomatic-db")
# (find-vldifile "foomatic-db.list")
# (find-udfile   "foomatic-db/")
# (find-status   "printconf")
# (find-vldifile "printconf.list")
# (find-udfile   "printconf/")

# (find-man "1 printconf")
# (find-fline "/usr/bin/printconf")

sudo printconf -v

# (find-man "foomatic-gui")
# (find-man "foomatic-configure")


(eekill "Xerox DocuPrint C7")
# (find-fline "/usr/share/foomatic/db/source/printer/Xerox-DocuPrint_C6.xml")
# (find-fline "/usr/share/foomatic/db/source/printer/Xerox-DocuPrint_C8.xml")
# (find-fline "/usr/share/foomatic/db/source/printer/HP-DeskJet_640C.xml")




#####
#
# HP LaserJet 1300
# 2009feb11
#
#####

# «hp-laserjet-1300»  (to ".hp-laserjet-1300")
# (find-es "print" "hp-laserjet-1300")
# (find-fline "/usr/share/foomatic/db/source/printer/HP-LaserJet_1300.xml")
# http://www.amazon.com/Hewlett-Packard-1300-HP-LaserJet-Printer/dp/B000090WF0
# http://h20000.www2.hp.com/bizsupport/TechSupport/Home.jsp?locale=en_US&prodTypeId=18972&prodSeriesId=238320
# http://h20000.www2.hp.com/bizsupport/TechSupport/Home.jsp?prodTypeId=18972&prodSeriesId=238320
# http://bizsupport1.austin.hp.com/bc/docs/support/SupportManual/bpl13095/bpl13095.pdf
# http://bizsupport1.austin.hp.com/bc/docs/support/SupportManual/bpl13204/bpl13204.pdf

;; http://bizsupport1.austin.hp.com/bc/docs/support/SupportManual/bpl13095/bpl13095.pdf
(code-xpdf      "hp1300userguide" "$S/http/bizsupport1.austin.hp.com/bc/docs/support/SupportManual/bpl13095/bpl13095.pdf")
(code-pdftotext "hp1300userguide" "$S/http/bizsupport1.austin.hp.com/bc/docs/support/SupportManual/bpl13095/bpl13095.pdf")
;; (find-hp1300userguidepage 1)
;; (find-hp1300userguidepage (+ 8  6) "Go button")
;; (find-hp1300userguidepage (+ 8 52) "Redistributing toner")
;; (find-hp1300userguidepage (+ 8 58) "Demo page")
;; (find-hp1300userguidepage (+ 8 58) "Configuration page")
;; (find-hp1300userguidepage (+ 8 70) "Finding the solution")
;; (find-hp1300userguidepage (+ 8 72) "Status light patterns")
;; (find-hp1300userguidepage (+ 8 89) "Clearing jams")
;; (find-hp1300userguidetext)




#####
#
# hplip
# 2009oct09
#
#####

# «hplip»  (to ".hplip")
# http://hplipopensource.com/hplip-web/index.html
# http://hplipopensource.com/node/293
#   and search for "cups"
# (find-status   "hplip")
# (find-vldifile "hplip.list")
# (find-udfile   "hplip/")
# (find-status   "hplip-gui")
# (find-vldifile "hplip-gui.list")
# (find-udfile   "hplip-gui/")
# (find-status   "hplip-doc")
# (find-vldifile "hplip-doc.list")
# (find-udfile   "hplip-doc/")
# file:///usr/share/doc/hplip-doc/HTML/index.html

# (find-zsh "availabledebs | sort | grep ttf")

# http://packages.debian.org/sid/hplip-cups
# http://ftp.de.debian.org/debian/pool/main/h/hplip/
# http://ftp.de.debian.org/debian/pool/main/h/hplip/hplip_3.9.8-1.dsc
# http://ftp.de.debian.org/debian/pool/main/h/hplip/hplip_3.9.8-1.diff.gz
# http://ftp.de.debian.org/debian/pool/main/h/hplip/hplip_3.9.8.orig.tar.gz

psne http://ftp.de.debian.org/debian/pool/main/h/hplip/hplip_3.9.8-1.dsc
psne http://ftp.de.debian.org/debian/pool/main/h/hplip/hplip_3.9.8-1.diff.gz
psne http://ftp.de.debian.org/debian/pool/main/h/hplip/hplip_3.9.8.orig.tar.gz

# http://www.linuxquestions.org/questions/slackware-14/cups-and-hplip-692125/

# http://localhost:631/printers/laserjet-hplip
# laserjet-hplip:
#   Description: HP LaserJet 1300 (with hplip)
#   Location: Quarto
#   Printer Driver: HP LaserJet 1300 - CUPS+Gutenprint v5.0.2
#   Printer State: idle, accepting jobs, published.
#   Device URI: hp:/usb/hp_LaserJet_1300?serial=00BRCB060753




#####
#
# hplip-upstream
# 2011oct03
#
#####

# «hplip-upstream»  (to ".hplip-upstream")
# (find-es "hardware" "hp-deskjet-1000")
# http://hplipopensource.com/hplip-web/install/manual/distros/debian.html
# (find-fline "~/tmp/" "hplip-3.11.7.tar.gz")
# (find-fline "~/tmp/")

sudo \
apt-get install --force-yes -y \
  libcupsimage2 libcupsimage2-dev libdbus-1-dev g++ gs-esp libssl-dev \
  libjpeg62-dev libsnmp-dev libc6 libtool libusb-dev make python-imaging \
  python-qt4 python-qt4-dbus python-dbus \
  python-gobject python-dev python-notify python python-reportlab sane \
  policykit-1 policykit-1-gnome \
  libcupsys2-dev cruft \
  cups-bsd \
  libsane-dev sane-utils xsane


rm -Rv ~/bigsrc/hplip-3.11.7/
tar -C ~/bigsrc/ -xvzf ~/tmp/hplip-3.11.7.tar.gz
cd     ~/bigsrc/hplip-3.11.7/

./configure --with-hpppddir=/usr/share/ppd/HP --prefix=/usr \
  --enable-qt4 --enable-doc-build --disable-cups-ppd-install \
  --disable-foomatic-drv-install --disable-foomatic-ppd-install \
  --disable-hpijs-install --disable-policykit \
  --enable-cups-drv-install --enable-hpcups-install \
  --enable-network-build --enable-dbus-build --enable-scan-build \
  --enable-fax-build  |& tee oc
make                  |& tee om
sudo make install     |& tee omi


# A. For normal users other than root add user name to "lp" group:
#   su -c "usermod -a -G lp username"

# (find-zsh "installeddebs | sort | grep hplip")
# (find-status   "hplip")
# (find-vldifile "hplip.list")
# (find-udfile   "hplip/")
# (find-status   "hplip-cups")
# (find-vldifile "hplip-cups.list")
# (find-udfile   "hplip-cups/")
# (find-status   "hplip-data")
# (find-vldifile "hplip-data.list")
# (find-udfile   "hplip-data/")

# (find-status   "hplip-doc")
# (find-vldifile "hplip-doc.list")
# (find-udfile   "hplip-doc/")
# http://packages.debian.org/sid/hplip-doc
# http://hplipopensource.com/hplip-web/index.html




#####
#
# enscript
# 2006sep20
#
#####

# «enscript»  (to ".enscript")

<dto> enscript $1 -p out.ps -f"Courier9" -r --highlight-bars=3 --pretty-print 

# (find-status   "enscript")
# (find-vldifile "enscript.list")
# (find-udfile   "enscript/")
# http://www.codento.com/people/mtr/genscript/





#####
#
# printing a temporary dvi file
# 2006nov27
#
#####

# «print-tmp.dvi-dvired»  (to ".print-tmp.dvi-dvired")
# (find-angg ".zshrc" "printing")

* (eepitch-shell)
cd ~/LATEX/
dvired -o tmp.ps tmp.dvi
gv --orientation=seascape ~/LATEX/tmp.ps &
gsdj-tmp ~/LATEX/tmp.ps
cd /tmp/
laf
cat o.p001 > /dev/lp0
cat o.p002 > /dev/lp0
cat o.p003 > /dev/lp0
cat o.p004 > /dev/lp0
cat o.p005 > /dev/lp0
cat o.p006 > /dev/lp0
cat o.p007 > /dev/lp0
cat o.p008 > /dev/lp0




#####
#
# cups at omnisys
# 2007dec13
#
#####

# «cups-at-omnisys»  (to ".cups-at-omnisys")
# (to "cups-sweetjane")
# http://localhost:631
# (Home) -> Add Printer ->

Name:        (eekill "lexmark")
Location:    (eekill "corredor")
Description: (eekill "Impressora laser do corredor")
Device:      Internet Printing Protocol (http)
Device URI:  (eekill "http://192.168.51.236:631/LXK_T642_ENG")
Make:        Lexmark
Model:       Lexmark 4076 - CUPS+Gutenprint v5.0.0

# (find-fline "/usr/share/ppd/gutenprint/5.0/en/stp-lexmark-4076.5.0.ppd.gz")

apti cupsys
apti cupsys-client
apti cupsys-bsd
sudo /etc/init.d/cupsys restart

# (find-fline "/var/log/cups/error_log")


apti cupsys-client

A=(
  cupsys-common gs-esp libcupsimage2
  cupsys-bsd cupsys-driver-gutenprint cupsys-driver-gimpprint
  foomatic-filters-ppds xpdf-korean xpdf-japanese xpdf-chinese-traditional
  xpdf-chinese-simplified cups-pdf hplip gs-cjk-resource
  cupsys-client smbclient foomatic-filters psfontmgr
  cupsys cupsys-common gs-esp libcupsimage2
  cupsys-client smbclient foomatic-filters psfontmgr
)

apti cupsys-driver-gimpprint

sudo /etc/init.d/cupsys restart

# (find-node "(a2ps)Page Options" "--chars-per-line=NUM")

# (find-available "")

# (find-zsh "dmissing ghostscript")
# (find-zsh "installeddebs | sort")
# (find-zsh "echo 'installeddebs | sort' > /tmp/e; . /tmp/e")
# (find-zsh "installeddebs | sort" "ghostscript")
# (find-zsh "availabledebs | sort")
# (find-zsh "availabledebs | sort" "ghostscript")
# (find-zsh "acse ghostscript | sort")
# (find-zsh "acse -i ghostscript | sort")

# (find-zsh "")
find-zsh




#####
#
# debugging the lpr that cups uses
# 2008jan04
#
#####

# «lpr-and-lpr-orig»  (to ".lpr-and-lpr-orig")
# (find-fline "~/LOGS/2008jan04.omnisys" "cat > lpr <<'%%%'")
# Nao testei!

<silas> lpr: Error - no default destination available.
<silas> o cups esta' instalado pelo pkgsrc e o binario do lpr esta'
        devidamente substituido
<aloph-work> silas: use o acrobat reader!
<edrx> silas: voce poderia tentar fazer algo como isso aqui...
<edrx> which lpr
<edrx> ls -l /usr/pkg/bin/lpr
<edrx> #
<edrx> cd    /usr/pkg/bin/
<edrx> cat > lpr <<'%%%'
<edrx> #!/bin/sh
<edrx> { echo "# $(date)"
<edrx>   echo "# $(id)"
<edrx>   echo "$0"
<edrx> } >> /tmp/olpr
<edrx> exec /usr/pkg/bin/lpr-orig $*
<edrx> %%%




#####
#
# lpq and lprm
# 2008jan04
#
#####

# «lpq-and-lprm»  (to ".lpq-and-lprm")

# (find-fline "/var/log/lpr.log")
# (find-sh0 "lpq")
# (find-sh0 "lpq")
# (find-fline "/var/spool/")
# (find-fline "/var/spool/lpd/lp/")
# (find-man "lpq")
# (find-man "1 lprm" "remove all jobs")
# (find-sh  "lprm -")




#####
#
# lpr for cups
# 2008jan07
#
#####

# «lpr-for-cups»  (to ".lpr-for-cups")
# (find-status   "cupsys-client")
# (find-vldifile "cupsys-client.list")
# (find-udfile   "cupsys-client/")
# (find-status   "cupsys-bsd")
# (find-vldifile "cupsys-bsd.list")
# (find-udfile   "cupsys-bsd/")
# (find-zsh "dmissing cups | grep lpr")
#
# Cups's /usr/bin/lpr is in the package "cupsys-bsd"...




#####
#
# cups at PURO
# 2009apr29
#
#####

# «cups-at-puro»  (to ".cups-at-puro")

apti smbclient

 +-----------------------------+ Samba Server +------------------------------+
 |                                                                           | 
 | If your computer gets IP address information from a DHCP server on the    | 
 | network, the DHCP server may also provide information about WINS servers  | 
 | ("NetBIOS name servers") present on the network.  This requires a change  | 
 | to your smb.conf file so that DHCP-provided WINS settings will            | 
 | automatically be read from /etc/samba/dhcp.conf.                          | 
 |                                                                           | 
 | The dhcp3-client package must be installed to take advantage of this      | 
 | feature.                                                                  | 
 |                                                                           | 
 | Modify smb.conf to use WINS settings from DHCP?                           | 
 |                                                                           | 
 |                    <Yes>                       <No>                       | 
 |                                                                           | 
 +---------------------------------------------------------------------------+ 

Prezados,

Um b-a-bá de como configurar para imprimir na sala dos professores:

* Ubuntu (pelo menos):
- Digitem a seguinte url em algum browser: http://localhost:631/ (isso
irá abrir a página padrão do CUPS - Common Unix Printing System);
- Selecione a opção "Add Printer";
- Coloque valores intuitivos para "Name/Location/Description"; (isso
identificará a impressora a ser escolhida numa impressão);
- Na opção "Device", selecione "Windows Printer via SAMBA";
- Na opção URI digite: smb://SPRCT15/lexmark;
- Na opção de fabricante "Manufacturer", ao invés de selecionar Lexmark
(na minha instalação, que deve ser a mesma de vocês, não encontrei
driver para a impressora que temos), forneça o caminho do arquivo .ppd
que estou enviando em anexo;
- E é isso! (Para confirmar se funcionou, cliquem na aba Printers do
CUPS para ver se a impressora está listada!)

* Windows:
- Encontre a opção de adição de impressora à partir do painel de controle;
- Escolha a opção de uma impressora numa máquina remota (não local);
- Digite o seguinte endereço: \\SPRCT15\Lexmark E120n
- E é isso!

Abraços,
Bazilio


A msg do Bazilio sobre a configuração da impressora no Linux.
Usando o CUPS.
A única diferença é que agora a impressora tem um IP na rede:
  192.168.0.2
Isto muda o passo
"- Na opção "Device", selecione "Windows Printer via SAMBA";"
para algo que diga que a impressora está na rede com este IP.
Um abraço,
  Fnaufel


2009may05: Funcionou! A impressora é reconhecida automaticamente pelo
CUPS (veja "Device:" abaixo)...

Modify printer
==============
  Modify Printer Lexmark
  ----------------------
  Name:          Lexmark
  Location:      Container
  Description:   Lexmark at container

  Device for Lexmark
  ------------------
  Device:  Lexmark E120n 994PYF3 LE.ULN.P108 -- Part Number -- 192.168.0.2
  (Na verdade isto é um alias para "socket://192.168.0.2".)

  Make/Manufacturer for Lexmark
  -----------------------------
  Make:                   Lexmark
  Or provide a PPD file:  ~/PURO/LexmarkE120n.ppd
             (find-fline "~/PURO/LexmarkE120n.ppd")

Printers
========
  Lexmark
  -------
  Description:    Lexmark at container
  Location:       Container
  Printer Driver: Lexmark E120n
  Printer State:  idle, accepting jobs, published.
  Device URI:     socket://192.168.0.2


**** Update, 2010dec20:
O Roberto mexeu no botão "Stop Printer"/"Start Printer"
em http://localhost:631/printers e mudou a URL para
http://192.168.0.2/.




#####
#
# Default printer
# 2011jan19
#
#####

# «default-printer»  (to ".default-printer")
# (find-man "1 lpr")
# (find-man "1 lpoptions")
# (find-man "lpstat")

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
lpoptions -l
lpoptions -d HP_Photosmart_C4780
lpoptions -d LLaRC-LaserJet
lpoptions -l
cd /tmp/
# (find-fline "/tmp/")
lpr florence_instructions.pdf

lpr billets_basqiat.pdf
lpr eurodisney_eduardo.pdf
lpr eurodisney_valeria.pdf
lpr eurodisney_violeta.pdf
lpr florence_instructions.pdf
lpr florence_voucher.pdf
lpr paris_emails.pdf
lpr passagem_eduardo.pdf
lpr passagens_valeria_violeta.pdf





#####
#
# cups-pdf
# 2010sep20
#
#####

# «cups-pdf»  (to ".cups-pdf")
# (find-status   "cups-pdf")
# (find-vldifile "cups-pdf.list")
# (find-udfile   "cups-pdf/")




#####
#
# prescript
# 2010feb18
#
#####

# «prescript»  (to ".prescript")
# (find-node "(a2ps)PreScript")
# (find-node "(a2ps)Syntax")
# (find-node "(a2ps)PreScript Commands")
# (find-node "(a2ps)PreScript examples")
# (find-node "(a2ps)Symbol")
# (find-fline "/usr/share/a2ps/sheets/symbols.ssh")

# (find-node "(a2ps)card")
# (find-vldifile "a2ps.list")
# (find-man "1 card")
# (find-fline "/usr/share/a2ps/sheets/card.ssh")
# (find-fline "/usr/bin/card")




#####
#
# task-print-server
# 2013oct22
#
#####

# «task-print-server» (to ".task-print-server")
# (find-es "debian" "tasksel")
# (find-status   "task-print-server")
# (find-vldifile "task-print-server.list")
# (find-udfile   "task-print-server/")


https://news.ycombinator.com/item?id=28054789 Bye CUPS: Printing with Netcat (retrohacker.substack.com)





#  Local Variables:
#  coding:               utf-8-unix
#  End: