Date: Sun, 4 May 2008 19:07:15 GMT From: John Birrell <jb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 141156 for review Message-ID: <200805041907.m44J7FLO067566@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=141156 Change 141156 by jb@freebsd3 on 2008/05/04 19:07:12 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/remote-install/article.sgml#5 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/disks/chapter.sgml#16 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-dev-model.xml#5 integrate .. //depot/projects/dtrace/doc/fr_FR.ISO8859-1/books/handbook/printing/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/brix.key#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.sites.mk#30 integrate .. //depot/projects/dtrace/ports/UPDATING#69 integrate .. //depot/projects/dtrace/src/etc/defaults/rc.conf#34 integrate .. //depot/projects/dtrace/src/gnu/lib/libstdc++/config.h#6 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/binutils/objdump/Makefile#4 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/kthr.c#11 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt.c#9 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt_amd64.c#7 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt_arm.c#6 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt_i386.c#8 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt_ia64.c#5 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt_powerpc.c#5 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/gdb/kgdb/trgt_sparc64.c#5 integrate .. //depot/projects/dtrace/src/gnu/usr.bin/sort/config.h#4 integrate .. //depot/projects/dtrace/src/include/stdio.h#10 integrate .. //depot/projects/dtrace/src/lib/csu/mips/Makefile#1 branch .. //depot/projects/dtrace/src/lib/csu/mips/crt1.c#1 branch .. //depot/projects/dtrace/src/lib/csu/mips/crti.S#1 branch .. //depot/projects/dtrace/src/lib/csu/mips/crtn.S#1 branch .. //depot/projects/dtrace/src/lib/libc/Versions.def#5 integrate .. //depot/projects/dtrace/src/lib/libc/net/nsdispatch.c#8 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/Makefile.inc#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/Symbol.map#6 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/clrerr.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/feof.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/ferror.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/fileno.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/getc.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/getchar.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/local.h#7 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/putc.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/putchar.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/stdio.c#5 integrate .. //depot/projects/dtrace/src/lib/libc/stdio/unlocked.c#4 delete .. //depot/projects/dtrace/src/lib/libc/stdio/xprintf.c#6 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/malloc.c#23 integrate .. //depot/projects/dtrace/src/lib/libc/stdlib/rb.h#2 integrate .. //depot/projects/dtrace/src/lib/libftpio/ftpio.c#4 integrate .. //depot/projects/dtrace/src/lib/msun/mips/Symbol.map#2 integrate .. //depot/projects/dtrace/src/share/man/man4/auditpipe.4#6 integrate .. //depot/projects/dtrace/src/share/man/man4/wlan.4#7 integrate .. //depot/projects/dtrace/src/share/misc/bsd-family-tree#16 integrate .. //depot/projects/dtrace/src/sys/amd64/conf/GENERIC#38 integrate .. //depot/projects/dtrace/src/sys/conf/NOTES#48 integrate .. //depot/projects/dtrace/src/sys/conf/files.sun4v#15 integrate .. //depot/projects/dtrace/src/sys/dev/ath/if_ath.c#21 integrate .. //depot/projects/dtrace/src/sys/dev/ath/if_athvar.h#13 integrate .. //depot/projects/dtrace/src/sys/dev/bge/if_bge.c#29 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt.h#22 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_cam.c#28 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_raid.c#13 integrate .. //depot/projects/dtrace/src/sys/dev/usb/usbdevs#33 integrate .. //depot/projects/dtrace/src/sys/i386/conf/GENERIC#35 integrate .. //depot/projects/dtrace/src/sys/i386/cpufreq/est.c#8 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_subr.c#40 integrate .. //depot/projects/dtrace/src/sys/mips/include/am29lv081b.h#2 delete .. //depot/projects/dtrace/src/sys/mips/include/cp0.h#2 delete .. //depot/projects/dtrace/src/sys/mips/include/float.h#2 integrate .. //depot/projects/dtrace/src/sys/mips/mips/mips_subr.c#2 delete .. //depot/projects/dtrace/src/sys/modules/esp/Makefile#4 integrate .. //depot/projects/dtrace/src/sys/modules/hfa/Makefile#4 integrate .. //depot/projects/dtrace/src/sys/modules/hme/Makefile#4 integrate .. //depot/projects/dtrace/src/sys/modules/isp/Makefile#5 integrate .. //depot/projects/dtrace/src/sys/modules/ispfw/Makefile#6 integrate .. //depot/projects/dtrace/src/sys/modules/le/Makefile#6 integrate .. //depot/projects/dtrace/src/sys/modules/scc/Makefile#4 integrate .. //depot/projects/dtrace/src/sys/modules/sound/driver/Makefile#6 integrate .. //depot/projects/dtrace/src/sys/modules/wlan/Makefile#7 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_node.c#10 integrate .. //depot/projects/dtrace/src/sys/netinet/libalias/alias.c#9 integrate .. //depot/projects/dtrace/src/sys/pc98/conf/GENERIC#18 integrate .. //depot/projects/dtrace/src/sys/sparc64/conf/GENERIC#22 integrate .. //depot/projects/dtrace/src/sys/sparc64/pci/ofw_pcibus.c#11 integrate .. //depot/projects/dtrace/src/sys/sun4v/include/bus_common.h#5 delete .. //depot/projects/dtrace/src/sys/sun4v/sun4v/nexus.c#8 integrate .. //depot/projects/dtrace/src/sys/sun4v/sun4v/vnex.c#9 integrate .. //depot/projects/dtrace/src/usr.bin/tar/bsdtar.1#10 integrate .. //depot/projects/dtrace/src/usr.bin/tar/bsdtar.c#9 integrate .. //depot/projects/dtrace/src/usr.bin/tar/test/Makefile#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/main.c#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/test.h#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/test_0.c#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/test_basic.c#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/test_copy.c#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/test_getdate.c#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/test_help.c#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/test_option_T.c#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/test_stdio.c#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/test/test_version.c#1 branch .. //depot/projects/dtrace/src/usr.bin/tar/write.c#9 integrate .. //depot/projects/dtrace/src/usr.bin/tip/tip/cmds.c#5 integrate .. //depot/projects/dtrace/src/usr.bin/tip/tip/tip.c#5 integrate .. //depot/projects/dtrace/src/usr.bin/tip/tip/tip.h#5 integrate .. //depot/projects/dtrace/src/usr.bin/tip/tip/uucplock.c#5 integrate .. //depot/projects/dtrace/src/usr.bin/unifdef/unifdef.1#4 integrate .. //depot/projects/dtrace/src/usr.sbin/pkg_install/Makefile.inc#4 integrate .. //depot/projects/dtrace/src/usr.sbin/pkg_install/add/perform.c#7 integrate .. //depot/projects/dtrace/src/usr.sbin/pkg_install/delete/perform.c#6 integrate .. //depot/projects/dtrace/src/usr.sbin/pkg_install/lib/lib.h#9 integrate .. //depot/projects/dtrace/src/usr.sbin/pkg_install/lib/match.c#6 integrate .. //depot/projects/dtrace/src/usr.sbin/sade/Makefile#4 integrate .. //depot/projects/dtrace/www/en/cgi/man.cgi#12 integrate .. //depot/projects/dtrace/www/en/projects/ideas/ideas.xml#19 integrate .. //depot/projects/dtrace/www/es/docproj/sgml.sgml#5 integrate .. //depot/projects/dtrace/www/es/index.xsl#10 integrate .. //depot/projects/dtrace/www/es/internet.sgml#8 integrate .. //depot/projects/dtrace/www/es/platforms/i386.sgml#5 integrate .. //depot/projects/dtrace/www/es/platforms/index.sgml#7 integrate .. //depot/projects/dtrace/www/es/search/index-site.sgml#5 integrate .. //depot/projects/dtrace/www/es/search/search-mid.sgml#5 integrate .. //depot/projects/dtrace/www/es/search/searchhints.sgml#5 integrate .. //depot/projects/dtrace/www/es/send-pr.sgml#7 integrate .. //depot/projects/dtrace/www/es/share/sgml/navibar.l10n.ent#5 integrate .. //depot/projects/dtrace/www/hu/Makefile#4 integrate .. //depot/projects/dtrace/www/hu/community.sgml#3 delete .. //depot/projects/dtrace/www/hu/community.xsl#1 branch .. //depot/projects/dtrace/www/hu/docs/books.sgml#5 integrate .. //depot/projects/dtrace/www/hu/internet.sgml#3 integrate .. //depot/projects/dtrace/www/hu/projects/projects.sgml#5 integrate .. //depot/projects/dtrace/www/hu/search/index-site.sgml#2 integrate .. //depot/projects/dtrace/www/hu/search/search-mid.sgml#2 integrate .. //depot/projects/dtrace/www/hu/search/search.sgml#4 integrate .. //depot/projects/dtrace/www/hu/search/searchhints.sgml#2 integrate .. //depot/projects/dtrace/www/hu/send-pr.sgml#3 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/remote-install/article.sgml#5 (text+ko) ==== @@ -17,7 +17,7 @@ <!-- 11 April 2008 --> </author> - <pubdate>$FreeBSD: doc/en_US.ISO8859-1/articles/remote-install/article.sgml,v 1.4 2008/04/19 23:40:22 brd Exp $</pubdate> + <pubdate>$FreeBSD: doc/en_US.ISO8859-1/articles/remote-install/article.sgml,v 1.5 2008/05/03 08:26:12 loader Exp $</pubdate> <legalnotice id="trademarks" role="trademarks"> &tm-attrib.freebsd; @@ -392,6 +392,7 @@ <callout arearefs="newfs"> <para>Create a <application>UFS2</application> file system on each mirrored partition.</para> + </callout> </calloutlist> </sect2> ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/disks/chapter.sgml#16 (text+ko) ==== @@ -1,7 +1,7 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/en_US.ISO8859-1/books/handbook/disks/chapter.sgml,v 1.282 2008/03/25 08:43:38 blackend Exp $ + $FreeBSD: doc/en_US.ISO8859-1/books/handbook/disks/chapter.sgml,v 1.283 2008/05/02 23:08:05 danger Exp $ --> <chapter id="disks"> @@ -3433,7 +3433,7 @@ <para>Now restart <command>inetd</command>:</para> - <screen>&prompt.root; <userinput>kill -HUP `cat /var/run/inetd.pid`</userinput></screen> + <screen>&prompt.root; <userinput>/etc/rc.d/inetd restart</userinput></screen> </sect2> </sect1> ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/slides/common/freebsd-dev-model.xml#5 (text+ko) ==== @@ -1,4 +1,4 @@ -<!-- $FreeBSD: doc/en_US.ISO8859-1/slides/common/freebsd-dev-model.xml,v 1.4 2007/12/26 20:32:00 gabor Exp $ --> +<!-- $FreeBSD: doc/en_US.ISO8859-1/slides/common/freebsd-dev-model.xml,v 1.5 2008/05/04 09:25:37 danger Exp $ --> <foilgroup id="freebsd-dev-model"> <foil id="freebsd-dev-model-general"> @@ -38,13 +38,13 @@ <listitem>Only the <quote>committers</quote> have write access to the CVS repository.</listitem> - <listitem>488 total committers in FreeBSD (includes source, + <listitem>353 total committers in FreeBSD (includes source, documentation, and ports committers).</listitem> - <listitem>203 active committers to src/ (exlucind sys) in the last 12 + <listitem>181 active committers to src/ (excluding sys) in the last 12 months.</listitem> - <listitem>144 active committers to src/sys in the last 12 + <listitem>147 active committers to src/sys in the last 12 months.</listitem> </itemizedlist> </foil> ==== //depot/projects/dtrace/doc/fr_FR.ISO8859-1/books/handbook/printing/chapter.sgml#5 (text+ko) ==== @@ -2,7 +2,7 @@ The FreeBSD Documentation Project The FreeBSD French Documentation Project - $FreeBSD: doc/fr_FR.ISO8859-1/books/handbook/printing/chapter.sgml,v 1.5 2007/12/30 16:04:20 blackend Exp $ + $FreeBSD: doc/fr_FR.ISO8859-1/books/handbook/printing/chapter.sgml,v 1.6 2008/05/03 08:50:04 blackend Exp $ Original revision: 1.96 --> @@ -1712,52 +1712,2875 @@ </sect1> <sect1 id="printing-advanced"> - <title>Advanced Printer Setup ** Traduction en Cours **</title> - <para></para> + <title>Configuration avancée de l'imprimante</title> + + <para>Cette section décrit les filtres à utiliser + pour imprimer des fichiers au formatage particulier, des pages + d'en-tête, pour imprimer en réseau, et pour + restreindre et comptabiliser l'utilisation de + l'imprimante.</para> <sect2 id="printing-advanced-filter-intro"> - <title>Filters</title> + <title>Les filtres</title> + + <indexterm> + <primary>imprimer</primary> + <secondary>filtres</secondary> + </indexterm> + + <para>Bien que <application>LPD</application> gère les + protocoles réseaux, les files d'attente, le + contrôle d'accès et d'autres aspects de + l'impression, la plus grande partie du + <emphasis>véritable</emphasis> travail intervient dans + les <emphasis>filtres</emphasis>. Les filtres sont des + programmes qui communiquent avec l'imprimante et gèrent + ses dépendances matérielles ainsi que ses + besoins particuliers. Dans la configuration simple de + l'imprimante, nous avons installé un filtre texte + simple— un filtre particulièrement basique qui + devrait fonctionner avec la plupart des imprimantes (voir la + section <link linkend="printing-textfilter">Installer le + filtre texte</link>).</para> + + <para>Toutefois, afin de profiter de la conversion de format, de + la comptabilisation de l'utilisation de l'imprimante, de + particularités matérielles, et ainsi de suite, + il vous faut comprendre le fonctionnement des filtres. En + dernier ressort, il incombera au filtre de gérer ces + aspects. Et la mauvaise nouvelle, c'est que la plupart du + temps, c'est <emphasis>vous</emphasis> qui devrez produire ces + filtres vous-même. La bonne nouvelle, c'est que + beaucoup existent déjà et que, sinon, ils sont + en général assez faciles à + écrire.</para> + + <para>Par ailleurs, il en est un livré avec &os;, + <filename>/usr/libexec/lpr/lpf</filename>, qui fonctionne avec + beaucoup d'imprimantes capables d'imprimer du texte brut. (Il + gère les retours arrière et les tabulations dans + le fichier, effectue une comptabilisation, mais c'est à + peu près tout). Vous trouverez également + d'autres filtres et composants de filtres dans le catalogue + des logiciels portés de &os;.</para> + + <para>Voici ce que vous trouverez dans cette section:</para> + + <itemizedlist> + <listitem> + <para>La section + <link linkend="printing-advanced-filters">Fonctionnement + des filtres</link> tâche de donner une vue + générale du rôle des filtres dans le + processus d'impression. Il vous faut lire cette section + pour comprendre ce qui se passe <quote>sous le + capot</quote> lorsque <application>LPD</application> + utilise des filtres. Cette connaissance vous permettra + d'anticiper et de résoudre les problèmes que + vous pourriez rencontrer quand vous installerez de plus en + plus de filtres pour chacune de vos imprimantes.</para> + </listitem> + + <listitem> + <para><application>LPD</application> s'attend à ce + que toutes les imprimantes sachent imprimer du texte brut + par défaut. Cela pose un problème pour les + imprimantes &postscript; (ou les imprimantes basées + sur un autre langage) qui ne peut pas imprimer du texte + brut directement. La section <link + linkend="printing-advanced-if-conversion">Gérer les + travaux d'impression de texte brut sur des imprimantes + &postscript;</link> vous indique la marche à suivre + pour résoudre ce problème. Vous devrez lire + cette section si vous avez une imprimante + &postscript;.</para> + </listitem> + + <listitem> + <para>&postscript; est un format de sortie courant pour + beaucoup d'applications. Certaines personnes + écrivent même du code &postscript; + directement. Malheureusement, les imprimantes + &postscript; sont onéreuses. La section <link + linkend="printing-advanced-ps">Emuler du &postscript; sur + les imprimantes non-&postscript;</link> vous indiquera + comment modifier un filtre texte pour qu'une imprimante + <emphasis>non-&postscript;</emphasis> accepte et imprime + du &postscript;. Vous devrez lire cette section si vous + ne disposez pas d'une imprimante &postscript;.</para> + </listitem> + + <listitem> + <para>La section + <link linkend="printing-advanced-convfilters">Filtres de + conversion</link> vous apprendra à automatiser la + conversion de formats de fichiers spécifiques, + comme des graphiques ou des données de composition, + en formats compréhensibles par l'imprimante. + Après avoir lu cette section, vous serez en mesure + de configurer vos imprimantes de telle sorte que vos + utilisateurs pourront entrer la commande <command>lpr + -t</command> pour imprimer du troff, ou <command>lpr + -d</command> pour imprimer le format DVI produit par + &tex;, ou <command>lpr -v</command> pour imprimer des + images en mode point, etc. Nous recommandons la lecture + de cette section.</para> + </listitem> + + <listitem> + <para>La section <link + linkend="printing-advanced-of">Filtres de sortie</link> + révèle tout d'une fonctionnalité peu + utilisée de <application>LPD</application>: les + filtres de sortie. A moins que vous n'imprimiez des pages + d'en-têtes (voir la section <link + linkend="printing-advanced-header-pages">Pages + d'en-tête</link>), vous pouvez probablement + complètement ignorer cette section.</para> + </listitem> + + <listitem> + <para>La section <link linkend="printing-advanced-lpf">lpf: + un filtre texte</link> détaille + <command>lpf</command>, un filtre texte destiné aux + imprimantes en ligne (et aux imprimantes laser se + comportant comme telles) plutôt complet + malgré sa simplicité, et livré avec + &os;. Si vous avez besoin de mettre rapidement en place + la comptabilisation de l'utilisation de l'imprimante pour + du texte brut, ou si vous avez une imprimante qui fume + lorsqu'elle voit passer des caractères de retour + arrière, vous devez vraiment penser à + <command>lpf</command>.</para> + </listitem> + </itemizedlist> + + <note> + <para>Une copie des différents scripts + présentés ci-dessous se trouve dans le + répertoire <filename + class="directory">/usr/share/examples/printing</filename>. + </para> + </note> + <sect3 id="printing-advanced-filters"> - <title>How Filters Work</title> - <para></para> + <title>Fonctionnement des filtres</title> + + <para>Comme expliqué précédemment, un + filtre est un programme exécutable lancé par + <application>LPD</application> pour gérer la partie + de la communication avec l'imprimante qui est + dépendante du périphérique.</para> + + <para>Lorsque <application>LPD</application> veut imprimer un + fichier d'un travail d'impression, il lance un programme de + filtre. Il redirige l'entrée standard du filtre sur + le fichier à imprimer, sa sortie standard vers + l'imprimante, et l'erreur standard vers le fichier journal + des erreurs (spécifié dans le paramètre + <literal>lf</literal> du fichier + <filename>/etc/printcap</filename>, ou + <filename>/dev/console</filename> par défaut).</para> + + <indexterm> + <primary><command>troff</command></primary> + </indexterm> + + <para>Le filtre lancé par + <application>LPD</application> ainsi que les + paramètres qui lui sont donnés + dépendent de ce qui est placé dans le fichier + <filename>/etc/printcap</filename> et des paramètres + que l'utilisateur a passé sur la ligne de commande + &man.lpr.1; pour ce travail d'impression. Par exemple, si + l'utilisateur a entré <command>lpr -t</command>, + <application>LPD</application> aurait lancé le filtre + troff, précisé par la paramètre + <literal>tf</literal> pour l'imprimante de destination. Si + l'utilisateur veut imprimer du texte brut, il lancerait le + filtre <literal>if</literal> (c'est vrai la plupart du + temps: lisez la section <link + linkend="printing-advanced-of">Filtres de sortie</link> pour + plus de détails).</para> + + <para>Il existe trois types de filtres que vous pouvez + spécifier dans + <filename>/etc/printcap</filename>:</para> + + <itemizedlist> + <listitem> + <para>Le <emphasis>filtre texte</emphasis>, + confusément appelé <emphasis>filtre + d'entrée</emphasis> dans la documentation + <application>LPD</application>, gère l'impression + de texte classique. Considérez-le comme le + filtre par défaut. + <application>LPD</application> s'attend à ce que + toutes les imprimantes sachent imprimer du texte brut + par défaut, et c'est au filtre texte de s'assurer + que les retours arrière, tabulations et autres + caractères spéciaux ne trompent pas + l'imprimante. Si vous êtes dans un environnement + où il vous faut rendre compte de l'utilisation de + l'imprimante, le filtre texte doit également + comptabiliser les pages imprimées, + généralement en comptant le nombre de + lignes imprimées et en le comparant avec le + nombre de lignes par page supporté par + l'imprimante. Le filtre texte est exécuté + avec la liste de paramètres suivante:</para> + + <cmdsynopsis> + <command>nom_du_filtre</command> + <arg>-c</arg> + <arg choice="plain">-w + <replaceable>largeur</replaceable></arg> + <arg choice="plain">-l + <replaceable>hauteur</replaceable></arg> + <arg choice="plain">-i + <replaceable>indentation</replaceable></arg> + <arg choice="plain">-n + <replaceable>utilisateur</replaceable></arg> + <arg choice="plain">-h + <replaceable>machine</replaceable></arg> + <arg + choice="plain"><replaceable>fichier_comptabilité</replaceable></arg> + </cmdsynopsis> + + <para>où<para> + + <variablelist> + <varlistentry> + <term><option>-c</option></term> + + <listitem> + <para>apparaît si le travail d'impression est + lancé par la commande <command>lpr + -l</command></para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable>largeur</replaceable></term> + + <listitem> + <para>est la valeur du paramètre + <literal>pw</literal> (<quote>page width</quote>, + pour <quote>largeur de page</quote>) + spécifié dans + <filename>/etc/printcap</filename>, et + possédant la valeur par défaut + 132.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable>hauteur</replaceable></term> + + <listitem> + <para>est la valeur du paramètre + <literal>pl</literal> (<quote>page length</quote>, + pour <quote>hauteur de page</quote>), par + défaut: 66.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable>indentation</replaceable></term> + + <listitem> + <para>est le nombre d'indentations + inséré par <command>lpr + -i</command>, par défaut: 0.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable>utilisateur</replaceable></term> + + <listitem> + <para>est le nom du compte de l'utilisateur + imprimant le fichier.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable>machine</replaceable></term> + + <listitem> + <para>est le nom de la machine depuis + laquelle le travail d'impression a + été soumis.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><replaceable>fichier_comptabilité</replaceable></term> + + <listitem> + <para>est le nom du fichier de comptabilisation + spécifié par le paramètre + <literal>af</literal>.</para> + </listitem> + </varlistentry> + </variablelist> + </listitem> + + <indexterm> + <primary>imprimer</primary> + <secondary>filtres</secondary> + </indexterm> + + <listitem> + <para>Un <emphasis>filtre de conversion</emphasis> + convertit un format de fichier spécifique en un + autre que l'imprimante saura imprimer sur papier. Par + exemple, des données de composition ditroff ne + peuvent être imprimées directement, mais il + vous est possible d'installer un filtre de conversion + ditroff afin de convertir ces données ditroff en + une forme que l'imprimante sait ingérer et + imprimer. La section <link + linkend="printing-advanced-convfilters">Filtres de + conversion</link> vous dira tout sur ce sujet. Les + filtres de conversion doivent également tenir des + statistiques, si vous avez besoin de comptabiliser les + impressions. Les filtres de conversion sont + lancés avec les paramètres + suivants:</para> + + <cmdsynopsis> + <command>nom-du-filtre</command> + <arg choice="plain">-x + <replaceable>largeur-en-pixels</replaceable></arg> + <arg choice="plain">-y + <replaceable>hauteur-en-pixels</replaceable></arg> + <arg choice="plain">-n + <replaceable>login</replaceable></arg> + <arg choice="plain">-h + <replaceable>hôte</replaceable></arg> + <arg + choice="plain"><replaceable>fichier_comptabilité</replaceable></arg> + </cmdsynopsis> + + <para>où + <replaceable>largeur-en-pixels</replaceable> est la + valeur du paramètre <literal>px</literal> (0 par + défaut) et + <replaceable>hauteur-en-pixels</replaceable> est la + valeur du paramètre <literal>py</literal> (0 par + défaut).</para> + </listitem> + + <listitem> + <para>Le <emphasis>filtre de sortie</emphasis> n'est + utilisé que s'il n'y a pas de filtre texte, ou si + les pages d'en-tête ont été + activées. D'après notre + expérience, les filtres de sortie sont rarement + employés. La section <link + linkend="printing-advanced-of">Filtres de sortie</link> + les détaillera. Un filtre de sortie ne prend que + deux paramètres:</para> + + <cmdsynopsis> + <command>nom-du-filtre</command> + <arg choice="plain">-w + <replaceable>largeur</replaceable></arg> + <arg choice="plain">-l + <replaceable>hauteur</replaceable></arg> + </cmdsynopsis> + + <para>qui sont identiques aux paramètres + <option>-w</option> et <option>-l</option> des filtres + textes.</para> + </listitem> + </itemizedlist> + + <para>Les filtres doivent également + <emphasis>retourner</emphasis> avec le code de retour + suivant:</para> + + <variablelist> + <varlistentry> + <term>exit 0</term> + + <listitem> + <para>Si le filtre a imprimé avec succès + le fichier.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term>exit 1</term> + + <listitem> + <para>Si le filtre n'a pu imprimer le fichier, mais + désire que <application>LPD</application> + essaie de l'imprimer à nouveau. + <application>LPD</application> relancera un filtre + s'il retourne avec ce code.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term>exit 2</term> + + <listitem> + <para>Si le filtre n'a pu imprimer le fichier et ne veut + pas que <application>LPD</application> retente + l'impression. <application>LPD</application> + rejettera le fichier.</para> + </listitem> + </varlistentry> + </variablelist> + + <para>Le filtre texte livré avec &os;, + <filename>/usr/libexec/lpr/lpf</filename>, tire parti des + paramètres de largeur et hauteur de page pour savoir + quand envoyer une instruction de saut de page et comment + comptabiliser l'utilisation de l'imprimante. Il utilise les + paramètres nom d'utilisateur, nom de machine, et + fichier de comptabilisation pour enregistrer les + entrées concernant la consommation.</para> + + <para>Si vous recherchez des filtres, prenez garde à ce + qu'ils soient compatibles avec LPD. Si c'est le cas, ils + doivent se conformer à la liste de paramètres + décrite ci-dessus. Si vous songez à + écrire des filtres à usage + général, alors faites en sorte qu'ils se + conforment à ces mêmes listes de + paramètres et de codes de retour.</para> </sect3> <sect3 id="printing-advanced-if-conversion"> - <title>Accommodating Plain Text Jobs on &postscript; Printers</title> - <para></para> + <title>Gérer les travaux d'impression de texte brut sur + des imprimantes &postscript;</title> + + <indexterm><primary>travaux d'impression</primary></indexterm> + + <para>Si vous êtes l'unique utilisateur de votre + ordinateur et de votre imprimante &postscript; (ou + basée sur un autre langage), et que vous promettez de + ne jamais envoyer de texte brut à votre imprimante et + de ne jamais utiliser les fonctionnalités des divers + programmes qui voudraient lui en envoyer, alors vous pouvez + tout à fait passer cette section l'esprit + tranquille.</para> + + <para>Toutefois, si vous désirez envoyer du + &postscript; et du texte brut à l'imprimante, alors + vous êtes instamment priés de compléter + la configuration de votre imprimante. Pour ce faire, nous + chargerons le filtre texte de détecter si le travail + d'impression est du texte brut ou du &postscript;. Tous les + travaux d'impression &postscript; doivent débuter par + <literal>%!</literal> (en ce qui concerne les autres + langages, référez-vous à la + documentation de l'imprimante). Si ces deux + caractères sont les deux premiers du travail + d'impression, il s'agit de &postscript; et le reste du + travail d'impression peut être passé + directement à l'imprimante. Dans le cas contraire, + alors le filtre convertit le texte en &postscript; et + imprime le résultat.</para> + + <para>Comment procéder?</para> + + <indexterm> + <primary>imprimantes</primary> + <secondary>série</secondary> + </indexterm> + + <para>Si vous disposez d'une imprimante série, une + bonne façon de faire est d'installer + <command>lprps</command>. Il s'agit d'un filtre + d'impression &postscript; qui assure une communication en + duplex avec l'imprimante. Il met à jour le fichier + d'état de l'imprimante avec des informations + détaillées que cette dernière lui + fournit, de sorte que les utilisateurs et les + administrateurs puissent connaître + précisément l'état de l'imprimante (par + exemple <errorname>niveau de toner bas</errorname> ou + <errorname>bourrage papier</errorname>). Mais plus + important encore, il inclut un programme nommé + <command>psif</command> qui détecte si le travail + d'impression qui vient d'arriver est du texte brut et lance + <command>textps</command> (un autre programme fourni avec + <command>lprps</command>) pour le convertir en &postscript;. + Il utilise alors <command>lprps</command> pour envoyer le + travail d'impression à l'imprimante.</para> + + <para><command>lprps</command> fait partie du catalogue des + logiciels portés &os; (lisez la section <link + linkend="ports">Le catalogue des logiciels + portés</link>). Vous pouvez installer un des deux + logiciels portés <filename + role="package">print/lprps-a4</filename> et <filename + role="package">print/lprps-letter</filename> en fonction du + format de papier utilisé. Après avoir + installé <command>lprps</command>, précisez + simplement le chemin vers le programme + <command>psif</command> qui fait partie de + <command>lprps</command>. Si vous avez installé + <command>lprps</command> en recourant au catalogue des + logiciels portés, placez les valeurs suivantes pour + l'entrée de l'imprimante série &postscript; + dans <filename>/etc/printcap</filename>:</para> + + <programlisting>:if=/usr/local/libexec/psif:</programlisting> + + <para>Vous devrez également renseigner le + paramètre <literal>rw</literal> qui indique à + <application>LPD</application> de requérir + l'imprimante en mode lecture/écriture.</para> + + <para>Si vous disposez d'une imprimante &postscript; + parallèle (et ne pouvez donc pas utiliser la + communication en duplex avec l'imprimante dont a besoin + <command>lprps</command>), vous pouvez recourir à la + procédure suivante en tant que filtre texte:</para> + + <programlisting>#!/bin/sh +# +# psif - Imprime du PostScript ou du texte brut sur une imprimante PostScript +# Version script; CECI N'EST PAS la version fournie avec lprps +# Fichier /usr/local/libexec/psif +# + +IFS="" read -r first_line +first_two_chars=`expr "$first_line" : '\(..\)'` + +if [ "$first_two_chars" = "%!" ]; then + # + # Travail PostScript, l'imprimer. + # + echo "$first_line" && cat && printf "\004" && exit 0 + exit 2 +else + # + # Texte brut, le convertir, puis l'imprimer. + # + ( echo "$first_line"; cat ) | /usr/local/bin/textps && printf "\004" && exit 0 + exit 2 +fi</programlisting> + + <para>Dans la procédure ci-dessus, + <command>textps</command> est un programme que nous avons + installé séparément pour convertir du + texte en &postscript;. Vous pouvez recourir à + n'importe quel programme texte-vers-&postscript;, selon + votre désir. Le catalogue des logiciels + portés de &os; (voir la section <link + linkend="ports">Le catalogue des logiciels + portés</link>) comprend un programme de conversion + texte-vers-&postscript; complet nommée + <literal>a2ps</literal>, qui pourrait vous + intéresser.</para> </sect3> <sect3 id="printing-advanced-ps"> - <title>Simulating &postscript; on Non &postscript; Printers</title> - <para></para> + <title>Emuler du &postscript; sur les imprimantes + non-&postscript;</title> + + <indexterm> + <primary>PostScript</primary> + <secondary>émulation</secondary> + </indexterm> + <indexterm> + <primary>Ghostscript</primary> + </indexterm> + + <para>&postscript; est le standard <emphasis>de + fait</emphasis> pour l'impression et la composition de haute + qualité. Cependant, &postscript; est un standard + <emphasis>onéreux</emphasis>. Heureusement, Aladdin + Enterprises propose un succédané gratuit de + &postscript; nommé + <application>Ghostscript</application> qui fonctionne sous + &os;. <application>Ghostscript</application> peut lire la + majorité des fichiers &postscript; et peut produire + leurs pages sur une diversité de + périphériques, incluant beaucoup de marques + d'imprimantes non-&postscript;. En installant + <application>Ghostscript</application> et en recourant + à un filtre texte spécial, vous pouvez obtenir + de votre imprimante non-&postscript; qu'elle se comporte + comme une véritable imprimante &postscript;.</para> + + <para><application>Ghostscript</application> fait partie du + catalogue des logiciels portés, de nombreuses + versions sont disponibles, la version la plus couramment + utilisée est <filename + role="package">print/ghostscript-gpl</filename>.</para> + + <para>Pour émuler du &postscript;, il nous faut faire + en sorte que le filtre texte détecte s'il imprime un + fichier &postscript;. Si ce n'est pas le cas, alors le + filtre doit passer le fichier directement à + l'imprimante; sinon il recourra à + <application>Ghostscript</application> pour tout d'abord le + convertir dans un format que l'imprimante saura + interpréter.</para> + + <para>Voici un exemple: la procédure suivante est un + filtre texte pour les imprimantes Hewlett Packard Deskjet + 500. Pour d'autres modèles, changez le + paramètre <option>-sDEVICE</option> de la commande + <command>gs</command> + (<application>Ghostscript</application>). (Entrez + <command>gs -h</command> pour obtenir une liste des + périphériques reconnus par l'installation + actuelle de <application>Ghostscript</application>).</para> + + <programlisting>#!/bin/sh +# +# ifhp - Imprime du PostScript émulé par Ghostscript sur une DeskJet 500 +# Fichier /usr/local/libexec/ifhp + +# +# Traite LF comme CR+LF (pour éviter l'"effet d'escalier" sur les +# imprimantes HP/PCL): +# +printf "\033&k2G" || exit 2 + +# +# Lit les deux premiers caractères du fichier +# +IFS="" read -r first_line +first_two_chars=`expr "$first_line" : '\(..\)'` + +if [ "$first_two_chars" = "%!" ]; then + # + # Si c'est du PostScript; utiliser Ghostscript pour le convertir et l'imprimer + # + /usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=djet500 \ + -sOutputFile=- - && exit 0 +else + # + # Texte brut ou HP/PCL, donc impression directe; effectuer un + # saut de page à la fin pour éjecter la dernière page. + # + echo "$first_line" && cat && printf "\033&l0H" && +exit 0 +fi + +exit 2</programlisting> + + <para>Pour finir, vous devez communiquer à + <application>LPD</application> le filtre utilisé en + positionnant le paramètre + <literal>if</literal>:</para> + + <programlisting>:if=/usr/local/libexec/ifhp:</programlisting> + + <para>Voilà. Vous pouvez entrer <command>lpr + <replaceable>texte.simple</replaceable></command> et + <filename>lpr + <replaceable>peuimporte.ps</replaceable></filename>, et + chacune des deux commandes devrait imprimer avec + succès.</para> </sect3> <sect3 id="printing-advanced-convfilters"> - <title>Conversion Filters</title> - <para></para> + <title>Filtres de conversion</title> + + <para>Après avoir mené à bien la + configuration basique décrite à la section + <link linkend="printing-simple">Configuration simple de + l'imprimante</link>, la première chose que vous + souhaiterez probablement faire sera d'installer des filtres + de conversion pour vos formats de fichiers favoris (le + simple texte ASCII mis à part).</para> + + <sect4> + <title>Pourquoi installer des filtres de conversion?</title> + <indexterm> + <primary>&tex;</primary> + <secondary>imprimer des fichiers DVI</secondary> + </indexterm> + + <para>Les filtres de conversion facilitent l'impression de + différentes sortes de fichiers. Par exemple, + supposons que nous travaillions énormément + avec le système de composition &tex;, et que nous + ayons une imprimante &postscript;. Chaque fois que nous + générerons un fichier DVI à partir de + &tex;, nous ne pouvons l'imprimer directement avant + d'avoir converti ce fichier DVI en &postscript;. La + séquence de commandes serait la suivante:</para> + + <screen>&prompt.user; <userinput>dvips <replaceable>seaweed-analysis.dvi</replaceable></userinput> +&prompt.user; <userinput>lpr <replaceable>seaweed-analysis.ps</replaceable></userinput></screen> + + <para>En installant un filtre de conversion pour fichiers + DVI, nous pouvons à chaque fois nous passer de + l'étape de conversion manuelle en chargeant + <application>LPD</application> de le faire à notre + place. Maintenant, à chaque fois que nous avons un + fichier DVI, nous ne sommes plus qu'à un pas de + l'impression:</para> + + <screen>&prompt.user; <userinput>lpr -d <replaceable>seaweed-analysis.dvi</replaceable></userinput></screen> + + <para>Nous faisons en sorte que + <application>LPD</application> se charge de la conversion + du fichier DVI à notre place en positionnant + l'option <option>-d</option>. La section <link + linkend="printing-lpr-options-format">Options de + conversion et de formatage</link> donne la liste des + options de conversion.</para> + + <para>Pour chacune des options de conversion que vous voulez + faire accepter par une imprimante, installez un + <emphasis>filtre de conversion</emphasis> et indiquez son + chemin d'accès dans + <filename>/etc/printcap</filename>. Un filtre de + conversion ressemble au filtre texte de notre + configuration de base (voir la section <link + linkend="printing-textfilter">Installer le filtre + texte</link>), à ceci près qu'au lieu + d'imprimer du texte brut, le filtre convertit le fichier + en un format compréhensible par + l'imprimante.</para> + </sect4> + + <sect4> + <title>Quels filtres de conversion dois-je + installer?</title> + + <para>Vous devez installer les filtres de conversion que + vous vous attendez à utiliser. Si vous imprimez + beaucoup de données DVI, alors un filtre de + conversion DVI est dans la logique des choses. Si vous + devez imprimer beaucoup de troff, alors vous aurez + sûrement besoin d'un filtre troff.</para> + + <para>Le tableau suivant récapitule les filtres avec + lesquels <application>LPD</application> fonctionne, leurs + paramètres <filename>/etc/printcap</filename>, et + comment les invoquer avec la + <command>lpr</command>:</para> + + <informaltable frame="none" pgwide="1"> + <tgroup cols="3"> + <thead> + <row> + <entry>Type de fichier</entry> + <entry>paramètre <filename>/etc/printcap</filename> + </entry> + <entry>option <command>lpr</command></entry> + </row> + </thead> + + <tbody> + <row> + <entry>cifplot</entry> + <entry><literal>cf</literal></entry> + <entry><option>-c</option></entry> + </row> >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200805041907.m44J7FLO067566>
